Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
TOPAZ is a general-purpose interconnection network simulator that allows the modeling a wide variety of message routers with different tradeoffs between speed and precision. TOPAZ comes from [SICOSYS](http://www.atc.unican.es/SICOSYS/) simulator, which was originally conceived to obtain results are very close to those obtained by using HDL description of networks components by hardware simulators but at lower computational cost. In order to make the tool easily comprehensible, extensible and reusable, the design of the tool is object-oriented and its implementation is in C++ language. For the models provided, approximately 110 classes, distributed in about 50,000 lines of code have been necessary. The simulator has support for parallel execution using standard POSIX threads. The portability is high: can be used in **any UNIX** platform with a C++ standard compiler.
The code is pretty standard, which supposedly makes the simulator compiler-agnostic. Nevertheless, it uses UNIX features, such as signal management and multithread , that prevents it to be used in Windows OS. It could be adapted with little effort but we haven't do it.
- gcc 3.4.xx
- gcc 4.3.xx
- 02/10/2012 Initial release publicly available (See here)
- 05/09/2012 Paper presented at NOCs
- 07/29/2012 Updated to latest GEM5 version
- 05/09/2012 Updated to latest ruby API changes in GEM5
- 04/16/2013 Uploaded LIGERO router. Fully connected crossbar performance with scalable low-cost network?
- 04/17/2013 Updated Topaz-GEM5 interface to support latest GEM5 stable version (Changeset 926e24224171)
- 10/11/2013 Updated Topaz-GEM5 interface to support latest GEM5 development version (Changeset ff839efdd92a)
- 09/03/2014 Updated Topaz-GEM5 interface to support latest GEM5 development version (Changeset 1e2f39859382)
- 12/17/2014 Updated Topaz-GEM5 interface to support latest GEM5 stable version (Changeset bdb307e8be54 in gem5-dev repo )
- Getting Started A quick guide to understad how to get the sources and compile the simulator.
- Simulator Configuration How to configure the simulator (A quick review of SGML configuration files, how to define Routers, Netwkorks, Simulations) and most common command line options
- Available Components A list of the components availables in the tip
- GEM5 Integration A small review of GEM5 integration and an introductory HOW-TO for using GEM5 with TOPAZ networks
In order to allow other users to interact, please submit your questions only to the topaz-discuss list .
If you use this tool in your research, please cite the following paper:
P.Abad, P.Prieto, L.Menezo, A.Colaso, V.Puente, J.A. Gregorio TOPAZ: An Open-Source Interconnection Network Simulator for Chip Multiprocessors and Supercomputers, NOCS 2012 (pdf)