Graphite: A Distributed Parallel Simulator for Multicores

This paper introduces the open-source Graphite distributed parallel multicore simulator infrastructure. Graphite is designed from the ground up for exploration of future multicore processors containing dozens, hundreds, or even thousands of cores. It provides high performance for fast design space e...

ver descrição completa

Detalhes bibliográficos
Main Authors: Beckmann, Nathan, Eastep, Jonathan, Gruenwald, Charles, III, Kurian, George, Kasture, Harshad, Miller, Jason E., Celio, Christopher, Agarwal, Anant
Outros Autores: Anant Agarwal
Publicado em: 2009
Acesso em linha:http://hdl.handle.net/1721.1/49809
_version_ 1826192125253910528
author Beckmann, Nathan
Eastep, Jonathan
Gruenwald, Charles, III
Kurian, George
Kasture, Harshad
Miller, Jason E.
Celio, Christopher
Agarwal, Anant
author2 Anant Agarwal
author_facet Anant Agarwal
Beckmann, Nathan
Eastep, Jonathan
Gruenwald, Charles, III
Kurian, George
Kasture, Harshad
Miller, Jason E.
Celio, Christopher
Agarwal, Anant
author_sort Beckmann, Nathan
collection MIT
description This paper introduces the open-source Graphite distributed parallel multicore simulator infrastructure. Graphite is designed from the ground up for exploration of future multicore processors containing dozens, hundreds, or even thousands of cores. It provides high performance for fast design space exploration and software development for future processors. Several techniques are used to achieve this performance including: direct execution, multi-machine distribution, analytical modeling, and lax synchronization. Graphite is capable of accelerating simulations by leveraging several machines. It can distribute simulation of an off-the-shelf threaded application across a cluster of commodity Linux machines with no modification to the source code. It does this by providing a single, shared address space and consistent single-process image across machines. Graphite is designed to be a simulation framework, allowing different component models to be easily replaced to either model different architectures or tradeoff accuracy for performance. We evaluate Graphite from a number of perspectives and demonstrate that it can simulate target architectures containing over 1000 cores on ten 8-core servers. Performance scales well as more machines are added with near linear speedup in many cases. Simulation slowdown is as low as 41x versus native execution for some applications. The Graphite infrastructure and existing models will be released as open-source software to allow the community to simulate their own architectures and extend and improve the framework.
first_indexed 2024-09-23T09:06:39Z
id mit-1721.1/49809
institution Massachusetts Institute of Technology
last_indexed 2024-09-23T09:06:39Z
publishDate 2009
record_format dspace
spelling mit-1721.1/498092019-04-10T20:48:51Z Graphite: A Distributed Parallel Simulator for Multicores Beckmann, Nathan Eastep, Jonathan Gruenwald, Charles, III Kurian, George Kasture, Harshad Miller, Jason E. Celio, Christopher Agarwal, Anant Anant Agarwal Computer Architecture This paper introduces the open-source Graphite distributed parallel multicore simulator infrastructure. Graphite is designed from the ground up for exploration of future multicore processors containing dozens, hundreds, or even thousands of cores. It provides high performance for fast design space exploration and software development for future processors. Several techniques are used to achieve this performance including: direct execution, multi-machine distribution, analytical modeling, and lax synchronization. Graphite is capable of accelerating simulations by leveraging several machines. It can distribute simulation of an off-the-shelf threaded application across a cluster of commodity Linux machines with no modification to the source code. It does this by providing a single, shared address space and consistent single-process image across machines. Graphite is designed to be a simulation framework, allowing different component models to be easily replaced to either model different architectures or tradeoff accuracy for performance. We evaluate Graphite from a number of perspectives and demonstrate that it can simulate target architectures containing over 1000 cores on ten 8-core servers. Performance scales well as more machines are added with near linear speedup in many cases. Simulation slowdown is as low as 41x versus native execution for some applications. The Graphite infrastructure and existing models will be released as open-source software to allow the community to simulate their own architectures and extend and improve the framework. 2009-11-10T18:15:03Z 2009-11-10T18:15:03Z 2009-11-09 http://hdl.handle.net/1721.1/49809 MIT-CSAIL-TR-2009-056 17 p. application/pdf
spellingShingle Beckmann, Nathan
Eastep, Jonathan
Gruenwald, Charles, III
Kurian, George
Kasture, Harshad
Miller, Jason E.
Celio, Christopher
Agarwal, Anant
Graphite: A Distributed Parallel Simulator for Multicores
title Graphite: A Distributed Parallel Simulator for Multicores
title_full Graphite: A Distributed Parallel Simulator for Multicores
title_fullStr Graphite: A Distributed Parallel Simulator for Multicores
title_full_unstemmed Graphite: A Distributed Parallel Simulator for Multicores
title_short Graphite: A Distributed Parallel Simulator for Multicores
title_sort graphite a distributed parallel simulator for multicores
url http://hdl.handle.net/1721.1/49809
work_keys_str_mv AT beckmannnathan graphiteadistributedparallelsimulatorformulticores
AT eastepjonathan graphiteadistributedparallelsimulatorformulticores
AT gruenwaldcharlesiii graphiteadistributedparallelsimulatorformulticores
AT kuriangeorge graphiteadistributedparallelsimulatorformulticores
AT kastureharshad graphiteadistributedparallelsimulatorformulticores
AT millerjasone graphiteadistributedparallelsimulatorformulticores
AT celiochristopher graphiteadistributedparallelsimulatorformulticores
AT agarwalanant graphiteadistributedparallelsimulatorformulticores