diff options
Diffstat (limited to 'src/allocators/all.py')
| -rw-r--r-- | src/allocators/all.py | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/allocators/all.py b/src/allocators/all.py new file mode 100644 index 0000000..3973c37 --- /dev/null +++ b/src/allocators/all.py @@ -0,0 +1,44 @@ +from src.allocator import Allocator as Alloc +from src.allocator import Allocator_Sources as Alloc_Src + +from src.allocators.glibc import Glibc +from src.allocators.tcmalloc import TCMalloc +from src.allocators.jemalloc import Jemalloc +from src.allocators.hoard import Hoard + +glibc = Glibc("glibc", color="C1") + +glibc_notc = Glibc("glibc-notc", + configure_args="--disable-experimental-malloc", + color="C2") + +glibc_nofs = Glibc("glibc_nofs", + patches=["allocators/glibc_2.28_no_passive_falsesharing.patch"], + color="C3") + +glibc_nofs_fancy = Glibc("glibc_nofs_fancy", + patches=["allocators/glibc_2.28_no_passive_falsesharing_fancy.patch"], + color="C4") + +tcmalloc = TCMalloc("tcmalloc", color="C5") + +tcmalloc_nofs = TCMalloc("tcmalloc_nofs", + patches= ["{patchdir}/tcmalloc_2.7_no_active_falsesharing.patch"], + color="C5") + +jemalloc = Jemalloc("jemalloc", color="C6") + +hoard = Hoard("Hoard", color="C7", patches=["allocators/hoard_make.patch"]) + +mesh = Alloc("Mesh", sources=Alloc_Src("Mesh", + retrieve_cmds=["git clone https://github.com/plasma-umass/Mesh"], + reset_cmds=["git stash"]), + LD_PRELOAD="{srcdir}/libmesh.so", + build_cmds=["cd {srcdir}; git submodule update --init", + "cd {srcdir}; ./configure", + "cd {srcdir}; make -j 4", + "mkdir {dir}"]) + +allocators_to_build = [glibc, glibc_notc, glibc_nofs, glibc_nofs_fancy, tcmalloc, tcmalloc_nofs, jemalloc, hoard, mesh] + +allocators = {a.name: a.build() for a in allocators_to_build} |
