Hacker News new | past | comments | ask | show | jobs | submit login
Lockfree algorithms (1024cores.net)
96 points by azernik on June 13, 2012 | hide | past | favorite | 14 comments



If you want to study the subject in more depth, I cannot recommand enough "The Art of Multiprocessor Programming" by Herlihy and Shavit. It has a nice theoretical part, followed by more practical applications.

I also enjoyed "The Art of Concurrency" for a antagonist approach to a close domain. It may be more accessible.


I cannot recommand enough "The Art of Multiprocessor Programming" by Herlihy and Shavit.

Seconded. Its a great book, possibly my favorite book on the subject. I also like "Patterns for Parallel Programming" by Timothy Mattson, Beverly Sanders and Berna Massingill.


Thanks a lot - I'm definitely checking that out.


Rumor has it that Haswell-EP is going to bring 16 core, 32 threads CPUs (up from the current 10 core, 20 thread chips), allowing for 128 threads on a 4 socket systems.

Which is to say, we're actually not that far way from the title of this site becoming quaint, like Teradata does today - assuming Moore's law holds for a while.

Interestingly, and not coincidentally, Haswell is also the first chip that will support hardware transactional memory, which should speed efforts like PyPy's STM, which enables you to write code without manually locking anything.

http://morepypy.blogspot.co.nz/2012/06/stm-with-threads.html

Great submission though - bookmarked!


Please note that you could already have had 512 threads per 4 socket server since two years ago:

http://en.wikipedia.org/wiki/SPARC_T3


Considering the problems that Sun ran into with Rock, and the opinion that Cliff Click has for Azul's own HTM implementation, I wouldn't get excited yet.


>Considering ... Azul ...

I would like to consider: what did he say and when/where?



These docs can retain their usefulness even when their titles are long since obsolete. "The C10K Problem" comes to mind.


This is awesome. I wish HN had more articles like this.


I found a nice introduction to lock-free data-structures here: http://www.cse.yorku.ca/~ruppert/papers/lfll.pdf

It is restricted to linked-lists but has some nice take-aways and worth the read.


The MidiShare folks had something interesting to say about lock-free coding in the late 90's, early 2000's. Unfortunately their papers are not available in grame.fr's re-design but they are available through archive.org:

http://web.archive.org/web/20060427171449/http://www.grame.f...

EDIT: I found the new home:

http://www.grame.fr/Recherche/rsrc/pub/index.php?lang=fr&...

Specifically, this report titled "Lock-Free Techniques for Concurrent Access to Shared Objects":

http://www.grame.fr/Ressources/pub/fober-JIM2002.pdf

It turns out that for MIDI (and Audio) processing, lock-free techniques are quite handy .. Of course it helps if your CPU has compare-and-swap instructions, which most do these days ..


Nice post on a topic I'm always interested in. Clicking through multiple pages with ads around is a pain though. I would suggest the author to publish it as an ebook in pdf. I would definitely buy a copy if it's in $5-15 range.


So far a nice discussion... and it goes on and on and on... I'll be reading more later




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: