seung-lab / euclidean-distance-transform-3d

Euclidean distance & signed distance transform for multi-label 3D anisotropic images using marching parabolas.
GNU General Public License v3.0
234 stars 37 forks source link

Cache Aware Single Core Version #21

Open william-silversmith opened 4 years ago

william-silversmith commented 4 years ago

In testing, it seems that about 69% of the time my test volume was bound by memory latency. This would seem to indicate that a cache aware version could be ~2-3x faster.

william-silversmith commented 4 years ago

Not clear if this is possible. You might just end up exchanging latency on the core data for latency in the calculation on range and vertex.

william-silversmith commented 3 years ago

Might be able to make use of __builtin_prefetch for the Z axis (for g++ and clang).