Cluster or Constellation

June 24th, 2009 9:50 am
Posted by Douglas Eadline
Tags: , , , ,

Is there really a difference between cluster designs?

In a previous entry, I talked about Capacity vs Capability Clusters. Some may argue, "What is the difference?" As I mentioned, there are some design differences, but my main point was to sort out how people use clusters. That is, not everybody is running their code on 25,000 cores.

Indeed, in a pedantic sense, you may not even be using a cluster, you may actually be running on a constellation. Please note, I do not mean the Sun "Constellation" brand cluster, but rather I am talking about a definition used by Beowulf pioneer Tom Sterling:

A constellation is a cluster of large SMP nodes scaled such that the number of processors per node is greater than the number of nodes.

Using this definition, a constellation becomes a cluster when the number of nodes equals or exceeds the number of cores per node. Today, the eight core node is standard which implies that you need eight nodes (or more) to be called a cluster. Therefore, a modern day cluster should have 64 or more cores. There was a time when 64 processors (single core) was considered a large cluster. By today's standards and Sterling's taxonomy, it may not even be a cluster!

Again, users may ask, "What is the point? My codes run on either system". I would agree to a point. If your codes uses eight cores or less, then you probably want to run on a single node. And, as core counts and processor sockets increase, the cores per node will easily double. Thus, if your code requires 16 cores or less you will again stay within a single node. In terms of programming, this may swing many decisions away from MPI toward a threaded solution. This could be a major break in the way HPC is done on clustered systems.

By the way, for a 16 core node (e.g. four socket quad-core) to be considered a cluster it must have 16 nodes which implies 256 cores. Interestingly, using the definition above, doubling the number of cores per node, quadruples the total core count required by our cluster definition.


You must be a Registered Member in order to comment on Cluster Connection posts.

Members enjoy the ability to take an active role in the conversations that are shaping the HPC community. Members can participate in forum discussions and post comments to a wide range of HPC-related topics. Share your challenges, insights and ideas right now.

Login     Register Now

Author Info

Dr. Douglas Eadline has worked with parallel computers since 1988 (anyone remember the Inmos Transputer?). After co-authoring the original Beowulf How-To, he continued to write extensively about Linux HPC Clustering and parallel software issues. Much of Doug's early experience has been in software tools and and application performance. He has been building and using Linux clusters since 1995. Doug holds a Ph.D. in Chemistry from Lehigh University.