Limes
Limes is a tool for simulation of multiprocessors. It runs on a PC with an i486 or higher CPU, on the Linux operating system (hence the name: Linux Memory Simulator). Limes creates an illusion of N somehow connected processors executing a parallel application, on a single-processor machine. Threads of the parallel application executing on these virtual processors are manipulated in such way that the result of their work is as it would be if they were executed on a real multiprocessor system (this approach is frequently called "execution-driven simulation"). Applications that can be executed are regular C/C++ programs that use certain (ANL) macros for expressing parallelism, which makes them portable to real multiprocessor machines. Existing applications (like those from the SPLASH-2 suite) do not require source code modifications in order to be compiled and run under Limes. The tool can be used for either performance evaluation of multiprocessor architectures (by coding a description of the actual hardware in C or C++ that will be driven by realistic workload), or parallel algorithms evaluation, or both. The package also includes a few detailed examples of snoopy cache-coherent multiprocessor systems, and Java-like multithreading and synchronization for C++.
|
Current Version: 1.01
License Type: GPL
|
Home Site:
Source Code Availability: Yes
Available Binary Packages:
Targeted Platforms: Software/Hardware Requirements:
|
Other Links:
Mailing Lists/USENET News Groups: User Comments:
See A Screen Shot? (Not Yet)
|