ACM Queue has a paper on Scalability Techniques for Practical Synchronization Primitives by Davidlohr Bueso of SUSE.
This article gives an overview of the design of the Linux kernel locking mechanisms, and details some of the decisions made to improve scalability on real high end systems:
There have recently been significant efforts to address lock-scaling issues in the Linux kernel on large high-end servers. Many of the problems and solutions apply to similar system software. This article applies general ideas and lessons learned to a wider systems context, in the hope that it can be helpful to people who are encountering similar scaling problems. Of course, locks are important on any shared memory system, but optimizing them does not imply ignoring the more important aspects: how those locks are used and what is being serialized.
Spotted at Linux Weekly News
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @01:51PM
People still use Linux?
Huh.
/back to FreeBSD
(Score: 2) by tibman on Tuesday December 16 2014, @03:03PM
It's probably a bad idea to shill right after an article about sockpuppets. You could get the opposite effect and keep people from your BSD. But yes, much of the world still uses linux.
SN won't survive on lurkers alone. Write comments.
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @05:47PM
Does FreeBSD still include a standard conforming rand()? Because OpenBSD for sure doesn't. [soylentnews.org]
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @07:46PM
It's probably a bad idea to shill right after an article about sockpuppets. You could get the opposite effect and keep people from your Linux. But yes, FreeBSD does contain a standard conforming rand().
(Score: 2) by tibman on Tuesday December 16 2014, @03:38PM
They don't say why they used a kernel that is over five years old. The scheduler used also seems very important but is not mentioned.
SN won't survive on lurkers alone. Write comments.
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @06:11PM
Maybe they started their work five years ago, and didn't want their performance statistics to be messed up by unrelated changes brought in through kernel updates?
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @05:48PM
Why should the kernel need to manage locks, when we can had the Linux svchost.exe do it instead?
(Score: 0) by Anonymous Coward on Tuesday December 16 2014, @07:15PM
Spoken like someone who doesnt know what svchost.exe does (and why they did it). And how linux and windows scheduling works. Go hang your head in shame and stand in the corner.
Locks are provided by the kernel. Not an executable container.