Hello,
I am trying to do something similar where each core has it's own clock,
To do this I'm creating a ClockDomain per core in the fs.py script.
Looking like:
test_sys.cpu_clk_domain = SrcClockDomain(clock = "2GHz",
voltage_domain =
test_sys.cpu_voltage_domain)
test_sys.cpu_slow_clk_domain = SrcClockDomain(clock = "1GHz",
voltage_domain =
test_sys.cpu_voltage_domain)
Then I manually instantiate the cpus as it follows:
test_sys.cpu = [TestCPUClass(clk_domain=test_sys.cpu_clk_domain, cpu_id=0),
TestCPUClass(clk_domain=test_sys.cpu_slow_clk_domain, cpu_id=1)]
This way you will get an independent clock domain for each core and its
associated caches,
if you change it's value with your DFS implementation I think it may work.
However I have been trying to boot cpus with different clock values in FS mode,
and with the timing cpu I get TSC related errors and the simulation stalls
after a bit. doing a cat /proc/cpuinfo shows the same cpu freq for all the
cores. If anyone has an insight on this I will be very grateful.
--Emilio
________________________________
De: [email protected] [[email protected]] en nombre de Amin
Farmahini [[email protected]]
Enviado: miƩrcoles, 05 de febrero de 2014 7:45
Para: gem5 users mailing list
Asunto: Re: [gem5-users] Per core DFS implementation
Hi Srini,
You could have a separate clock domain for each core and each clock domain has
its own clock period. Take a look at src/sim/clocked_object.hh .
And I am no expert, so hopefully experienced users could provide more detailed
info.
Thanks,
Amin
On Wed, Feb 5, 2014 at 12:23 AM, Srinivasan Narayanamoorthy
<[email protected]<mailto:[email protected]>> wrote:
Hi,This is Srini. I have implemented a system level DFS in gem5 and it seems to
be working. Now I am trying to implement per-core DFS in gem5. With the current
class hierarchy, clockedObject is the parent of the cpu classes and there is
just one _clockPeriod member. Thus all cpu's update the same _clockPeriod
member and the clocks to the cpu change with every core updating it. It would
be really nice if some one can give any suggestions on how to do per-core dfs.
I am using a fairly recent revision of gem5. When I checked some older
versions(2012) I saw that the clock period variable was part of the cpu class
and hence per-core dfs would have been straightforward. Please bear with me if
I am naive.
Thanks
Srini
_______________________________________________
gem5-users mailing list
[email protected]<mailto:[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