The Leading Source for Global News and Information Covering the Ecosystem of High Productivity Computing
January 19, 2007
As CPUs and graphics processors (GPUs) evolve, many of their design features are beginning to look remarkably similar, and as a result, many of today's most common workloads will soon have a choice about where to execute. Users have been told by all the major hardware providers to expect processors that feature increasingly non-uniform and complex memory hierarchies, rapidly increasing core (and thread) counts and the integration of specialized acceleration units. These new processor designs will not be friendly to legacy code bases optimized for single-threaded, uniform memory systems, or, for that matter, to programmers without the time or expertise to create tuned, processor specific code. If we want to fully utilize these new hardware designs, then something needs to change about the way we write software.
Of course, some of these changes have been more widely evangelized than others. Many people know the history of multi-core on the CPU. When AMD shipped its first dual-core processor, multi-core processors really broke through into the commodity processor market. AMD was also first to incorporate both the memory interface logic and processor interconnect interface logic on the processor chip itself. And now Intel has shipped its first quad-core processors, as AMD is expected to do next year.
But what has happened to core count so far is merely the prologue to an imminent drastic increase in core counts. At the Intel Developer Forum 2006, for example, Intel showed off "Polaris", a prototype processor with 80 cores, each with its own local, programmer-managed memory and with a fast on-chip interconnect. A wave of discussions ensued on numerous developer forums about whether the design was the best approach, but practically everyone agreed that there would be no easy way to program it.
In fact, industry pundits are predicting the solution to programming issues will be the next big software remediation effort as Moore's Law is realized by the doubling of the number of cores on a chip approximately every 18 months through 2015. According to Gartner Research vice president Carl Claunch, "If your software runs as a monolith, a single thread, you need to re-architect it to be parallel, otherwise the workload will not be capable of accessing the additional performance delivered with each new generation of systems." Unfortunately, a majority of programmers are not sufficiently skilled to make applications multithreaded, yet the relentless doubling every 18 months will demand higher and higher levels of concurrency over time.
In another set of announcements, AMD has been talking up its "Torrenza" initiative. According to AMD, future CPUs won't be composed of homogeneous cores -- there will simply be too many cores for useful work -- but instead some of that chip area will be devoted to specialized accelerators. The first fruit of this approach will be the "Fusion" processor, an integrated CPU/GPU available sometime around the 2008 timeframe.
The GPU Design Evolution
Strangely enough, there are companies who already have lots of experience designing highly multi-core processors and enabling the software to take advantage of them: the GPU providers. GPUs have had massively multi-core designs for quite some time. The ATI R580 processor has 48 processing cores, while the just-shipped G80 from NVIDIA has an astonishing 128 processors. The GPU also has a history of adding accelerators for specialized functions, such as line-of-sight calculation.
Many people are familiar with the astonishing raw number-crunching potential of the GPU -- the NVIDIA G80, for example, has half a teraflop of floating point capacity (for about $600) -- but fewer are familiar with the other evolution in GPU designs. The GPU used to be a relatively inflexible, semi-fixed function processor, but the latest generation of GPUs, driven by Microsoft's DirectX 10 requirements, are outgrowing their graphics legacy and becoming, for want of a better term, "high throughput processors."
With the new generation, (e.g., the NVIDIA G80), GPUs have added full dynamic flow control, integer support, full shared memory access, true scalar cores and multiple levels of non-uniform cache. Add to that the announcement by all GPU providers that double precision floating point is coming in the near future and you have a design that shares several striking features with Intel Polaris.
The Future of the Processor
Page: 1 of 2(Digg, Technorati, more)
White Paper: HPC in a Green and Modular Solution Building Block
Learn how the Appro GreenBlade™ System helps consolidate server, storage, network, power and simplified management capabilities in a single package while providing the performance-density, energy-efficiency and best ROI for your business.
Jul 01 | GenomeWeb Daily News | The popularity of cloud computing in the life sciences community was on full display at April's Bio-IT World conference. Read more...
Jul 01 | Linux Magazine | How can getting to the ocean help with HPC computing? Read more...
Jun 29 | GCN.com | Agency issues RFI for "Ubiquitous High Performance Computing" systems. Read more...
Jun 29 | Computerworld | The bottom of the TOP500 reveals the coming revolution in truly accessible high-end computing. Read more...
Jun 18 | EE Times | Parallel software also takes spotlight at Stanford confab. Read more...
Apr 14 | | Many HPC IT departments are feeling the rising pressure to deliver more capacity computing and performance while trying to reduce the total cost of ownership. This white paper discusses how an environmentally-friendly and open-standards HPC building block based computing system using flexible interconnect options helps address capacity computing needs.
Source: Addison Snell, GM/VP, Tabor Research; sponsored by Dell
Many organizations that could benefit from the use of HPC clusters find that it is complicated to get the systems up and running because of limited IT resources or the complexities of the clusters themselves. Learn how the Intel Cluster Ready program, for which Dell was an original partner, seeks to address this challenge for entry level and mid-range HPC users.
BlueArc's Titan architecture represents an evolutionary step in file servers by creating a hardware-based file system that can scale bandwidth, IOPS, and overall data capacity well beyond conventional software-based devices. With its ability to virtualize a massive storage pool of up to four usable petabytes of tiered storage, Titan can scale with growing data requirements, offering a competitive advantage for businesses, researchers, or other enterprises seeking to better manage data growth while still ensuring optimal performance.
Sun Studio Compilers and Tools and Sun HPC ClusterTools allow you to create high performance parallel applications for OpenSolaris, Solaris and Linux. Sun Studio Express 11/08 includes MPI performance analysis capabilities and full OpenMP 3.0 compiler support. Learn about all this and the latest in Sun HPC ClusterTools 8.1.