gem5-users@gem5.org

The gem5 Users mailing list

View all threads

How to implement NUMA system in gem5

NA
narges akbari
Tue, Jan 2, 2018 7:17 AM

Hello

I'm currently working on a cache coherency issue, Especially the section
Directory protocol.
and I want implement a ccNUMA system with directory slices protocol. now
may question is, are there any source code for NUMA system in gem5?
or I have to write it's code from the base.
and if there are code for it, how can I use those? and which folder have
such file?

I appreciate your kindness

narges akbari

Hello I'm currently working on a cache coherency issue, Especially the section Directory protocol. and I want implement a ccNUMA system with directory slices protocol. now may question is, are there any source code for NUMA system in gem5? or I have to write it's code from the base. and if there are code for it, how can I use those? and which folder have such file? I appreciate your kindness narges akbari
JL
Jason Lowe-Power
Tue, Jan 2, 2018 6:54 PM

Hello,

You probably want to look at some of the Ruby coherence protocols.
Specifically, MOESI_CMP_directory implements a directory protocol for "chip
multiprocessors" which is likely a NUMA system with multiple chips. Most of
the Ruby protocols are directory-based, and you should be able to configure
the network to have different latencies to different directories, making it
a NUMA system.

You may also find the section on Ruby in Learning gem5 helpful:
http://learning.gem5.org/book/part3/. I presented this material at the ARM
research summit a few months ago, and the video is available here:
https://youtu.be/8GsD5M2TKjk?t=5458.

Cheers,
Jason


Jason Lowe-Power
Assistant Professor, Computer Science Department
University of California, Davis
3049 Kemper Hall
jlowepower(a)ucdavis.edu

On Mon, Jan 1, 2018 at 11:17 PM narges akbari <n.akbari.arch(a)gmail.com>
wrote:

Hello

I'm currently working on a cache coherency issue, Especially the section
Directory protocol.
and I want implement a ccNUMA system with directory slices protocol. now
may question is, are there any source code for NUMA system in gem5?
or I have to write it's code from the base.
and if there are code for it, how can I use those? and which folder have
such file?

I appreciate your kindness

narges akbari


gem5-users mailing list
gem5-users(a)gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Hello, You probably want to look at some of the Ruby coherence protocols. Specifically, MOESI_CMP_directory implements a directory protocol for "chip multiprocessors" which is likely a NUMA system with multiple chips. Most of the Ruby protocols are directory-based, and you should be able to configure the network to have different latencies to different directories, making it a NUMA system. You may also find the section on Ruby in Learning gem5 helpful: http://learning.gem5.org/book/part3/. I presented this material at the ARM research summit a few months ago, and the video is available here: https://youtu.be/8GsD5M2TKjk?t=5458. Cheers, Jason ----------- Jason Lowe-Power Assistant Professor, Computer Science Department University of California, Davis 3049 Kemper Hall jlowepower(a)ucdavis.edu On Mon, Jan 1, 2018 at 11:17 PM narges akbari <n.akbari.arch(a)gmail.com> wrote: > Hello > > I'm currently working on a cache coherency issue, Especially the section > Directory protocol. > and I want implement a ccNUMA system with directory slices protocol. now > may question is, are there any source code for NUMA system in gem5? > or I have to write it's code from the base. > and if there are code for it, how can I use those? and which folder have > such file? > > I appreciate your kindness > > narges akbari > _______________________________________________ > gem5-users mailing list > gem5-users(a)gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users