IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Research topics  >  Cell Broadband Engine technology  >  

IBM Full-System Simulator for the Cell Broadband Engine Processor

A full-system simulation infrastructure and tools for the Cell Broadband Engine processor.


Date Posted: November 9, 2005
Overview Requirements DownloadFAQsForum Reviews

1. What's new in this release?
2. Where can I find general information for the whole IBM Software Development Kit for Multicore Acceleration?
3. How can the IBM® Full-System Simulator benefit my development process?
4. How does the IBM Full-System Simulator for Cell Broadband Engine Processor fit into the overall SDK for Multicore Acceleration?
5. What experience or skill level is required of users?
6. For what types of simulation is the IBM Full-System Simulator currently used?
7. Can I use the simulator to get an accurate estimate of the performance of my application?
8. How do I connect to the simulator using the "bogus network" interface?
9. Where can I get further information about installing and using the IBM Full-System Simulator for Cell Broadband Engine Processor?


1. What's new in this release?

Release 3.0 provides the following enhancements:
  • a new fast simulation mode using just-in-time translation that improves simulation speed by a factor of 10 or more on 64-bit host platforms
  • improved performance modeling for the PPE and memory subsystems, particularly for configurations with two Cell Broadband Engine processors
  • new and enhanced tools for identifying programming errors, such as DMA command errors and SPU stack overflow, in Cell Broadband Engine applications
Back to top Back to top

2. Where can I find general information for the whole IBM Software Development Kit for Multicore Acceleration?

Please see the developerWorks Cell Broadband Engine Resource Center.
Back to top Back to top

3. How can the IBM® Full-System Simulator benefit my development process?

The IBM Full-System Simulator is a software application that emulates the behavior of a system containing one or multiple Cell Broadband Engine™ Processors. Users are able to boot a Linux operating system in the simulator and then, in turn, run applications on the simulated operating system. In addition to running applications, the simulator also supports the loading and running of statically-linked executables and stand-alone tests without an underlying operating system.
Back to top Back to top

4. How does the IBM Full-System Simulator for Cell Broadband Engine Processor fit into the overall SDK for Multicore Acceleration?

The IBM Full-System Simulator for the Cell Broadband Engine Processor is a component of the SDK for Multicore Acceleration. alphaWorks users interested in running this simulator can download the binary files available on the download page and build the system based on instructions available in the Installation Guide.
Back to top Back to top

5. What experience or skill level is required of users?

In order to use the IBM Full-System Simulator for the Cell Broadband Engine Processor, you should be familiar with running computer simulations and with the PowerPC instructions so that you can follow the processor's execution sequence.
Back to top Back to top

6. For what types of simulation is the IBM Full-System Simulator currently used?

The simulator provides several modes of functional-only and performance simulation. In most cases, the simulation mode can be changed dynamically at any point in the simulation. However, certain "warm-up" effects may affect the results of performance simulation for some portion of the simulation following a change to cycle mode.
  • Simple (functional-only) mode models the effects of instructions, without attempting to accurately model the time required to execute the instructions. In simple mode, a fixed latency is assigned to each instruction; the latency can be arbitrarily altered by the user. Because latency is fixed, it does not account for processor implementation and resource conflict effects that cause instruction latencies to vary. Functional-only mode assumes that memory accesses are synchronous and instantaneous. This mode is useful for software development and debugging, when a precise measure of execution time is not required.
  • Fast mode is similar to functional-only mode in that it fully models the effects of instructions while making no attempt to accurately model execution time. In addition, fast mode bypasses many of the standard analysis features (such as statistics collection, triggers, and emitter record generation) provided in functional-only mode. Fast mode simulation is intended to be used to quickly advance the simulation through uninteresting portions of program execution to a point where detailed analysis is to be performed.
  • Cycle (performance) mode models not only functional accuracy but also timing. It considers internal execution and timing policies as well as the mechanisms of system components, such as arbiters, queues, and pipelines. Operations may take several cycles to complete, accounting for both processing time and resource constraints.
Back to top Back to top

7. Can I use the simulator to get an accurate estimate of the performance of my application?

Support for performance simulation has been evolving since the IBM Full-System Simulator for the Cell Broadband Engine platform was originally released on alphaWorks. The first version of the simulator provided a cycle-accurate model of SPU instruction execution; this model enabled developers to gather detailed performance data about the execution of SPU programs, such as pipeline stalls, operand dependencies, and so forth. Subsequent versions of the simulator have provided performance simulation of memory subsystem functions (in version 2.0) and the PPU execution (in version 2.1). As a result, the simulator now supports performance simulation for nearly all aspects of the Cell Broadband Engine processor operation.

The performance models for all components are disabled by default when the simulator is started, so you must explicitly enable the performance models in order to get meaningful performance results. The performance models add a significant amount of overhead to simulator execution, so you should expect a reduction in simulation speed of 10 times or more, depending on the application, when running simulations with performance models enabled.

The performance models in the simulator are intended to compliment the performance analysis tools and techniques available on actual hardware. However, the performance models of the simulator provide only estimates of actual performance results on hardware, and may differ significantly from hardware results in certain circumstances. We expect that the performance models in the simulator will be helpful in initial performance tuning efforts and for diagnosing performance problems. However, only performance results from hardware should be used when precise performance information is required.

Back to top Back to top

8. How do I connect to the simulator using the "bogus network" interface?

The simulator provides "bogus network" support in order to enable network communications with reasonable performance between the simulated system and the host system. The simulator relies on kernel services, specifically the TUN/TAP driver, to provide bogus network support. In order to allow non-root users to access these services, you must set the appropriate permissions on the tun device by executing the following command as root:
    chmod 666 /dev/net/tun
The "Bogus Network Support" topic in the IBM Full-System Simulator User's Guide provides detailed information about how to configure and use the bogus network interface of the simulator.
Back to top Back to top

9. Where can I get further information about installing and using the IBM Full-System Simulator for Cell Broadband Engine Processor?

The Installation Guide provides further information and links to documentation that describes how to install and use the IBM Full-System Simulator for Cell Broadband Engine Processor.


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.

Back to top Back to top
Download now Download now

Related technologies

For platform(s):
Linux

For topics:
analysis, Cell Broadband Engine Architecture (CBEA), Cell Broadband Engine SDK, debugging, modeling, optimization, performance, POWER, powerPC, scheduling, Simulation, trace


Related resources

Cell Broadband Engine Research topic

Maximizing the power of the Cell BE processor: 25 tips to optimal application performance

developerWorks Cell BE forum

 

    About IBM Privacy Contact