Scalability and Symmetric Multiprocessing

March 30, 2001, 12:00 AM —  ITworld — 

The Linux kernel offers a high scalability level. It's modular and
fast. Additionally, it has a small memory footprint and a clever
virtual memory system. This is why Linux is used on a variety of
platforms, ranging from the smallest embedded systems, through ordinary
PCs, to multi-user servers. One of the most important kernel features
is Symmetric Multiprocessing (SMP) support. Multiprocessing is hardly
new -- multiprocessor machines have been around for decades. However,
it used to be very expensive, asymmetric, and relied on special
hardware architectures. With the emergence of the SMP architecture
several years ago, multiprocessing has become more widespread. SMP is
one of the most challenging aspects in the design of a modern operating
system. In fact, many of the delays in the release of kernel 2.4 were
attributed to SMP enhancements. What is so special about SMP and why is
it so difficult to design a good SMP kernel?

First, let's have a quick overview of this architecture. SMP relies on
three basic principles:

* Multiprocessing: This means that the system consists of multiple
identical CPUs.

* Symmetry: Each CPU has an identical view of the system and has
the same capabilities.

* Singularity: Except for the CPU and their caches, everything else
is single: there's a single memory system, a single kernel, and a
single run queue.

In an SMP-enabled environment, threads and processes have no affinity
to a particular CPU. In one time-slice, the same thread may execute on
CPU #1 and on another time-slice, it may execute on CPU #2. Seemingly,
a two-processor machine can be twice as fast compared to a uniprocessor
machine. In practice, however, the scalability gain is even lower
because other resources such as memory, I/O buses, and the kernel
itself -- are still shared. Furthermore, most algorithms are fully or
partially sequential (single-threaded) by nature, and so are system
calls, memory access routines, and synchronized operations. Therefore,
there is an upper limit to the speedup increase that you can get from
multiprocessing - no matter how many processors your machine has. That
said, with every release, the Linux kernel scales better in terms of
the number of processors supported and the scheduling algorithm.
Release 2.4 will probably support 16 processors. Future releases may
reach 64 and even 256 processors.

» posted by ITworld staff

ITworld

I like it!
Post a comment
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
Free books

Essential JavaFX
Get started building rich Web apps quickly with an introduction to the power of JavaFX key features -- scene node graphs, nodes as components, the coordinate system, layout options, colors and gradients, custom classes with inheritance, animation, binding, and event handlers.Enter now!

The Nomadic Developer
Consulting can be hugely rewarding, but it's easy to fail if you are unprepared. To succeed, you need a mentor who knows the lay of the land. Aaron Erickson is your mentor, and this is your guidebook. Enter now!

Featured Sponsor

AISO founders envisioned a Web hosting company that was environmentally friendly. While the company employed energy-efficient innovations like solar panels, its infrastructure produced unacceptable power and cooling requirements. Find out how AISO leveraged AMD technology to overcome their challenge in this case study white paper.

In this whitepaper, Scalar explores the opportunity to change the landscape with respect to mission critical databases built around Oracle. Leveraging technologies such as Linux, high-end commodity processing power and Oracle RAC technology to architect, design, build and maintain database infrastructure that delivers maximum availability, reliability and performance at a fraction of traditional cost.

On a typical day, weather.com, the Web site for The Weather Channel in Atlanta, serves up between 15 million and 20 million page views. But in September 2004, when back-to-back hurricanes ransacked Florida, the peak traffic on one day more than tripled: over 70 million page views by more than 7 million unique visitors. Read the full success story now.

Marketplace