Meego Wiki
Views

ARM/N900/Performance

From MeeGo wiki
< ARM | N900
Revision as of 08:41, 8 June 2011 by Lamikr (Talk | contribs)
Jump to: navigation, search

Contents

DE Performance page

Problems

  • Startup time of applications
  • Startup time of the device
  • Right after the homescreen has loaded, after the first boot, device is unusable for a while
  • Memory use
  • Slow I/O performance 2-20x slower than Maemo5 on N900
  • UI scrolling freezes for 1-2s from time to time

Benchmark results

  • Results from Q/A http://wiki.meego.com/ARM/N900/QA/Performance
  • Different class SD card benchmarking
    • SDcard benchmarking 060611.jpg
    • Used image 05-30.1 acceptance image
    • With class 10 card image worked really unstable. Measurements were got after several tries.
    • Current class10 measurements are not comparable but give somekind of direction
  • SunSpider (JavaScript performance
    • 6.1s with GPE MiniBrowser (image DE.2011-05-30 acceptance)
    • 6.8s with Fennec (image DE.2011-05-30 acceptance)
    • These are actually pretty good results. Indicates that raw CPU perfomance is ok.
  • widgetsgallery -timedemo -log-fps
Page name                    StaticPageBenchmark (0)  PanningBenchmark (0)  RotationBenchmark (90)  StaticPageBenchmark (90)  PanningBenchmark (90)  RotationBenchmark (0)  
ApplicationMenu                 48fps | 2988ms                 n/a | n/a             25fps |  557ms          53fps | 2984ms                   n/a | n/a             29fps |  578ms      
DisplayModes                    55fps | 2989ms           54fps |  421ms        40fps |  574ms          53fps | 2983ms                   n/a | n/a             47fps |  546ms      
ToolBar                         51fps | 2972ms           41fps |  503ms        34fps |  602ms          55fps | 2998ms            46fps |  298ms         20fps |  250ms      
CustomNavigationBar             53fps | 2989ms                 n/a | n/a             46fps |  579ms          54fps | 2980ms                   n/a | n/a             52fps |  572ms      
Label                           50fps | 3157ms           45fps |   87ms               n/a | n/a              54fps | 2989ms                   n/a | n/a             40fps |  573ms      
Image                           55fps | 2996ms           55fps |  379ms               n/a | n/a              52fps | 2989ms            54fps |  129ms          7fps |  139ms       
ProgressBar                     49fps | 2981ms                 n/a | n/a             34fps |  644ms          54fps | 2973ms                   n/a | n/a             36fps |  627ms      
Spinner                         52fps | 2989ms                 n/a | n/a                    n/a | n/a              53fps | 2989ms                   n/a | n/a             27fps |  436ms       
PushButton                      48fps | 2982ms           45fps | 3427ms        28fps |  671ms          47fps | 2985ms            44fps | 4521ms                n/a | n/a          
IconButton                      52fps | 2991ms                 n/a | n/a             35fps |  674ms          54fps | 2989ms                   n/a | n/a             38fps |  621ms      
Switch                          54fps | 2989ms                 n/a | n/a             31fps |  694ms          54fps | 2991ms                   n/a | n/a             28fps |  657ms      
Checkbox                        52fps | 2989ms                 n/a | n/a             30fps |  780ms          54fps | 2997ms                   n/a | n/a             38fps |  649ms      
ButtonGroup                     53fps | 3005ms           27fps |  323ms               n/a | n/a              50fps | 2988ms            52fps |  491ms                n/a | n/a          
SingleSelectionDialogsPage      56fps | 2998ms           46fps |  345ms               n/a | n/a              53fps | 3004ms                   n/a | n/a             42fps |  654ms      
QueryDialogsPage                50fps | 2997ms                 n/a | n/a             35fps |  696ms          53fps | 2987ms                   n/a | n/a             36fps |  655ms      
SheetsPage                      54fps | 2988ms           59fps |  151ms               n/a | n/a              55fps | 2982ms                   n/a | n/a             40fps |  666ms      
BannersPage                     51fps | 2996ms                 n/a | n/a             37fps |  740ms          54fps | 3000ms                   n/a | n/a             38fps |  671ms      
NotificationsPage               54fps | 2994ms                 n/a | n/a             35fps |  733ms          55fps | 3000ms                   n/a | n/a             39fps |  678ms      
List                            54fps | 2989ms           53fps |20539ms         2fps |  485ms          56fps | 2973ms            51fps |19630ms                n/a | n/a          
Grid                            16fps | 2961ms           48fps | 2777ms        16fps | 1016ms          42fps | 3147ms            48fps | 3252ms                n/a | n/a          
ObjectMenu                      44fps | 2988ms           52fps |  248ms               n/a | n/a              54fps | 2991ms            55fps |  181ms                n/a | n/a          
ComboBox                        52fps | 2946ms                 n/a | n/a             25fps |  856ms          53fps | 2984ms                   n/a | n/a             30fps |  784ms      
ContentItems                    55fps | 2987ms           39fps | 4197ms               n/a | n/a              54fps | 2988ms            29fps | 3483ms          7fps |  407ms      
SpeechBubble                    52fps | 2986ms           47fps | 3842ms               n/a | n/a              51fps | 2989ms            29fps | 3906ms                n/a | n/a          
TextEntry                       54fps | 2988ms           43fps | 3209ms               n/a | n/a              52fps | 2988ms            35fps | 2541ms                n/a | n/a          
TextEntryNavigation             53fps | 2989ms                 n/a | n/a             18fps |  912ms          50fps | 2982ms                   n/a | n/a             22fps |  794ms      
TextEntryAttributeExtension     54fps | 2988ms           41fps |  192ms               n/a | n/a              53fps | 2988ms                   n/a | n/a             19fps |  860ms      
Slider                          54fps | 2997ms           37fps |  404ms               n/a | n/a              53fps | 2989ms                   n/a | n/a             18fps |  865ms      
InputFeedback                   52fps | 2988ms           55fps |   90ms        19fps |  902ms          40fps | 2988ms            43fps |   69ms                n/a | n/a          
Information Display             53fps | 3001ms           26fps |  188ms        24fps |  930ms          54fps | 2999ms                   n/a | n/a             28fps |  857ms      
Take a screenshot               49fps | 3217ms                 n/a | n/a             23fps | 1028ms          55fps | 2978ms                   n/a | n/a             26fps |  893ms
    • Conclusion: Graphis performance seems to be ok

Improvement ideas

  • optimizing MTF packages, there might be some configuration options, etc.?
  • ramzswap trial
  • CGROUPS optimization, most likely still not done
  • eMMC performance investigation, maemo is 2-20x faster? see bug #18295
  • last resort type of thing: taking NAND to use as swap (and destroying maemo installation)
  • adjust stack sizes
  • lower GLES ParamBuffer size
  • Remove unused applifed processes.
  • Merge meego-volume-control to systemui
  • cache some often used data in NAND and symlink there
  • tracker configuration
  • test overclock with known testing (from qa-tools guys perhaps)
  • real microsdhc tests based on class speed rating
    • actually answer specific questions about how write/read speed effect perf
      • app startup times
      • general usage
      • media write times
      • cataloguing media
  • Swap on memory card (probably will not help if the os is on the card also, otherwise might)
  • Reduce the list of autostarted apps.

TODO list

  • Profile startup of simple MTF, QML, and Qt apps
  • Profile memory use of simple MTF, QML, and Qt apps
  • Investigate configuration options for MTF
  • Investigate configuration options for Qt
  • Investigate configuration options for QML
  • Update MTF (libmeegotouch, mcompositor, home, system ui, etc. ) to get latest optimizations from upstream
  • Update Qt

Issues being worked on

Tools

Personal tools