├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── bmarks ├── .gitignore ├── math_cache.c ├── noise.c ├── snap_stress.c ├── test.c ├── test_mem.c └── test_ro.c ├── external ├── .gitignore └── include │ ├── .gitignore │ └── utils.h ├── include ├── .gitignore ├── atomic_ops.h ├── clht.h ├── clht_lb.h ├── clht_lb_linked.h ├── clht_lb_lock_ins.h ├── clht_lb_packed.h ├── clht_lb_res.h ├── clht_lf.h ├── clht_lf_only_map_rem.h ├── clht_lf_res.h ├── common.h ├── latency.h ├── measurements.h └── prand.h ├── scripts ├── .gitignore ├── bins_add_suffix.sh ├── build_microbench.sh ├── config ├── create_plots.sh ├── create_plots_ll_sl_ht.sh ├── events_all ├── lock-free.gp ├── lock_exec ├── make_all.sh ├── make_all_locks.sh ├── make_dependencies.sh ├── o.sh ├── perf.list ├── repeat.sh ├── run.sh ├── run_2.sh ├── run_all_hts.sh ├── run_all_hts_real.sh ├── run_avg.sh ├── run_compare.sh ├── run_compare_ht.sh ├── run_compare_hy_pre.sh ├── run_compare_lf_hy_noise.sh ├── run_compare_locks.sh ├── run_ht_short_buckets.sh ├── run_lf.sh ├── run_lf_ll.sh ├── run_lf_socket.sh ├── run_lf_socket_short.sh ├── run_lf_step.sh ├── run_lf_vs_lb_all_short.sh ├── run_lf_vs_lb_socket_short.sh ├── run_ll_sl_ht.sh ├── run_mp.sh ├── run_normal.sh ├── run_rep.sh ├── run_spinlocks.sh ├── run_throughput.sh ├── scalability.sh ├── scalability10.sh ├── scalability2.sh ├── scalability3.sh ├── scalability4.sh ├── scalability5.sh ├── scalability6.sh ├── scalability7.sh ├── scalability8.sh ├── scalability9.sh ├── test.sh ├── test_correctness.sh ├── test_hy_correctness.sh ├── test_mp.sh └── unlock_exec └── src ├── .gitignore ├── clht_gc.c ├── clht_lb.c ├── clht_lb_linked.c ├── clht_lb_lock_ins.c ├── clht_lb_packed.c ├── clht_lb_res.c ├── clht_lb_res_no_next.c ├── clht_lf.c ├── clht_lf_only_map_rem.c ├── clht_lf_res.c └── measurements.c /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/README.md -------------------------------------------------------------------------------- /bmarks/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/.gitignore -------------------------------------------------------------------------------- /bmarks/math_cache.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/math_cache.c -------------------------------------------------------------------------------- /bmarks/noise.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/noise.c -------------------------------------------------------------------------------- /bmarks/snap_stress.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/snap_stress.c -------------------------------------------------------------------------------- /bmarks/test.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/test.c -------------------------------------------------------------------------------- /bmarks/test_mem.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/test_mem.c -------------------------------------------------------------------------------- /bmarks/test_ro.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/bmarks/test_ro.c -------------------------------------------------------------------------------- /external/.gitignore: -------------------------------------------------------------------------------- 1 | /ssmem 2 | /sspfd 3 | -------------------------------------------------------------------------------- /external/include/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/external/include/.gitignore -------------------------------------------------------------------------------- /external/include/utils.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/external/include/utils.h -------------------------------------------------------------------------------- /include/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/.gitignore -------------------------------------------------------------------------------- /include/atomic_ops.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/atomic_ops.h -------------------------------------------------------------------------------- /include/clht.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht.h -------------------------------------------------------------------------------- /include/clht_lb.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lb.h -------------------------------------------------------------------------------- /include/clht_lb_linked.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lb_linked.h -------------------------------------------------------------------------------- /include/clht_lb_lock_ins.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lb_lock_ins.h -------------------------------------------------------------------------------- /include/clht_lb_packed.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lb_packed.h -------------------------------------------------------------------------------- /include/clht_lb_res.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lb_res.h -------------------------------------------------------------------------------- /include/clht_lf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lf.h -------------------------------------------------------------------------------- /include/clht_lf_only_map_rem.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lf_only_map_rem.h -------------------------------------------------------------------------------- /include/clht_lf_res.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/clht_lf_res.h -------------------------------------------------------------------------------- /include/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/common.h -------------------------------------------------------------------------------- /include/latency.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/latency.h -------------------------------------------------------------------------------- /include/measurements.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/measurements.h -------------------------------------------------------------------------------- /include/prand.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/include/prand.h -------------------------------------------------------------------------------- /scripts/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | *~ 3 | /#run_lf_vs_lb_socket_short.sh# 4 | 5 | -------------------------------------------------------------------------------- /scripts/bins_add_suffix.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/bins_add_suffix.sh -------------------------------------------------------------------------------- /scripts/build_microbench.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/build_microbench.sh -------------------------------------------------------------------------------- /scripts/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/config -------------------------------------------------------------------------------- /scripts/create_plots.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/create_plots.sh -------------------------------------------------------------------------------- /scripts/create_plots_ll_sl_ht.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/create_plots_ll_sl_ht.sh -------------------------------------------------------------------------------- /scripts/events_all: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/events_all -------------------------------------------------------------------------------- /scripts/lock-free.gp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/lock-free.gp -------------------------------------------------------------------------------- /scripts/lock_exec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/lock_exec -------------------------------------------------------------------------------- /scripts/make_all.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/make_all.sh -------------------------------------------------------------------------------- /scripts/make_all_locks.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/make_all_locks.sh -------------------------------------------------------------------------------- /scripts/make_dependencies.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/make_dependencies.sh -------------------------------------------------------------------------------- /scripts/o.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/o.sh -------------------------------------------------------------------------------- /scripts/perf.list: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/perf.list -------------------------------------------------------------------------------- /scripts/repeat.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/repeat.sh -------------------------------------------------------------------------------- /scripts/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run.sh -------------------------------------------------------------------------------- /scripts/run_2.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_2.sh -------------------------------------------------------------------------------- /scripts/run_all_hts.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_all_hts.sh -------------------------------------------------------------------------------- /scripts/run_all_hts_real.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_all_hts_real.sh -------------------------------------------------------------------------------- /scripts/run_avg.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_avg.sh -------------------------------------------------------------------------------- /scripts/run_compare.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_compare.sh -------------------------------------------------------------------------------- /scripts/run_compare_ht.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_compare_ht.sh -------------------------------------------------------------------------------- /scripts/run_compare_hy_pre.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_compare_hy_pre.sh -------------------------------------------------------------------------------- /scripts/run_compare_lf_hy_noise.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_compare_lf_hy_noise.sh -------------------------------------------------------------------------------- /scripts/run_compare_locks.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_compare_locks.sh -------------------------------------------------------------------------------- /scripts/run_ht_short_buckets.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_ht_short_buckets.sh -------------------------------------------------------------------------------- /scripts/run_lf.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf.sh -------------------------------------------------------------------------------- /scripts/run_lf_ll.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_ll.sh -------------------------------------------------------------------------------- /scripts/run_lf_socket.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_socket.sh -------------------------------------------------------------------------------- /scripts/run_lf_socket_short.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_socket_short.sh -------------------------------------------------------------------------------- /scripts/run_lf_step.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_step.sh -------------------------------------------------------------------------------- /scripts/run_lf_vs_lb_all_short.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_vs_lb_all_short.sh -------------------------------------------------------------------------------- /scripts/run_lf_vs_lb_socket_short.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_lf_vs_lb_socket_short.sh -------------------------------------------------------------------------------- /scripts/run_ll_sl_ht.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_ll_sl_ht.sh -------------------------------------------------------------------------------- /scripts/run_mp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_mp.sh -------------------------------------------------------------------------------- /scripts/run_normal.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_normal.sh -------------------------------------------------------------------------------- /scripts/run_rep.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_rep.sh -------------------------------------------------------------------------------- /scripts/run_spinlocks.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_spinlocks.sh -------------------------------------------------------------------------------- /scripts/run_throughput.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/run_throughput.sh -------------------------------------------------------------------------------- /scripts/scalability.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability.sh -------------------------------------------------------------------------------- /scripts/scalability10.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability10.sh -------------------------------------------------------------------------------- /scripts/scalability2.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability2.sh -------------------------------------------------------------------------------- /scripts/scalability3.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability3.sh -------------------------------------------------------------------------------- /scripts/scalability4.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability4.sh -------------------------------------------------------------------------------- /scripts/scalability5.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability5.sh -------------------------------------------------------------------------------- /scripts/scalability6.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability6.sh -------------------------------------------------------------------------------- /scripts/scalability7.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability7.sh -------------------------------------------------------------------------------- /scripts/scalability8.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability8.sh -------------------------------------------------------------------------------- /scripts/scalability9.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/scalability9.sh -------------------------------------------------------------------------------- /scripts/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/test.sh -------------------------------------------------------------------------------- /scripts/test_correctness.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/test_correctness.sh -------------------------------------------------------------------------------- /scripts/test_hy_correctness.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/test_hy_correctness.sh -------------------------------------------------------------------------------- /scripts/test_mp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/test_mp.sh -------------------------------------------------------------------------------- /scripts/unlock_exec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/scripts/unlock_exec -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/.gitignore -------------------------------------------------------------------------------- /src/clht_gc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_gc.c -------------------------------------------------------------------------------- /src/clht_lb.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb.c -------------------------------------------------------------------------------- /src/clht_lb_linked.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb_linked.c -------------------------------------------------------------------------------- /src/clht_lb_lock_ins.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb_lock_ins.c -------------------------------------------------------------------------------- /src/clht_lb_packed.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb_packed.c -------------------------------------------------------------------------------- /src/clht_lb_res.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb_res.c -------------------------------------------------------------------------------- /src/clht_lb_res_no_next.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lb_res_no_next.c -------------------------------------------------------------------------------- /src/clht_lf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lf.c -------------------------------------------------------------------------------- /src/clht_lf_only_map_rem.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lf_only_map_rem.c -------------------------------------------------------------------------------- /src/clht_lf_res.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/clht_lf_res.c -------------------------------------------------------------------------------- /src/measurements.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LPD-EPFL/CLHT/HEAD/src/measurements.c --------------------------------------------------------------------------------