May 22, 2007
C++ Compiler for Multi-core
Game developer Codeplay Software has demoed an automatic parallelizing compiler for C++. The Sieve C++ Parallel Programming System is a scalable programming system for building C++ code suitable for use on multi-core processing platforms. The Sieve System consists of an extension to a C++ compiler, a multi-core linker, and a runtime to schedule the processes.
The Sieve concept seems straightforward enough:
- A sieve is defined as a block of code contained within a sieve {} marker and any functions that are marked with sieve.
- Inside a sieve, all side-effects are delayed until the end of the sieve.
- Side effects are defined as modifications of data that are declared outside the sieve.
Codeplay claims to have tested several different algorithms written in Sieve C++ on a dual Intel Xeon 5300 quad-core PC, AGEIA's PhysX processor, and the Cell BE based Sony Playstation3. The test programs were compiled using the Sieve C++ compiler and linked with the appropriate Sieve runtime for the target platform. Results were measured from program executions across a sequentially increasing number of processor cores
Utilizing the six available SPEs on the Playstation3, for instance, CRC, Mandelbrot and Julia Ray-Tracing showed a performance improvement of 462-, 557-, and 572-percent, respectively, over execution on a single SPE.
Posted by Jon Erickson at 02:36 PM Permalink
This is a public forum. CMP Media and its affiliates are not responsible for and do not
control what is posted herein. CMP Media makes no warranties or guarantees concerning any advice dispensed by
its staff members or readers.
Community standards in this comment area do not permit hate language, excessive profanity, or
other patently offensive language. Please be aware that all information posted to this comment area becomes the
property of CMP Media LLC and may be edited and republished in print or electronic format as outlined in CMP
Media's Terms of Service.
Important Note: This comment area is NOT intended for commercial messages or
solicitations of business.
|