njn | e1b349b | 2005-11-28 17:32:49 +0000 | [diff] [blame] | 1 | ----------------------------------------------------------------------------- |
| 2 | Notes on performance |
| 3 | ----------------------------------------------------------------------------- |
| 4 | The intent of this file is to record progress in improving performance. |
| 5 | |
| 6 | ----------------------------------------------------------------------------- |
| 7 | Just before 3.1.0: |
| 8 | - Julian made LibVEX_Alloc() inlinable. Saved a couple of percent. |
| 9 | - Julian started building Vex at -O2. Saved up to 8% or so(?) in some |
| 10 | cases. |
| 11 | |
| 12 | Post 3.1.0: |
| 13 | - Julian made the tree builder linear. Saved 2--13% on a range of programs. |
njn | 5096a39 | 2005-12-13 20:05:00 +0000 | [diff] [blame] | 14 | - Nick improved vg_SP_update_pass() to identify more small constant |
| 15 | increments/decrements of SP, so the fast cases can be used more often. |
| 16 | Saved 1--3% on a few programs. |
njn | 265bf44 | 2005-12-15 19:41:14 +0000 | [diff] [blame^] | 17 | - r5345,r5346: Julian improved the dispatcher so that x86 and AMD64 use |
| 18 | jumps instead of call/return for calling translations, and also removed |
| 19 | the --profile-flags profiling from the dispatcher unless --profile-flags |
| 20 | is being used. Improved Nulgrind performance typically by 10--20%, |
| 21 | and Memcheck performance typically by 2--20%. |
njn | e1b349b | 2005-11-28 17:32:49 +0000 | [diff] [blame] | 22 | |
| 23 | COMPVBITS branch: |
| 24 | - Nick converted to compress V bits, initial version saved 0--5% on most |
njn | 47fb650 | 2005-12-02 23:09:49 +0000 | [diff] [blame] | 25 | cases, with a 30% improvement on one case (tsim_arch) which calls |
njn | e1b349b | 2005-11-28 17:32:49 +0000 | [diff] [blame] | 26 | set_address_range_perms() a lot. |
njn | 47fb650 | 2005-12-02 23:09:49 +0000 | [diff] [blame] | 27 | - Nick rewrote set_address_range_perms(), which gained 0--3% typically, |
| 28 | and 22% on tsim_arch. |
njn | e1b349b | 2005-11-28 17:32:49 +0000 | [diff] [blame] | 29 | |