Platform Support Packages (PSPs)

The basic Prism product has been designed to be platform and architecture independent.

This allows Prism to be rapidly deployed onto new architectures and multicore platforms. A Platform Support Package (PSP) is a plug-in extension to Prism that provides a specific personality for Prism to allow it to support a particular instruction set or platform. Platforms represent the combination of:

Individual PSPs may also contribute new features or views to Prism, typically motivated by aspects of a particular programming API for a platform or capabilities provided by the system modeling utilized in the PSP.

Platform Support Packages

The PSP Levels

Instruction PSP

Instruction PSPs support a particular processor instruction set.. These PSPs are architecture specific, but typically not core or target system specific, allowing the use of a generic toolchain for the architecture. Instruction level PSPs are typically used by developers exploring the migration of software from sequential to parallel but who may not have selected a particular target device. Developers can easily move up from an Instruction PSP to a Core PSP or a System PSP for more detailed analysis when the specific target has been chosen.

Core PSP

Core PSPs support particular core architectures and introduce the concept of hardware awareness to improve the accuracy of the modeling that can be done inside Prism. As developers begin to investigate the architectural merits of different solutions, a Core PSP becomes a natural evolution. Typical hardware awareness features which may be found in Core PSPs are data cache miss impact analysis, hardware threading impact analysis, multicore tracing support and multicore trace extraction.

System PSP

System PSPs support a particular target device. They are typically used when the target hardware (chip, device or board) is fixed or has already been selected. System PSPs employ more comprehensive system level models or virtual platforms. This allows greater accuracy in the modelling of what-if scenarios and system level effects on parallel performance, such as detailed cache analysis or bus contention. System PSPs may also model particular hardware aspects of a platform, such as fixed hardware accelerators, and the software APIs used to control them. System PSPs typically contribute additional analysis views to Prism such as cache analysis.

Currently Available PSPs

The current PSPs available for Prism are listed in the chart below, although the list is constantly evolving. Please contact CriticalBlue for the latest plans or if you wish to investigate options for supporting a new architecture or target platform.

Click here to zoom image
Platform Support Packages