-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathoptimization.txt
21 lines (18 loc) · 1.08 KB
/
optimization.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
┏━━━━━━━━━━━━━━━━━━┓
┃ OPTIMIZATION ┃
┗━━━━━━━━━━━━━━━━━━┛
- taille struct POD multiple de 2 -> si array, l'index [] est plus rapide
- most frequent case: first in a switch statement
- utiliser des rvalue plutôt que des lvalue
- déclarer locale variable dans les blocs/statements les utilisant
- passer arguments par référence, et les renvoyer par référence
- utiliser des ints au lieu de char et short
- initialiser à la déclaration
- utiliser des initialization list dans les constructor
- ne pas déclarer de virtual fonctions non-abstract
- memory pools
Cache optimization :
- éviter global state : si data sont propres des fonctions les utilisant (class scope)
- pas d'arrays ou structures trop grandes
- field reordering : dans struct ou class, CLASSDT accédes souvent ensemble close to each other
- mettre les CLASSDT les plus souvent accédées close to each other