Hi,

----- Original Message -----
From: Bill Holler <[email protected]>
Date: Wednesday, July 23, 2008 1:25 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


> Do these samples include times when the processor is halted
> in the idle loop?

No, the processor is in C0 (if that is what you asked), the thread I am 
sampling does a sleep.

-Vinay

> 
> Bill
> 
> 
> 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. 
> >
> > 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
> >   
> 
> _______________________________________________
> tesla-dev mailing list
> tesla-dev at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/tesla-dev

Reply via email to