foofoobar
Banned
- Registriert
- Dez. 2011
- Beiträge
- 5.221
Anbei ein paar lustige Messwerte zu verschiedenen Pagegrössen, die ich mal irgendwann schnell dahin geferkelt habe.Piktogramm schrieb:
- Pagesizes sind so ein Ding. In der x86-Welt ist absehbar kein Wegkommen von den 4kB Pages als Minimum, unter ARM ist das Problem seit den Apple M1 Chips halbwegs gelöst und es gibt 16kB Pages als Minimum. Größere Pages erlauben beim selben Aufwand für die Verwaltung deutlich größere Caches bei den CPUs (vor allem für L1 relevant).
Die Messschleife dazu:
Code:
bash -c 'export log=/tmp/log-$$; echo $log; for cmd in zstd bzip2 xz lzip gzip; do for level in $(seq 0 9); do for huge in $(seq 0 2); do for i in $(seq 0 4); do dd if=/dev/zero of=/dev/null conv=ascii count=64 bs=1M 2> /dev/null; perf stat -e dTLB-load-misses,iTLB-load-misses sh -c "GLIBC_TUNABLES=glibc.malloc.hugetlb=$huge $cmd -$(if [ $cmd = "bzip2" ] && [ $level -eq 0 ]; then echo 1; else if [ $cmd = zstd ]; then echo $(( $level * 2 + 1 )); else echo $level; fi fi) < b > /dev/null" 2>> $log ; done; done; done; done'
Eigentlich wollte ich mal bunte Bilder daraus machen .......
Anhänge
Zuletzt bearbeitet: