Application development for the Cell processor
Before you can launch the Cell Full System Simulator, you must store the path to the simulator in the SYSTEMSIM_TOP environmental variable, which is /opt/ibm/systemsim-cell by default.
The following command wakes up the simulator:
The -g option launches a Tcl/Tk-based graphical interface (Figure 6). To see the various modes the simulator offers, press the Mode button. For a simple function test, Fast Mode is probably your best choice. Clicking Go launches the simulator. Now the console window will show you the operating system booting on the simulated Cell machine.
To load the program you want to run on the simulator, use the callthru command. If you run the command without any parameters, it will just show a help text. To import an executable file stored in the path /tmp/pi_libspe on the physical machine, use the command:
callthru source /tmp/pi_libspe > pi_libspe
After modifying the permissions, as in chmod u+x pi_libspe, you can then finally launch the program:
./pi_libspe 1000000 8
Running the program tells the simulation machine to create a million pairs of random numbers using eight SPEs. The precision with which the result matches the accepted value of PI depends on the quality of the pseudo-random numbers, but also on the number of attempts. The statistical error is approximately identical to the reciprocal value of the square root of the number of attempts. Given one-million attempts, the deviation between the approximated value and the actual value of PI is about one thousandth, that is, about 0.003.
Another programming tool is the Data Communication and Synchronization (DaCS) library. Dacs abstracts a number of the Cell processor's special features, which means that it potentially could be ported to other accelerator architectures. In contrast to this, the Accelerator Library Framework (ALF) implements a programming model that swaps out individual functions to the SPEs. DaCS and ALF are included in the IBM developer environment.
The Multicore Application Runtime System (Mars) is an open source project spearheaded by Sony . Mars installs miniature kernels on the SPEs, and the kernels autonomously manage the execution of programs on "their" SPEs. Released in November 2008, version 1.0.1 is available as either an RPM package or Tar archive.
- Top 500: http://www.top500.org
- Green 500: http://www.green500.org
- Cell SDK: http://www.ibm.com/developerworks/power/cell
- Cell system simulator: http://www.alphaworks.ibm.com/tech/cellsystemsim
- Barcelona Supercomputer Center: http://www.bsc.es
- Linux on the PS 3: http://en.wikipedia.org/wiki/Linux_for_PlayStation_3
- Mars software and documentation: ftp://ftp.infradead.org/pub/Sony-PS3/mars
Buy this article as PDF
Founder of ownCloud launches the Nextcloud project.
Will The Machine change the way future programmers think about memory?
The new Torus distributed storage system is available under an open source license on GitHub
Juries decides Google’s use of Java APIs Was Fair Use
But if you are not using the latest Linux kernel, your system is insecure.
Home routers will give room for custom firmware but still comply with FCC rules
Frank Karlitschek will continue to lead the open source ownCloud project
“Xenial Xerus” comes with a new packages format and several improvements for the enterprise.
Linux users can now download and install the Windows code editor
New initiative will address security and interoperability concerns around container technology.