mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 08:24:42 +01:00
Update CompilerImprovements
parent
4e2bb0895f
commit
a7f09c091d
1 changed files with 12 additions and 6 deletions
|
@ -7,19 +7,24 @@ performance over each release.
|
|||
- ```-O fast```
|
||||
- ```-O mem```???
|
||||
|
||||
1. lexer - Front end duplicate include elimination
|
||||
- per block cache which files have already been included so they don't need to be processed multiple times
|
||||
1. Better auto tuning of jobs
|
||||
- -j0 really small systems
|
||||
- small system
|
||||
- large system
|
||||
|
||||
1. User side compression
|
||||
- means compress once in userspace for cache
|
||||
- kernel only has to unpack, and store compressed instead of doing compression
|
||||
- better compression if done in userspace (less mem)
|
||||
|
||||
1. file cache (memory for speed)
|
||||
* Include parse caching
|
||||
- cache include files post parsing so that they don't need to be re-parsed
|
||||
* generic file cache
|
||||
- cache files that have already been read so they don't need to be reread
|
||||
- requires multiple profiles be processed by one compiler call to be effective (especially if duplicate include elimination is in effect)
|
||||
- requires multiple profiles be processed by one compiler call to be effective
|
||||
- use mmap when possible
|
||||
|
||||
1. Rule duplicate removal (only done on files)
|
||||
- almost unneeded if fix for 1 is done
|
||||
- requires: to full replace (so code can be dropped) need 1 and 4
|
||||
|
||||
1. aare -> pcre convertion
|
||||
- add native parsing of aare to the background eliminating this step
|
||||
|
@ -58,6 +63,7 @@ performance over each release.
|
|||
- Requires dfa set operations
|
||||
|
||||
1. threaded parallel compile
|
||||
- thread pool
|
||||
- requires removal of global state
|
||||
- shared file caches
|
||||
- compile profile components in parallel (see partial compiles)
|
||||
|
|
Loading…
Add table
Reference in a new issue