Hello Teng,
Here is what I found in Mcpat's README file. Maybe you have already read it
but I'd like to discuss about it. Generally we are using homogeneous
processor setup, but since different cores have different stats, I think
you are right to have different instantiations for each core.
FYI, you can take a look at XML_parse.cc file in McPAT to figure out what
the problem is. There are two reasons that may possibly result in your
problem:
1. if you have different instantiations for each core, it fits in the
heterogeneous processor setup as shown in the README file, therefore you
can try set the value of 'homogeneous_cores" to "0";
2. You duplicated core1 from core0, but you didn't do the same for
L1Directory.
I have also recently looked into this. Please let me know if it works!
The XML is hierarchical from processor level to micro-architecture
level. McPAT support both heterogeneous and homogeneous manycore
processors.
1). For heterogeneous processor setup, each component (core,
NoC, cache,
and etc) must have its own instantiations (core0, core1, ...,
coreN).
Each instantiation will have different parameters as well as its
stats.
Thus, the XML file must have multiple "instantiation" of each
type of
heterogeneous components and the corresponding hetero flags must
be set
in the XML file. Then state in the XML should be the stats of
"a" instantiation
(e.g. "a" cores). The reported runtime dynamic is of a single
instantiation
(e.g. "a" cores). Since the stats for each (e.g. "a" cores) may
be different,
we will see a whole list of (e.g. "a" cores) with different
dynamic power,
and total power is just a sum of them.
2). For homogeneous processors, the same method for
heterogeneous can
also be used by treating all homogeneous instantiations as
heterogeneous.
However, a preferred approach is to use a single representative
for all
the same components (e.g. core0 to represent all cores) and set
the
processor to have homogeneous components (e.g. <param
name="homogeneous_cores
" value="1"/> ). Thus, the XML file only has one instantiation
to represent
all others with the same architectural parameters. The
corresponding homo
flags must be set in the XML file. Then, the stats in the XML
should be
the aggregated stats of the sum of all instantiations (e.g.
aggregated stats
of all cores). In the final results, McPAT will only report a
single
instantiation of each type of component, and the reported
runtime dynamic power
is the sum of all instantiations of the same type. This approach
can run fast
and use much less memory.
On Wed, Aug 7, 2013 at 7:54 PM, Teng Lu <[email protected]> wrote:
> Hi Fulya,
>
> I didn't modify the Perl script. I only modified the template. I think the
> Perl script will straightly follow the format of template to create an
> output.xml. When you modify the template, make sure that you also change
> the number of cores. I think it would generate the xml file.
>
> As for switching cpus, I think it doesn't matter since the Perl script is
> unaware of how you get the stat.txt as long as it could find all the
> reqired fields. I hope I understood your question correctly.
>
> Thanks,
> Teng
>
> ------------------------------
> From: [email protected]
> Date: Wed, 7 Aug 2013 19:33:34 -0400
> To: [email protected]
> Subject: Re: [gem5-users] McPAT template XML for multi-core system
>
>
> Hi Teng,
> I ran into the same error, I still dont know what the problem is. It could
> be that the mcpat parser we have is for an older version. I was not even
> able to generate the xml file. Could you also post the modified pearl
> script you have for multicore system.
> I also have question, does it work with switch cpus? I am restoring from a
> checkpoint and switching cpus.
>
> Best,
> Fulya Kaplan
>
> On Aug 7, 2013, at 7:20 PM, Teng Lu <[email protected]> wrote:
>
> Hi,
>
> I am trying to use the Perl script to take the gem5 output and create the
> input file for McPAT, following the instructions in
> https://www.cl.cam.ac.uk/~acr31/sicsa/ . The template provided in the web
> page is for single core system but I want to simulate a multi-core system.
> Is there a template for multi-core system? Or do I need to change the
> template myself? Or change the Perl script to generate output.xml for
> multi-core system automatically?
>
> I have attached a copy of template modified by myself, in which I
> duplicate the content under "cores". I can generate the output.xml
> successfully but when I input it into McPAT, there seems to be some layout
> problem and I got the following error message:
>
> The value of homogeneous_L1Directories or number_of_L1Directories is not
> correct!
>
>
> I was wondering if anyone has suggestions about how can I generate the
> input file of a multi-core system for McPAT from the gem5 output? Thanks a
> lot!
>
> Best,
> Teng
>
> <mcpat-template-multicore.xml>
>
> <output.xml>
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
>
> _______________________________________________ gem5-users mailing list
> [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users