BrunoLevy / geogram

a programming library with geometric algorithms
Other
1.8k stars 122 forks source link

Atomics refactor to use std::atomics #123

Closed kevinbentley closed 7 months ago

kevinbentley commented 9 months ago

Added support for aarch64 architectures. To do so required refactoring the uses of atomics.

This replaces the architecture specific atomics and spinlocks to use std::atomics. It passes all of the same tests that pass on the main branch. I have done basic performance comparisons using the tests and they are nearly identical on x64 and mac. I haven't compared android or arm32.

BrunoLevy commented 9 months ago

Fantastic ! I'll look at it and merge it as soon as I can find time. Many thanks !

BrunoLevy commented 7 months ago

Awesome ! Thank you very much. This will be included in v1.8.8

BrunoLevy commented 7 months ago

Argh, breaks compilation on different platforms, will revert back previous implementation and re-schedule it for v1.8.9....

BrunoLevy commented 7 months ago

Now looking carefully, trying to fix it. Will keep you updated.

BrunoLevy commented 7 months ago

Hi, I have done a couple of fixes (repo is up to date), now all the non-regression tests pass for all my platform. Would you test it ?

kevinbentley commented 7 months ago

Yes, I'll get back to you ASAP.