We like to distinguish our Cluster Compute instances from the other instance types by providing details about the actual processor (CPU) inside. When we launched the CC2 (Cluster Compute Eight Extra Large) instance type last year we were less specific than usual, stating only that each instance contained a pair of 8-core Xeon processors, each Hyper-Threaded, for a total of 32 parallel execution units.
If you are a student of the Intel architectures, you probably realized pretty quickly that Intel didn't actually have a processor on the market with these particular specs and wondered what was going on.
Well, therein lies a tale. We work very closely with Intel and were able to obtain enough pre-release Xeon E5 ("Sandy Bridge") chips last fall to build, test, and deploy the CC2 instance type. We didn't publicize or expose this information and simply announced the capabilities of the instance.
Earlier today, Intel announced that the Xeon E5 is now in production and that you can now buy the same chips that all EC2 users have had access to since last November. You can now write and make use of code that takes advantage of Intel's Advanced Vector Extensions (AVX) including vector and scalar operations on 256-bit integer and floating-point values. These capabilities were a key in an cluster of 1064 cc2.8xlarge instances making it to the 42nd position at last November’s Top500 supercomputer list clocking in at over 240 Teraflops.
I am happy to say that we now have plenty of chips, and there is no longer any special limit on the number of CC2 instances that you can use (just ask if you need more). Customers like InhibOx are using cc2.8xlarge instances for building extremely large customized virtual libraries for their customers - to support computational chemistry in drug discovery. In addition to computational chemistry customers have been using this instance type for a variety of applications ranging from image processing to in-memory databases.
On a personal note, my son Stephen is working on a large-scale dynamic problem solver as part of his PhD research. He recently ported his code from Python to C++ to take advantage of the Intel Math Kernel Library (MKL) and some other parallel programming tools. I was helping him to debug an issue that prevented him from fully exploiting all of the threads. Once we had fixed it, it was pretty cool to see his CC2 instance making use of all 32 threads (image via htop):
And what are you doing with your CC2? Leave us a comment and share....