Changes between Version 4 and Version 5 of PerformanceImprovements

Show
Ignore:
Timestamp:
04/13/10 21:30:06 (12 years ago)
Author:
chromatic
Comment:

ordered by rough progress

Legend:

Unmodified
Added
Removed
Modified
  • PerformanceImprovements

    v4 v5  
    11Rakudo needs better performance from Parrot, and Parrot can provide it.  Here are several areas of exploration. 
    22 
    3 ||'''Explanation'''||'''Difficulty'''||'''Amount of Work'''||'''Benefit Estimate'''|| 
    4 || [wiki:FixingPIRVtableOverrides] ||moderate||low to moderate|| 5%|| 
    5 || [wiki:FixingConstantSTRINGCaching] ||moderate||low||big memory savings, 3% performance improvement, further benefits from other string changes (avl_string_cache branch)|| 
    6 ||Fix freeze/thaw of complex PMCs||difficult||moderate to high||huge startup improvement for Rakudo|| 
    7 ||Slim parrot_string_t||low||low to moderate||2-3%, depending on workload|| 
    8 ||Remove PMC struct's sync||low||low||2% at most|| 
    9 ||Implement sweep-free GC||moderate to high||moderate||10%, depending on workload|| 
    10 ||Remove PMCProxy||high||moderate||5-7%|| 
    11 ||Implement garbage-first GC||high||high||10-15%|| 
    12 ||Immutable Strings||moderate||low (yes, really)||7% (immutable_strings_part1 branch)|| 
    13 ||Type-specific hashes||low to moderate||low to moderate||3-5%|| 
    14 ||String equality macro||low||low||2-3%|| 
    15 ||Store CallSignatures in PBC||moderate||low to moderate||7-8%|| 
    16 ||Cheaper access to object attributes||moderate to high||moderate||5-7%|| 
    17 ||Make fast core the default core||low to moderate||low||2-3%|| 
    18 ||[wiki:RemoveUnnecessaryDataFromConfig]_lib.pbc||low||low to moderate||5-10% Parrot startup (2.926% achieved with r45623, more possibilities await)|| 
    19 ||Lorito||high||high||orders of magnitude|| 
     3||'''In progress?'''||'''Explanation'''||'''Difficulty'''||'''Amount of Work'''||'''Benefit Estimate'''|| 
     4||*|| [wiki:FixingConstantSTRINGCaching] ||moderate||low||big memory savings, 3% performance improvement, further benefits from other string changes (avl_string_cache branch)|| 
     5||*||Immutable Strings||moderate||low (yes, really)||7% (immutable_strings_part1 branch)|| 
     6||*||[wiki:RemoveUnnecessaryDataFromConfig]_lib.pbc||low||low to moderate||5-10% Parrot startup (2.926% achieved with r45623, more possibilities await)|| 
     7|| ||String equality macro||low||low||2-3%|| 
     8|| ||Slim parrot_string_t||low||low to moderate||2-3%, depending on workload|| 
     9|| ||Remove PMC struct's sync||low||low||2% at most|| 
     10|| ||Make fast core the default core||low to moderate||low||2-3%|| 
     11|| || [wiki:FixingPIRVtableOverrides] ||moderate||low to moderate|| 5%|| 
     12|| ||Fix freeze/thaw of complex PMCs||difficult||moderate to high||huge startup improvement for Rakudo|| 
     13|| ||Implement sweep-free GC||moderate to high||moderate||10%, depending on workload|| 
     14|| ||Remove PMCProxy||high||moderate||5-7%|| 
     15|| ||Implement garbage-first GC||high||high||10-15%|| 
     16|| ||Type-specific hashes||low to moderate||low to moderate||3-5%|| 
     17|| ||Store CallSignatures in PBC||moderate||low to moderate||7-8%|| 
     18|| ||Cheaper access to object attributes||moderate to high||moderate||5-7%|| 
     19|| ||Lorito||high||high||orders of magnitude||