flanggut / smvs

Shading-aware Multi-view Stereo
BSD 3-Clause "New" or "Revised" License
250 stars 75 forks source link

NEON optimization #3

Closed donlk closed 7 years ago

donlk commented 7 years ago

Is there any chance for NEON acceleration to be implemented? Any directives on how difficult would it be to provide NEON alternatives to SSE optimized blocks in smvs? Also, why does mve and smvs use self-implemented data structures and math functions? Eigen is pretty mature in this area, providing in-place SIMD accelerations, why not use it? thanks!

flanggut commented 7 years ago

I have never tried to optimize for ARM processors. My guess is that if NEON provides similar intrinsics as SEE it should be possible to essentially just replace the current SSE blocks with NEON intrinsics but that's definitely out of scope for myself.

Regarding optimization in general, I have ideas for making large parts of the code GPU accelerated because they can be easily expressed in shader operations. This would probably fit even better if you're aiming to run this on mobile devices. But it also requires quite a bit of engineering investment which I currently don't have the time for.

donlk commented 7 years ago

Thank you! Keep me posted please.