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