Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Thu, 6 Dec 2001 17:20:52 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Thu, 6 Dec 2001 17:20:43 -0500 Received: from srexchimc2.lss.emc.com ([168.159.40.71]:16393 "EHLO srexchimc2.lss.emc.com") by vger.kernel.org with ESMTP id ; Thu, 6 Dec 2001 17:20:30 -0500 Message-ID: From: "cardente, john" To: "'Jeff V. Merkey'" , "David S. Miller" Cc: lm@bitmover.com, davidel@xmailserver.org, rusty@rustcorp.com.au, Martin.Bligh@us.ibm.com, riel@conectiva.com.br, lars.spam@nocrew.org, alan@lxorguk.ukuu.org.uk, hps@intermeta.de, linux-kernel@vger.kernel.org, jmerkey@timpanogas.org Subject: RE: SMP/cc Cluster description Date: Thu, 6 Dec 2001 17:20:22 -0500 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="iso-8859-1" Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Hi Jeff, I was one of the primary SCI guys at DG for all of their Intel based ccNUMA machines. I worked with Dolphin closely on a variety of things for those systems including micro-coding a modified/optimized version of their SCI implementation as well as architecting and implementing changes to their SCI coherency ASIC for the third (last) DG ccNUMA system. Beyond that I was the primary coherency protocol person for the project and was responsible for making sure we played nice with Intel's coherency protocol. Getting to the point I saw your post below and I thought there might be some confusion between what the DG boxes did and what those PCI cards do. In the DG system we implemented ASIC's that sat on the processor bus which examined every memory reference to maintain system wide coherency. These evaluations were done for every bus transaction at a cache line granularity. These chips acted as bridges that enforced coherency between the SMP local snoopy bus protocol and the SCI protocol used system wide. The essential point here is that only by being apart of the coherency protocol on the processor bus were those chips able to implement ccNUMA at a cacheline level coherency. The Dolphin PCI cards, however, cannot perform the same function due to the fact that the PCI bus is outside of the Intel coherency domain. Therefore it lacks the visiblity and control to enforce coherency. Instead, those cards only allowed for the explicit sending of messages across SCI for use with clustering libraries like MPI. One could use this kind of messaging protocol to implement explicit coherency (as you noted) but the sharing granularity of such a system is at the page level, not cache line. There have been many efforts to implement this kind of system and (if I recall correctly) they usually go under the name of Shared Virtual Memory systems. Anyway, there were two reasons for the post. First, if I've been following the thread correctly most of the discussion up to this point has involed issues at the cacheline level and dont apply to a system built from Dolphin PCi cards. Nor can one build such a system from those cards and I felt compelled to clear up any potential confusion. My second, prideful, reason was to justify the cost of those DG machines!!! (and NUMA-Q's as they were very similar in architecture). take care, and please disregard if I misunderstood your post or the thread... john -----Original Message----- From: Jeff V. Merkey [mailto:jmerkey@vger.timpanogas.org] Sent: Thursday, December 06, 2001 1:38 PM To: David S. Miller Cc: lm@bitmover.com; davidel@xmailserver.org; rusty@rustcorp.com.au; Martin.Bligh@us.ibm.com; riel@conectiva.com.br; lars.spam@nocrew.org; alan@lxorguk.ukuu.org.uk; hps@intermeta.de; linux-kernel@vger.kernel.org; jmerkey@timpanogas.org Subject: Re: SMP/cc Cluster description On Thu, Dec 06, 2001 at 11:27:31AM -0700, Jeff V. Merkey wrote: And also, if you download the SCI drivers in my area, and order some SCI adapters from Dolphin in Albquerque, NM, you can set up a ccNUMA system with standard PCs. Dolphin has 66Mhz versions (and a 133Mhz coming in the future) that run at almost a gigabyte per second node-2-node over a parallel fabric. The cross-sectional SCI fabric bandwidth scales at (O)(2N) as you add nodes. If you want to play around with ccNUMA with Standard PCs, these cards are relatively inepxensive, and allow you to setup some powerful cc/SMP systems with explicit coherence. The full ccNUMA boxes from DG are expensive, however. That way, instead of everyone talking about it, you guys could get some cool hardware and experiment with some of your rather forward looking and interesting ideas. :-) Jeff > > > Guys, > > I am the maintaner of SCI, the ccNUMA technology standard. I know > alot about this stuff, and have been involved with SCI since > 1994. I work with it every day and the Dolphin guys on some huge > supercomputer accounts, like Los Alamos and Sandia Labs in NM. > I will tell you this from what I know. > > A shared everything approach is a programmers dream come true, > but you can forget getting reasonable fault tolerance with it. The > shared memory zealots want everyone to believe ccNUMA is better > than sex, but it does not scale when compared to Shared-Nothing > programming models. There's also a lot of tough issues for dealing > with failed nodes, and how you recover when peoples memory is > all over the place across a nuch of machines. > > SCI scales better in ccNUMA and all NUMA technoogies scale very > well when they are used with "Explicit Coherence" instead of > "Implicit Coherence" which is what you get with SMP systems. > Years of research by Dr. Justin Rattner at Intel's High > performance labs demonstrated that shared nothing models scaled > into the thousands of nodes, while all these shared everything > "Super SMP" approaches hit the wall at 64 processors generally. > > SCI is the fastest shared nothing interface out there, and it also > can do ccNUMA. Sequent, Sun, DG and a host of other NUMA providers > use Dolphin's SCI technology and have for years. ccNUMA is useful > for applications that still assume a shared nothing approach but that > use the ccNUMA and NUMA capabilities for better optimization. > > Forget trying to recreate the COMA architecture of Kendall-Square. > The name was truly descriptive of what happened in this architecture > when a node fails -- goes into a "COMA". This whole discussion I have > lived through before and you will find that ccNUMA is virtually > unimplementable on most general purpose OSs. And yes, there are > a lot of products and software out there, but when you look under > the cover (like ServerNet) you discover their coherence models > for the most part relay on push/pull explicit coherence models. > > My 2 cents. > > Jeff > > > > On Thu, Dec 06, 2001 at 12:09:32AM -0800, David S. Miller wrote: > > From: Larry McVoy > > Date: Thu, 6 Dec 2001 00:02:16 -0800 > > > > Err, Dave, that's *exactly* the point of the ccCluster stuff. You get > > all that seperation for every data structure for free. Think about > > it a bit. Aren't you going to feel a little bit stupid if you do all > > this work, one object at a time, and someone can come along and do the > > whole OS in one swoop? Yeah, I'm spouting crap, it isn't that easy, > > but it is much easier than the route you are taking. > > > > How does ccClusters avoid the file system namespace locking issues? > > How do all the OS nodes see a consistent FS tree? > > > > All the talk is about the "magic filesystem, thread it as much as you > > want" and I'm telling you that is the fundamental problem, the > > filesystem name space locking. > > - > > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > Please read the FAQ at http://www.tux.org/lkml/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/