4 ms·
I read that some lock free libraries needed to be updated when Apple released it's first dual core ARM processors. Something about ARM's read or write ordering
by Gibbon1 6y ago
I read that some lock free libraries needed to be updated when Apple released it's first dual core ARM processors. Something about ARM's read or write ordering guarantees are looser than Intels.
Me I'd rather roll my own cryto than try and write my own lock free data structure.
- saagarjha 6y agoFun fact: Apple's recent processors have a mode where they emulate stricter ordering guarantees (for Rosetta, of course).
- Gibbon1 6y agoThat reminds me I think I saw some blurb in an MCU data sheet that mentioned the processor can do out of order memory accesses which if you're an embedded guy tends to freak you out. However the chip designers disabled that for peripheral memory accesses. Which is very nice of them.
- DougBTX 6y agoYes, this is something where different CPU architectures do it differently, even between ARMv7 and ARMv8 etc. There's a great presentation on the differences here: https://channel9.msdn.com/Shows/Going+Deep/Cpp-and-Beyond-2012-Herb-Sutter-atomic-Weapons-1-of-2 https://channel9.msdn.com/Shows/Going+Deep/Cpp-and-Beyond-20... https://channel9.msdn.com/Shows/Going+Deep/Cpp-and-Beyond-2012-Herb-Sutter-atomic-Weapons-2-of-2 https://channel9.msdn.com/Shows/Going+Deep/Cpp-and-Beyond-20... He goes into the details of ARM vs Intel etc in the middle of part 2, but really part 1 is well worth a watch.