SimpleScalar Simulator induction
Application overview
The SimpleScalar is a tool-set primarily used for hardware-software co-verification, and for building detailed microarchitectural modelling. Simulators built with SimpleScalar can emulate the Alpha, PISA, ARM, and x86 instruction sets. The framework builds on most 32-bit and 64-bit flavours of UNIX, Linux and Windows operating systems.
SimpleScalar is widely used for research, and it is distributed under an open source model. This enables users to extend SimpleScalar and to adapt existing models to their own needs. The SimpleScalar licensing model permits users to build onto the SimpleScalar foundation and make their enhancements available to licensed SimpleScalar users.

The Computer Architecture Research group at the University of Cyprus uses the tool set in order to create simulators for microarchitectural modelling and for studying instruction level parallelism. The users at the University of Cyprus have extended the SimpleScalar framework by adding the required functionality for different mechanisms they wish to simulate, and by introducing various input options to specify the values of the parameters of the key mechanism, in order to explore their effects on the performance of that mechanism.
Porting to the Grid
The SimpleScalar Simulator application was recently ported to the EGEE testbed in an effort to assess the use of the Grid as a tool in Computer Architecture research and to take advantage of the resources of the South East Europe Virtual Organization (SEE VO) of EGEE, which currently span across 14 sites and comprise approximately 200 CPUs. In order to obtain useful results within a reasonable timeframe for the experiments in building microarchitectural models, the Computer Architecture group needs to run a very large number of simulations using different benchmarks and parameters. This fact led to the formation of this collaboration, in an attempt to satisfy the very high demands for computing power, while at the same time utilize idle cluster cycles by sharing computing resources with a larger community.

For making the migration of the application to the EGEE testbed easier, a script was written in order to hide the middleware-specific details from the users of the SimpleScalar tool set. The script takes command line parameters that specify the benchmark executable and its arguments, as well as a few other arguments needed to run a simulation, and then uses this input to create a file using the Job Submission Language (JDL) syntax. The jdl file is automatically submitted and the job goes for execution to the EGEE testbed. The script then waits until the job has terminated by querying the Resource Broker, and then retrieves the output.
During the testing phase, the application has been run successfully on several EGEE sites across Europe . The production phase will be initiated soon, with more users from the Computer Architecture group joining into the project. The production phase experiments will be run exclusively on the EGEE sites of the South East Europe federation.
Contact: Professor Yanos Sazeides, yanos@cs.ucy.ac.cy
Computer Architecture Research, UCY




