Hello,
I am working in gem5 for my final year project. I need to implement DVFS
approach to the garnet network to each of the routers in the network. But
as a first step i tried to implement DVFS to a topology first. I ve
included the code bit that i modified in the garnet_synth_traffic.py file,
to include dvfs. When i run the simulation in the config.ini file, i am
getting the output as dvfs=enabled. But when i try to read the power
Statistics using the on-chip-network-power-area.py file, i am getting an
error message. i am including the screenshot of the error message too. Can
someone please tel me how to correct this? Kindly help me.

THIS IS THE ERROR THAT I GET

python util/on-chip-network-power-area-2.0.py m5out/dvfs
Attempting compilation
-- Configuring done
-- Generating done
-- Build files have been written to:
/home/asusadmin/david_smelt/gem5/build/ext/dsent
[100%] Built target dsent
Compiled dsent
WARNING: configuration files for DSENT and McPAT are separate. Changes made
to one are not reflected in the other.
Traceback (most recent call last):
  File "util/on-chip-network-power-area-2.0.py", line 641, in <module>
    main()
  File "util/on-chip-network-power-area-2.0.py", line 638, in main
    ext_links, num_cpus)
  File "util/on-chip-network-power-area-2.0.py", line 585, in parseStats
    int_links, ext_links, num_cycles, num_cpus)
  File "util/on-chip-network-power-area-2.0.py", line 406, in
computeRouterPowerAndArea
    frequency = getClock(router, config)
  File "util/on-chip-network-power-area-2.0.py", line 181, in getClock
    return getClock(source, config)
  File "util/on-chip-network-power-area-2.0.py", line 168, in getClock
    clock = config.getint(obj, "clock")
  File "/usr/lib/python2.7/ConfigParser.py", line 359, in getint
    return self._get(section, int, option)
  File "/usr/lib/python2.7/ConfigParser.py", line 356, in _get
    return conv(self.get(section, option))
ValueError: invalid literal for int() with base 10: '1 1'



THIS IS THE MODIFICATION IN GARNET FILE

# Create a seperate clock domain for Ruby
system.ruby.voltage_domain = VoltageDomain(voltage = options.sys_voltage)
system.ruby.voltage_domain = VoltageDomain(voltage =
['1V','0.9V','0.8V','0.7V'])
system.ruby.clk_domain = SrcClockDomain(clock = options.ruby_clock,
                                        voltage_domain =
system.ruby.voltage_domain,
                                        domain_id = 0)
system.ruby.clk_domain.clock = ['1GHz','700MHz','400MHz','230MHz']
system.ruby.clk_domain.voltage_domain = system.ruby.voltage_domain
system.ruby.voltage_domain = VoltageDomain(voltage =
['1V','0.9V','0.8V','0.7V'])
system.ruby.clk_domain = SrcClockDomain(clock = options.ruby_clock,
                                        voltage_domain =
system.ruby.voltage_domain,
                                        domain_id = 1)
system.ruby.clk_domain.clock = ['1GHz','700MHz','400MHz','230MHz']
system.ruby.clk_domain.voltage_domain = system.ruby.voltage_domain
system.dvfs_handler.domains = system.ruby.clk_domain
system.dvfs_handler.enable = 1




Thank You
Karunya
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to