#9694 NORM 1.5-fir: Openchrome lies about memory speed

Zarro Boogs per Child bugtracker at laptop.org
Tue Nov 24 16:08:53 EST 2009


#9694: Openchrome lies about memory speed
-------------------------------------------+--------------------------------
           Reporter:  wmb at firmworks.com    |       Owner:  wmb at firmworks.com   
               Type:  defect               |      Status:  assigned            
           Priority:  normal               |   Milestone:  1.5-firmware        
          Component:  ofw - open firmware  |     Version:  Development firmware
         Resolution:                       |    Keywords:                      
        Next_action:  code                 |    Verified:  0                   
Deployment_affected:                       |   Blockedby:                      
           Blocking:                       |  
-------------------------------------------+--------------------------------
Changes (by wmb at firmworks.com):

  * next_action:  reproduce => code


Comment:

 William Wan of Via suggested an easy way to prove the hypothesis -

 I booted os44 under OFW and observed the "slow" reported speeds.

 I then used sdkit to force the CPU to run slower, restarted X, and
 observed the (false) "fast" reported speeds.


 {{{
 # grep -C 5 libc /var/log/Xorg.0.log
 (**) Option "dpms" "off"
 (II) CHROME(0): - DPMS set up
 (II) CHROME(0): - Color maps etc. set up
 (II) CHROME(0): direct rendering disabled
 (II) CHROME(0): Benchmarking video copy.  Less time is better.
 (--) CHROME(0): Timed   libc YUV420 copy... 1483168. Throughput: 399.0
 MiB/s.
 (--) CHROME(0): Timed kernel YUV420 copy... 1423202. Throughput: 415.8
 MiB/s.
 (--) CHROME(0): Timed    SSE YUV420 copy... 906617. Throughput: 652.7
 MiB/s.
 (--) CHROME(0): Timed    MMX YUV420 copy... 1408242. Throughput: 420.2
 MiB/s.
 (--) CHROME(0): Ditching 3DNow! YUV420 copy. Not supported by CPU.
 (--) CHROME(0): Timed   MMX2 YUV420 copy... 971875. Throughput: 608.9
 MiB/s.
 # /root/sdkit/sd
 ok hex 199 .msr
 00000000.00000a06.     <--- a is decimal 10, meaning 1000 MHz
 ok hex 406. 199 msr!  \ set multiplier to 4, for 400 MHz
 ok bye
 # killall X
 # grep -C 5 libc /var/log/Xorg.0.log
 (**) Option "dpms" "off"
 (II) CHROME(0): - DPMS set up
 (II) CHROME(0): - Color maps etc. set up
 (II) CHROME(0): direct rendering disabled
 (II) CHROME(0): Benchmarking video copy.  Less time is better.
 (--) CHROME(0): Timed   libc YUV420 copy... 901527. Throughput: 656.4
 MiB/s.
 (--) CHROME(0): Timed kernel YUV420 copy... 862508. Throughput: 686.1
 MiB/s.
 (--) CHROME(0): Timed    SSE YUV420 copy... 519908. Throughput: 1138.3
 MiB/s.
 (--) CHROME(0): Timed    MMX YUV420 copy... 809993. Throughput: 730.6
 MiB/s.
 (--) CHROME(0): Ditching 3DNow! YUV420 copy. Not supported by CPU.
 (--) CHROME(0): Timed   MMX2 YUV420 copy... 547066. Throughput: 1081.7
 MiB/s.
 }}}

 Q.E.D.

-- 
Ticket URL: <http://dev.laptop.org/ticket/9694#comment:5>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list