IBM Assembly Visualizer for Cell Broadband Engine
A tool that provides a graphical user interface (GUI) for viewing the static analysis results of a Synergistic Processing Element (SPE) program and that enables safe, interactive hand-tuning of assembly.
Date Posted: May 10, 2007
|
|
 |
 |
|
Update: March 11, 2008
Version 1.1 fixes scheduling inaccuracies with ORX, HBRP, NOP, LNOP, and double-precision instructions; and it adds support for the Cell-eDP architecture.
What is IBM Assembly Visualizer for Cell Broadband Engine?
The spu_timing tool in the Cell Broadband Engine™ software development kit (SDK) provides valuable performance information about where Synergistic Processing Element (SPE) programs are stalling and failing to dual-issue. However, the output of spu_timing is a flat text file. For large and complex SPE programs, navigating these files can be daunting. IBM® Assembly Visualizer for Cell Broadband Engine allows the static analysis results to be navigated by function; it color codes the locations and sources of pipeline stalls; and it allows failed dual-issues to be identified at a glance.
The Assembly Visualizer also allows the user to safely and interactively edit the assembly in a manner that does not violate the correctness of the original program. The user can then hand-tune and fix pipeline stalls that the compiler has missed. This powerful functionality enables a level of performance optimization that is not possible at the C/C++ level.
How does it work?
The Assembly Visualizer reads in SPE assembly and locates pipeline stalls and single issues by using an internal model of the Cell Broadband Engine architecture. Register dependencies are tracked, allowing the user to see the sources of pipeline stalls. The same dependencies allow for interactive editing; transformations that would violate the correctness of the original program are easily detected and prohibited.
What's new in Version 1.1?
The new version fixes the scheduling inaccuracies that occurred with the ORX, HBRP, NOP, LNOP instructions and with all the double-precision, floating-point instructions. In addition, the new version is capable of simulating a Cell Broadband Engine SPE equipped with fully-pipelined, double-precision, floating-point units (also known as the "eDP Cell"), in addition to regular Cell Broadband Engine architecture.
|
|
 |

|  | About the technology author(s): IBM Assembly Visualizer for Cell Broadband Engine was originally written by Gregory Russell, a research staff member at IBM Research in Yorktown, N.Y. It is currently being maintained by Daniele Paolo Scarpazza, a post-doctoral fellow at the same facility.
Cell Broadband Engine and Cell/B.E. are trademarks of Sony Computer Entertainment, Inc., in the United States, other countries, or both and are used under license therefrom.
IBM is a trademark of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
| |
|
View screenshots:
 |
| |