A Dual Hammer System


By Nils Dahl

Date: July 16, 2002

I've been chewing on an idea for a while. The concept required a bit of knowledge that I didn't have - until today.

Linux uses the X server system to generate graphic displays (also called X11 or X Window System or, for a specific implementation, perhaps the X86 server). The 'server' is a task running under Linux that 'serves' images in the form of drawing commands to the video driver. The clients are applications running as tasks under Linux.

Historically, X can be viewed as a method of separating the gui generation work from the application work - each running on a separate system. Coupling the two systems efficiently would require special interconnects or mandate the inefficiencies of networks handling packets.

Today, we are on the verge of Hammer systems that use Hypertransport. Now if Hypertransport is a grown up concept of the same class as S-100, then Hypertransport can be used inside one box to couple 'application' nodes to 'server' nodes fairly efficiently - particularly where the new 800 mHz level of Hypertransport becomes affordable.

The basic idea would be to start with a dual hammer system - one node running Linux plus X client apps and one node running Linux plus the X server plus the video driver (via an AGP connection or perhaps using a direct Hypertransport interface to a new video subsystem design). The idea could be extended by using a multiple node Hammer to run a client that would feed multiple X server nodes. Imagine a very fast 3D modeling client that generates the components of an animated movie (still background, moving background, moving figures) and sends this via tunneled Hypertransport connections to a series of X server nodes, each of those server nodes handling generation of one whole frame. That would be a nice starting point for exploring new design concepts.

Given the versatility of Hypertransport, there is no reason to stick to impedance-tuned wires as the interconnect method. Fiber optic bundles could link one or more client subsystems to one or more server subsystems within the same large box, allowing mixed systems to be economically designed on smaller motherboards. This leads to postulating tower designs that have client app subsystems on one level feeding X server subsystems on the level above - in expandable cage designs.

It would be nice to see some experienced researchers simulate designs on a mainframe just to test out the usefulness of different design approaches. It seems important to note that a 'divide and conquer' approach to workload will offer superior performance in spite of current limitations of memory modules and eliminate contention for memory access - as occurs with all 'one processor does everything' solutions.

I suggest this as an interesting and useful idea that avoids the costs and problems of the typical commercial validation process - a process that is mandatory for all systems handling critical business data. Besides, I love the idea of a system that could generate Shrek in real time. Particularly that scene where Princess Fiona 'deals with' those guys in green. Yes, Cameron Diaz was doing Charlie's Angels at that time and was able to lend an air of authenticity to the Princess' combat skills.

Folks, there are market forces at work already that just cannot be discussed. The outcomes will affect the entire world of computing in ways that nobody can predict. It is much like one of my favorite SF novels (by Jack Chalker) - When The Change Winds Blow. Everyone exposed to this random storm of magic gets altered permanently and in ways that cannot be predicted. Heck, life is like that anyway. Sometimes all it takes is one slightly imperfect hard drive design to change the lives of millions of people. Or maybe a simple accounting decision. Or uncertainty over the future of ADSL broadband.

In any event, it would be nice to see a hardware architecture that provides the proper foundation for the concepts embodied in UNIX and Linux - where clients and servers of several types can run on separate nodes or clusters of nodes that are very efficiently linked by general purpose bus paths.

Now consider this. If only proprietary operating systems were available, there would be no way of trying out different concepts that could enhance Hypertransport designs. We likely would be kept in the hands of firms that tend to tell us 'how things are going to be done'. And as the griffon did say to Alice - "A word means precisely what I want it to mean, neither more nor less." So if each person has a different notion of just what the word innovate means,........ Whatever happened to the Bellmac processor and where is Hal Hardenburgh of DTACK Grounded now? And just who was the faithful newsletter editor of that scandalous rag I enjoyed so much? Those were the days. Yes, there is a good side to getting old - but please try to avoid doing so if possible.

The greatest achievement anyone can make is to understand how something works. And if you can apply your understanding to everyday life, you just might discover that grandest adventure of all. That is the secret of that famous fruit of the Tree of Knowledge.

Ignorance, my friends, is pure hell.

nils dahl

just an old man


Pssst!  We've updated our Shopping Page.