Linux’s work to scale vertically?

Slashdot and other sites had mention of the release of the 2.6.27 Linux kernel today.   Some of the new features in the kernel take from here about improved SMP support for the page cache:

The page cache is the place where the kernel keeps in RAM a copy of a file to improve performance by avoiding disk I/O when the data that needs to be read is already on RAM. Each “mapping”, which is the data structure that keeps track of the correspondence between a file and the page cache, is SMP-safe thanks to its own lock. So when different processes in different CPUs access different files, there’s no lock contention, but if they access the same file (shared libraries or shared data files for example), they can hit some contention on that lock. In 2.6.27, thanks to some rules on how the page cache can be used and the usage of RCU, the page cache will be able to do lookups (ie., “read” the page cache) without needing to take the mapping lock, and hence improving scalability. But it will only be noticeable on systems with lots of cpus (page fault speedup of 250x on a 64 way system have been measured).

Hasn’t Solaris been able to successfully scale vertically on 64+ CPU systems since the Solaris 2.5.1 days back on the E10k in 1996 without this type of contention?  It also seems like this kernel version brings new enhancements to direct I/O.  This also was implemented back in Solaris 6?

Its great that work is being done in the Linux kernel now to allow for vertical scalability, but it just seems to me that these are already mature kernel features that have been around in Solaris for years.

5 thoughts on “Linux’s work to scale vertically?”

  1. Sorry, but this article is an obvious troll. Linux has run on 64 CPU’s for years, and just like Slowlaris, it has its share of bottlenecks. What they’ve done is to remove one of them. As for direct i/o, if you happen to actually use it, it’s also been in Linux for years. Again, it’s just being *enhanced* here.

  2. It wasn’t meant to be a troll. It was meant to show the blending of philosophies behind the two. What is happening now, is that Linux is trying to gain the major features that Solaris has had, and Solaris is trying desperately to open itself up to the developer community Linux has enjoyed.

    How long has Solaris needed a package / patch architecture simular to RPM or DEB? OpenSolaris responded with IPS integrated with ZFS. How long has Solaris dropped binary files all over the file system, instead of placing into /usr/bin? How long has Solaris had outdated utilities that didn’t come up to par like the GNU utilities? Check out the 2008.05 release of OpenSolaris, and you’ll find /usr/gnu/bin in front of the traditional /usr/bin in the default PATH. I bet in the next releases, it will be collapsed all together into /usr/bin.

    The point of this article, is that not only is Solaris trying to become more “linux like” but Linux is trying to do the same as well. We’re seeing a blend of the two philosophies behind the O/S and everyone is going to benefit.

  3. Linux scales to some of SGI’s 4096 processor SSI supercomputers.

    How long has solaris scaled that far? Actually… Has solaris scaled up to SSI computers with > 1025 cpus? I’ve certainly never heard of it. SLUB was written for these monster SGI machines.

  4. Linux has been scalable to 64 processors–if you purchased a special SGI machine and used a special SGI kernel. And running on, and detecting, 64 CPUs / cores does not mean “scaling”.

    With Solaris and OpenSolaris (and calling it “Slowaris” is really quite counter-productive, and simply makes you look like someone who is only interested in ad hominum attacks and not reasoned debate), you can use the same installation CD to go from a lowly desktop up to a or x4650 or T5440 or E25k.That is scalability: the same, non-special code goes from big to small in a fairly linear fashion.

    The original post deals with updating the default kernel so Linux can do the same thing. Hopefully in the near-future you’ll be able to pop in any random RH/Fedora/SuSE/Slackware DVD and get the same results.

  5. “Linux scales to some of SGI’s 4096 processor SSI supercomputers.”
    o yeah, what Kernel version? what Linux distro? is there any special modification of Kernel?
    and Source link please?

    If the linux kernel is modified first and tightly-coupled with this SGI machine, then the scalability of that Linux for commercial purposes can be nullified.
    WHY?
    because all OS in this universe can perform good scalability when it has been specially modified first to specific H/W.

Leave a Reply

Your email address will not be published. Required fields are marked *