JigaoLuo / duckdb

DuckDB is an in-process SQL OLAP Database Management System
http://www.duckdb.org
MIT License
2 stars 0 forks source link

reproduce figure2&3 from TLB Paper #34

Closed JigaoLuo closed 2 years ago

JigaoLuo commented 2 years ago

https://github.com/torvalds/test-tlb

JigaoLuo commented 2 years ago
$ cd test-tlb/
$ make run
gcc -g -Wall -O test-tlb.c -o test-tlb -lm
for i in 4k 8k 16k 32k 64k 128k 256k 512k 1M 2M 4M 6M 8M 16M 32M 64M 128M 256M ; do echo "$i:"; ./test-tlb -H $i 64; ./test-tlb $i 64 ; ./test-tlb -Hr $i 64; ./test-tlb -r $i 64; done
4k:
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
8k:
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
16k:
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
  1.52ns (~5.9 cycles)
32k:
  1.55ns (~6.0 cycles)
  1.55ns (~6.1 cycles)
  1.56ns (~6.1 cycles)
  1.55ns (~6.1 cycles)
64k:
  3.64ns (~14.2 cycles)
  3.64ns (~14.2 cycles)
  3.63ns (~14.2 cycles)
  3.64ns (~14.2 cycles)
128k:
  3.65ns (~14.2 cycles)
  3.66ns (~14.3 cycles)
  3.64ns (~14.2 cycles)
  3.66ns (~14.3 cycles)
256k:
  3.68ns (~14.4 cycles)
  3.90ns (~15.2 cycles)
  3.73ns (~14.6 cycles)
 12.11ns (~47.2 cycles)
512k:
  3.91ns (~15.2 cycles)
  3.96ns (~15.4 cycles)
 15.92ns (~62.1 cycles)
 17.45ns (~68.0 cycles)
1M:
  3.90ns (~15.2 cycles)
  4.14ns (~16.2 cycles)
 15.93ns (~62.1 cycles)
 17.93ns (~69.9 cycles)
2M:
  3.90ns (~15.2 cycles)
  4.14ns (~16.2 cycles)
 15.97ns (~62.3 cycles)
 17.96ns (~70.1 cycles)
4M:
  3.90ns (~15.2 cycles)
  3.96ns (~15.5 cycles)
 16.16ns (~63.0 cycles)
 18.42ns (~71.8 cycles)
6M:
  3.90ns (~15.2 cycles)
  4.20ns (~16.4 cycles)
 15.94ns (~62.1 cycles)
 19.63ns (~76.5 cycles)
8M:
  3.90ns (~15.2 cycles)
  4.01ns (~15.6 cycles)
 15.94ns (~62.2 cycles)
 20.25ns (~79.0 cycles)
16M:
  3.90ns (~15.2 cycles)
  4.23ns (~16.5 cycles)
 15.94ns (~62.2 cycles)
 21.62ns (~84.3 cycles)
32M:
  6.09ns (~23.7 cycles)
  7.03ns (~27.4 cycles)
 32.29ns (~125.9 cycles)
 57.25ns (~223.3 cycles)
64M:
  7.87ns (~30.7 cycles)
  8.39ns (~32.7 cycles)
 83.93ns (~327.3 cycles)
 93.06ns (~362.9 cycles)
128M:
  7.90ns (~30.8 cycles)
  8.35ns (~32.6 cycles)
 85.65ns (~334.0 cycles)
 99.48ns (~388.0 cycles)
256M:
  7.90ns (~30.8 cycles)
  8.34ns (~32.5 cycles)
 86.30ns (~336.6 cycles)
102.68ns (~400.4 cycles)