diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2019-06-24 14:51:21 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2019-06-24 14:51:21 +0200 |
| commit | 2d86e20f5a44aea66725686531463931f38aa2dc (patch) | |
| tree | b3e42e10e212aa61069775812cc821a2445a3b45 /src/allocators/all.py | |
| parent | 366c9e27b13e976ce26ec6a97c6796eb1cdca887 (diff) | |
| download | allocbench-2d86e20f5a44aea66725686531463931f38aa2dc.tar.gz allocbench-2d86e20f5a44aea66725686531463931f38aa2dc.zip | |
rework allocator definitions #2
bench.py no evals only if argument to -a is file path.
Otherwise it will check if "arg".py is found in src/allocators/
then it imports it.
Collection definitions must export a iterable member called allocators.
Allocator definitions must export a member named "arg".
Diffstat (limited to 'src/allocators/all.py')
| -rw-r--r-- | src/allocators/all.py | 41 |
1 files changed, 9 insertions, 32 deletions
diff --git a/src/allocators/all.py b/src/allocators/all.py index 3973c37..bf2babd 100644 --- a/src/allocators/all.py +++ b/src/allocators/all.py @@ -1,44 +1,21 @@ 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 +import src.allocators.glibcs +from src.allocators.tcmalloc import tcmalloc, tcmalloc_nofs +from src.allocators.jemalloc import jemalloc +from src.allocators.hoard import hoard +from src.allocators.supermalloc import supermalloc -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"]), + 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} +allocators = [*src.allocators.glibcs.allocators, tcmalloc, tcmalloc_nofs, + jemalloc, hoard, mesh, supermalloc] |
