Li, Aubrey wrote: > The following webrev added turbo mode observability support of the kernel > part. > http://cr.opensolaris.org/~aubrey/turbo-kernel-part/ > It is against [rev #8756] of pad-gate. > > I almost re-write Vinay's patch, instead of implementing the ioctl() of > cpudrv, I think > kstat for observability is better. > > Before I start the powertop part of turbo mode observability support, I > really appreciate > your any comments and suggestions. > > Thanks, > -Aubrey > > Experiment as follows: > =================== > 1) after my system boots: > ----------------------------------------------------------- > aubrey at aubrey-power:~$ kstat -m speedstep -i 7 > module: speedstep instance: 7 > name: turbo class: misc > crtime 42.052402205 > snaptime 80.926871283 > turbo acnt 6172692478 > turbo mcnt 6246417685 > turbo support 1 > ---------------------------------------------------------- > Here, we know turbo mode is supported. > mcnt: increments in proportion to a fixed frequency when in P0 > acnt: increments in proportion to actual performance when in P0. > > 2) now bind a while(1) process to processor 7. > ------------------------------------------------------------ > aubrey at aubrey-power:~$ pfexec pbind -b 7 480 > process id 480: was not bound, now 7 > ------------------------------------------------------------ > > 3) let while(1) run for several minutes > > 4) check turbo info again > ------------------------------------------------------------ > aubrey at aubrey-power:~$ kstat -m speedstep -i 7 > module: speedstep instance: 7 > name: turbo class: misc > crtime 42.052402205 > snaptime 540.775843325 > turbo acnt 1108972992925 > turbo mcnt 1062698922865 > turbo support 1 > ------------------------------------------------------------ > It looks like turbo took effect. acnt/mcnt shows 4% performance boost.
Very nice, Aubrey. Much cleaner implementation. How about adding a kstat item for the actual performance boost? Rafael
