Vinay Devadas wrote:
> Actually, I don't think that's right. I think that the only time you would 
> see APERF/MPERF equal to 1, is if the CPU was at P0 and never 
> went idle.
>
> The whole experiment, CPU was in P0.
>   

And never executed halt, right?

>
>
> ----- Original Message -----
> From: Mark Haywood <Mark.Haywood at Sun.COM>
> Date: Wednesday, July 23, 2008 1:29 pm
> Subject: Re: [tesla-dev] Experiment Results on APERF/MPERF registers - Need 
> Clarification
> To: Vinay Devadas <Vinay.Devadas at Sun.COM>
> Cc: tesla-dev at opensolaris.org
>
>
>   
>> Vinay Devadas wrote:
>>     
>>> Hi,
>>>
>>> Here are the intial results I obtained for Turbo Mode using 
>>>       
>> APERF/MPERF, I need some clarification on the results.
>>     
>>> Remaining in P0, I sampled the ratio APERF and MPERF for different 
>>>       
>> interval lengths. The computer I ran these experiments on does not 
>> have Turbo Mode feature, so the clock is expected to be in P0 
>> throughout the experiment. I took 10 samples per interval length. I 
>> reset APERF/MPERF registers after every read.
>>     
>>> Interval Length = 1sec
>>> 1 ratio = 0.953074
>>> 2 ratio = 0.950529
>>> 3 ratio = 0.955870
>>> 4 ratio = 0.950900
>>> 5 ratio = 0.947259
>>> 6 ratio = 0.950799
>>> 7 ratio = 0.947093
>>> 8 ratio = 0.949705
>>> 9 ratio = 0.947057
>>> 10 ratio = 0.951851
>>>
>>> Interval Length = 10sec
>>> 1 ratio = 0.852206
>>> 2 ratio = 0.852150
>>> 3 ratio = 0.846130
>>> 4 ratio = 0.825831
>>> 5 ratio = 0.763463
>>> 6 ratio = 0.751499
>>> 7 ratio = 0.782461
>>> 8 ratio = 0.772478
>>> 9 ratio = 0.750490
>>> 10 ratio = 0.855870
>>>
>>> Ideally since we are in P0, I believe we expect the ratio = 
>>>       
>> APERF/MPERF to be 1 (correct me if I am wrong). When the interval is 
>> 1sec we see that the ratio is around 0.95, on the other hand when 
>> interval is 10sec, the ratio is around 0.85 and during some sampling 
>> it goes down to 0.75 as well. 
>>     
>>>   
>>>       
>> Actually, I don't think that's right. I think that the only time you 
>> would see APERF/MPERF equal to 1 is if the CPU was at P0 and never 
>> went 
>> idle.
>>     
>>> I understand the ratio cannot be one, as we have to execute 2 
>>>       
>> instructions to read both regs (APERF MPERF) and these two cannot 
>> occur concurently. So practically, the ratio should be close to one 
>> (when in P0). But, I see values like 0.85 and 0.75, is this normal ? 
>> and this happens when the interval is large (10sec) in my example.
>>     
>>> By the way, I am taking care to make the 2 reads happens as quickly 
>>>       
>> as possible,
>>     
>>> spl_high()
>>> rdmsr (APERF)
>>> rdmsr (MPERF)
>>> spl0()
>>>
>>> Please let me know of any suggestions/explanations possible.
>>>
>>> Thanks,
>>> Vinay
>>>
>>> _______________________________________________
>>> tesla-dev mailing list
>>> tesla-dev at opensolaris.org
>>> http://mail.opensolaris.org/mailman/listinfo/tesla-dev
>>>   
>>>       


Reply via email to