aboutsummaryrefslogtreecommitdiff
path: root/src/allocators/glibc.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/allocators/glibc.py')
-rw-r--r--src/allocators/glibc.py21
1 files changed, 17 insertions, 4 deletions
diff --git a/src/allocators/glibc.py b/src/allocators/glibc.py
index eff71dc..fb962f5 100644
--- a/src/allocators/glibc.py
+++ b/src/allocators/glibc.py
@@ -1,14 +1,15 @@
-import src.allocator
+from src.allocator import Allocator, Allocator_Sources, library_path
version = 2.29
-glibc_src = src.allocator.Allocator_Sources("glibc",
+glibc_src = Allocator_Sources("glibc",
retrieve_cmds=["git clone git://sourceware.org/git/glibc.git"],
prepare_cmds=["git checkout release/{}/master".format(version)],
reset_cmds=["git stash"])
-class Glibc (src.allocator.Allocator):
+
+class Glibc (Allocator):
"""Glibc definition for allocbench"""
def __init__(self, name, **kwargs):
@@ -23,7 +24,19 @@ class Glibc (src.allocator.Allocator):
"cd glibc-build; {srcdir}/configure --prefix={dir} " + configure_args,
"cd glibc-build; make",
"cd glibc-build; make install"]
+
kwargs["cmd_prefix"] = ("{dir}/lib/ld-linux-x86-64.so.2 --library-path {dir}/lib:"
- + src.allocator.library_path)
+ + library_path)
super().__init__(name, **kwargs)
+
+
+glibc = Glibc("glibc")
+
+glibc_notc = Glibc("glibc-noThreadCache", configure_args="--disable-experimental-malloc")
+
+glibc_nofs = Glibc("glibc-noFalsesharing",
+ patches=["{patchdir}/glibc_2.28_no_passive_falsesharing.patch"])
+
+glibc_nofs_fancy = Glibc("glibc-noFalsesharingClever",
+ patches=["{patchdir}/glibc_2.28_no_passive_falsesharing_fancy.patch"])