Skip to content

perf: faster relabeling for several variants including SAUF#43

Open
william-silversmith wants to merge 19 commits into
prittt:masterfrom
seung-lab:wms_faster_relabel
Open

perf: faster relabeling for several variants including SAUF#43
william-silversmith wants to merge 19 commits into
prittt:masterfrom
seung-lab:wms_faster_relabel

Conversation

@william-silversmith

@william-silversmith william-silversmith commented Jun 22, 2026

Copy link
Copy Markdown

Hi YACCLAB maintainers!

I was running some experiments on YACCLAB and noticed in profiling that relabeling was contributing more time than I expected for variants that work one-pixel/voxel at a time. It's not a huge amount of time, but it is a constant tax against these variants that makes them look worse than they are and in-between them, softens the contribution of a faster first-pass.

I also fixed some compiler warnings.

I re-ran the 8-connected benchmark to demonstrate that there is a material speedup on these variants. The chip was a Macbook Pro M3. I did run them simultaneously, but I think that should be ok on this machine.

I've attached the results of my runs.

Here are some samples though:

Before

image

After

image

I hope you find this a useful contribution.

Sincerely,
Will Silversmith

faster_relabel.zip

master.zip

@prittt

prittt commented Jul 6, 2026

Copy link
Copy Markdown
Owner

Dear @william-silversmith,

Thank you for your contribution! Actually, running the tests in parallel could skew the results (yours might not be the case). I will run some more tests on different machines/OS and let you know.

Best regards,
Federico.

@william-silversmith

Copy link
Copy Markdown
Author

Thank you for taking a look Federico!

I did some short experiments that were single core and saw similar numbers which is why I felt more confident running the parallel version. Hoping that holds up in your experiments across architectures.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants