wiki:GROUP_APP_PERFORMANCE_R0

Version 3 (modified by gogov, 16 years ago) (diff)

--

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=GROUP_APP_PERFORMANCE_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

Analysis

Overview

The goal of this task is to improve the performance of the Sophie2 platform before the release at 2009-05-15.

Task requirements

Since time is not enough for great optimizations which require good design and much refactoring but instead locate small inefficient chunks of code and optimize them.

Such cases might include:

  • modification of the launch settings of Author, Reader and Server
  • memoization of often performed queries
  • complexity optimizations of often executed code such as:
    • hashing instead of iterating
    • precomputing some results if possible
    • etc...
  • usage of more efficient data structures at certain classes if possible and not much time needed to refactor

Also some logging logic should be inculded which measures startup time so optimizations are with visible effect.

Task result

  • visible performance optimization
  • code for startup time measurement
  • explanations of the optimizations in the wiki

Implementation idea

  • tweak profiler settings for the launch configurations
  • refactor main() method of FakeAuthorMain to measure time
  • use a profiler to locate non-efficient chunks of code and optimize them

How to demo

  • demo performance optimization

Design

(Describe your design here.)

Implementation

(Describe and link the implementation results here (from the wiki or the repository).)

Testing

(Place the testing results here.)

Comments

(Write comments for this or later revisions here.)