>From the provided information you are using 150k cycles and interval 50k cycles
(if the information is listed in the command that you are using in timing
simulation
for your workload)
For example:
array set flexus_commands_timing {
common {
flexus.set "-magic-break:stop_cycle" "150000"
flexus.set-region-interval "50000"
instruction-fetch-mode instruction-fetch-trace
console_tracker.add-break-string "bash"
}
}
rungen timing {
{ oracle_16cpu_16cl baseline 0-3:5-24
$flexus_commands_timing(common) }
}
In the stats.out you should have something like that:
reduce-SelectedRegions Region (002)
Check whether all the flexpoints were executed properly. Give a look in the
error and outpout files of each flexpoint and also the condor log to see if the
flexpoint was sent properly. It seems that only 8 flexpoints were executed.
Regarding the Busy cycles, they are equal to sys-cycles and it makes sense
because you didn't spend any time in system (System Accounted cycles = 0).
Regards,
-Stavros
________________________________
From: Mahmood Naderan [[email protected]]
Sent: Tuesday, August 03, 2010 8:01 PM
To: simflex
Subject: Re: total execution cycles in "print sum"
> how many regions do you have in these stats?
Config/OoO/postload.simics:
flexus.set-stat-interval "50000"
flexus.set-region-interval "50000"
>Secondly, the sys-cycles should be equal to flexpoints x
>Cycles_for_each_flexpoint.
sys-cycles 400000
Config/flexpoint/start.simics:
flexus.set-stop-cycle "25000000"
> How many cycles do you simulate in timing simulation for each flexpoint?
flexus.set-stop-cycle "150001"
>The most common is to use 100k for warm up and 50k for the final stats (region
>002).
No idea.... What are the names?
> Secondly, you shoud better use the sum of the System:AccountedCycles and
> the User:AccountedCycles. Their sum is equal to Flexpoints x Cores x
> Cycles_of_regions.
sys-uarch-TB:User:AccountedCycles 399997
sys-uarch-TB:System:AccountedCycles 0
So their sum is not equal to what you mentioned.
>For example for 16 cores, 10 flexpoints, 50k for each region you
>should have total 8M cycles while for the sys-cycles 500k
Here I use only 1 core (or better say, I didn't change anything and I use
defaults) to see what is happening. I also have 18 flexpoints and 50k for each
region. so 1*18*50k = 900,000
>Also, I suppose that you are interested in UIPC and not the IPC of
>kernel instructions, so the uarch-TB:User:Commits:Busy is the one that you
>should use.
I am interested in UIPC, but for me sys-uarch-TB:User:Commits:Busy
506601
Regards,
// Naderan *Mahmood;
________________________________
From: Volos Stavros <[email protected]>
To: Mahmood Naderan <[email protected]>; simflex <[email protected]>
Sent: Tue, August 3, 2010 9:37:27 PM
Subject: RE: total execution cycles in "print sum"
Hi,
First of all, how many regions do you have in these stats? Secondly, the
sys-cycles
should be equal to flexpoints x Cycles_for_each_flexpoint. How many cycles do
you
simulate in timing simulation for each flexpoint? The most common is to use 100k
for warm up and 50k for the final stats (region 002). Secondly, you shoud
better use the
sum of the System:AccountedCycles and the User:AccountedCycles. Their sum is
equal
to Flexpoints x Cores x Cycles_of_regions. For example for 16 cores, 10
flexpoints, 50k
for each region you should have total 8M cycles while for the sys-cycles 500k.
In sum
all results are for all cores so you should devide with 8M instead of 500k.
Also, I suppose
that you are interested in UIPC and not the IPC of kernel instructions, so the
uarch-TB:User:Commits:Busy is the one that you should use.
Regards,
-Stavros
________________________________
From: Mahmood Naderan [[email protected]]
Sent: Tuesday, August 03, 2010 4:45 PM
To: simflex
Subject: total execution cycles in "print sum"
Hi,
According to the manual, IPC can be calculated by this expression:
{sys-uarch-Commits}/{sys-cycles}
I have these numbers for them:
sys-uarch-Commits 506601
sys-cycles 400000
But I don't think sys-cycles is true because I have 17 flexpoints and each has
25M cycles.
Is sys-cycles different from the total execution cycles we get from workload?
// Naderan *Mahmood;