Many of you likely remember being challenged on your first day of philosophy class with the question: “If a tree falls in a forest but no one is around to hear it, does it make a sound?” Today's philosopher might better engage students by asking: “If a PC is sitting on a desk, but no one is around to use it, does it make a sound?” The answer is a resounding “yes” — if that PC is on the Grid.
Grid computing allows for the coordination and sharing of distributed hardware resources — like enterprise desktop PCs — which opens up new solutions for complex computing problems. This article discusses how small, incremental investments in desktop PC performance will yield dramatic benefits in an enterprise Grid computing environment. You will also get an answer to your burning question: “What the heck does the sound of a PC have to do with Grid computing?”
An increasing number of enterprises are experimenting with Grid computing; production applications are being deployed every day. However, many of these “Grid” deployments simply couple a distributed resource manager (like Condor) with a cluster of dedicated machines. The real Holy Grail of Grid computing involves tapping the vast legion of desktop PCs, oftentimes referred to as “shared” machines because the compute cycles available to a Grid application must be shared with the primary owner of that machine. This type of Grid design is often called opportunistic computing.
And what an opportunity it is. Consider that a collection of 10,000 PCs acquired over the last four years (not all brand spanking new, high-end systems, mind you) can have an aggregate Floating Point Operations Per Second (FLOPS) rating on the order of 5 teraflops. Compare that to the world's fastest supercomputer (IBM's BlueGene/L as of June 2005) at 136 teraflops. Said another way, a 5 teraflop computer would rank 57th in the Top 500 List of Supercomputers. Not a bad showing for just “gluing together” the computing power of the thousands of PCs found in many enterprises. And gluing together individual computers to form a unified computing resource is just what Grid software does. Granted, you can not solve exactly the same types of problems that high-end, purpose-built machines can, but a Grid's aggregate kiloflop rating is indicative of the computing work that can be accomplished.
Now simply gluing a bunch of PCs together into a “supercomputer” with Grid software is kind of like having a bow without an arrow. A Grid without applications is as useless as a bow without arrows! While computer applications can, and obviously have for years, run without the benefit of a Grid, the Grid lends speed and power to computer applications as a bow adds speed and power to arrows.
When you envision (or better yet, deploy) a Grid harnessing thousands of desktop PCs in your enterprise, interesting ideas will surface. You will find applications whose job queues can be broken into hundreds or thousands of parts that can be worked on simultaneously. You will consider many possible solutions to problems that become feasible with a thousand workers. You will deploy two, three, four of these applications which now consume two, three, four thousand desktop PCs. And then you will have the revelation that occurs to every bow hunter in bear country: If a long bow is good, a compound bow is better — much better. And there is no learning curve. You are immediately more capable.
Consider the long bow vs. compound bow analogy in terms of enterprise desktop PC performance. Many enterprises use a tiered PC procurement strategy based on the following reasoning: Most workers can get by with a pretty basic machine (a single processor and a little memory), some folks require more power (a faster processor and more memory), and a small number of workers — like engineers, designers and planners — might need beefy machines with two processors and lots of memory. If you are a Grid application developer and have a choice of running your application on these three types of machines, which would you prefer? The highest-performance ones, right? Unfortunately, because of today's typical PC procurement strategy, those machines are the most scarce. However, depending on the Grid application, PC performance may no longer be a matter of preference, but one of necessity. In fact, in 2005 alone, this author deployed three Grid applications that required fast machines with lots of memory.
Recent discussions with another large enterprise revealed that limited desktop PC performance was actually delaying a shift from cluster Grid computing to opportunistic Grid computing for “short data, long compute” applications. If you are considering deploying an opportunistic enterprise Grid, you may wish to update your PC procurement process. Consider two primary changes: 1) consolidate from three performance classes to two by eliminating the low-end tier, and 2) upgrade each PC to a minimum memory content of 1GB per processor — an amount that experience shows is sufficient for hosting Grid applications with minimal impact on the machine owner.
Aligning your PC procurement strategy to optimize Grid performance provides several benefits. Every machine that is replaced with a higher-performance machine increases the overall capability of the enterprise Grid. The expense of upgrading the enterprise Grid is incremental and avoids a more expensive mass upgrade. The incremental cost of purchasing more capable machines will be offset by enhanced productivity of the primary machine owner. As you deploy computationally intensive Grid applications on an enterprise Grid of performance-enhanced desktop PCs, you will reap unprecedented benefits from your IT investment. This author's experience attests to that fact. You will also begin running those desktop PCs at aggregate CPU and memory utilization rates never before reached.
And now for the answer to your burning question: Today's PCs have CPU temperature sensors and variable speed cooling fans. The more a CPU is used, the hotter it becomes. The hotter the CPU becomes, the faster the fan runs. Some users have never heard their PC's fan run until their machines started running Grid applications! So, yes, a PC does make a sound when no one is around — if it's on the Grid.
About Brooklin Gore
Brooklin Gore is a senior fellow with Micron Technology Inc., a manufacturer of semiconductor products including DRAM, flash and image sensors. Gore has been researching and implementing enterprise Grid technologies for the past four years to create Micron's global Grid infrastructure, which runs over 20 production applications today. In Gore's 17 years with Micron, he has served as product engineer, computer-aided design group manager, network manager and general manager of Micron's Internet Services Division. Gore has been issued several U.S. patents and is a senior member of the IEEE. He holds Bachelor of Science degrees in computer science and electrical engineering from the University of Idaho and a Masters of Science in computer science from the National Technological University.