TPEPerformance: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 81: Line 81:
** Ion/baseline codes, bytecode, script-source, type, shape, etc.
** Ion/baseline codes, bytecode, script-source, type, shape, etc.
* Evaluate the code generator for ARM in IonMonkey.
* Evaluate the code generator for ARM in IonMonkey.
== Finished ==
* Memory
** Reduce CSP cache memory usage.
*** {{bug|897741}} Don't put gigantic data URIs in the CSP cache. (8/20)

Revision as of 10:09, 28 November 2013

This page is for tracking tasks of the performance team at Mozilla Taipei Office.

Working On

  • Memory
  • IPC
    • Bug 915733 - Linux/or POSIX aio instead of IO thread
    • shmem for big data chunks
  • Media
    • Unified buffering
  • Launch time of Apps
    • Preload JS code with Nuwa
    • Precompile JS code with the baseline compiler
    • Profiling
  • Animations
  • Task Tracer
  • App session resuming
    • like hibernate
    • load an App from storage and restore to the states of last killed.
  • XHR Batch Queue API
    • https://wiki.mozilla.org/WebAPI/XHRBatch
    • Submit a XHR to a queue on the device, the platform will handle the XHR until it is completed
    • Notify the App while all XHR on the queue is completed
    • The app can check its own queue
    • The app can be killed, or being stopped by the user, while XHR is still running.
    • The platform will wake up the app while the queue is completed an the app is not running.
  • Stability Issues
    • Bug 926734 - [Flatfish][Profiling]: When starting up Gecko profiling tool, system got hang.
    • Bug 922548 - [Flatfish][Profiling]: Fails to analysis the parsed file for Gecko Profiling tool.
    • Bug 940851 - Gecko IPC hangs during boot on jb-gonk.
    • Bug 808080 - IPC parent aborts due to too large allocation for infallible array in PContent::Msg_AsyncMessage.
    • Bug 807738 - IPC parent aborts with malformed PHttpChannel::Msg_AsyncOpen.
    • Bug 781594 - ABORT: not reached: ipc/ipdl/PLayers.cpp, line 4069.

Ideas

  • Track JSObjects that fallback to dictionary mode
    • Time spent(impaction) on objects of dictionary mode
    • For games
  • command queue for SVG frames
  • Compare loading time for loading from scratch and from dumped image.
  • Establish a benchmark to measure memory usage. Refer to AWSY.
  • Check how to share data among iframes/tabs from same sources.
    • Ion/baseline codes, bytecode, script-source, type, shape, etc.
  • Evaluate the code generator for ARM in IonMonkey.