aboutsummaryrefslogtreecommitdiff
path: root/src/allocators/tcmalloc.py
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2020-05-06 16:56:32 +0200
committerFlorian Fischer <florian.fl.fischer@fau.de>2020-06-02 11:18:47 +0200
commit8174a918ea3b7cb216bf7ea98cfdc10661b5c37d (patch)
tree0747ec3ccb9f8d7eeccfac35977fc17855ca3bbb /src/allocators/tcmalloc.py
parent8f52e8fc02dd235582f5961941bcd564e9a681cd (diff)
downloadallocbench-8174a918ea3b7cb216bf7ea98cfdc10661b5c37d.tar.gz
allocbench-8174a918ea3b7cb216bf7ea98cfdc10661b5c37d.zip
make the whole project more python idiomatic
* rename src directory to allocbench * make global variable names UPPERCASE * format a lot of code using yapf * use lowercase ld_preload and ld_library_path as Allocator members * name expected Errors 'err' and don't raise a new Exception * disable some pylint messages
Diffstat (limited to 'src/allocators/tcmalloc.py')
-rw-r--r--src/allocators/tcmalloc.py90
1 files changed, 0 insertions, 90 deletions
diff --git a/src/allocators/tcmalloc.py b/src/allocators/tcmalloc.py
deleted file mode 100644
index 7f67146..0000000
--- a/src/allocators/tcmalloc.py
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 2018-2019 Florian Fischer <florian.fl.fischer@fau.de>
-#
-# This file is part of allocbench.
-#
-# allocbench is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# allocbench is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with allocbench.
-"""TCMalloc definition for allocbench"""
-
-from src.allocator import Allocator, BUILDDIR
-from src.artifact import GitArtifact
-
-
-class TCMalloc(Allocator):
- """TCMalloc allocator"""
-
- sources = GitArtifact("tcmalloc", "https://github.com/google/tcmalloc.git")
-
- def __init__(self, name, **kwargs):
-
- self.LD_PRELOAD = "{dir}/libtcmalloc.so"
- self.patches = ["{patchdir}/tcmalloc_bazel_build_so.patch"]
- self.build_cmds = [
- "cd {srcdir}; bazel build tcmalloc/tcmalloc.so --compilation_mode opt",
- "mkdir -p {dir}",
- "cp -f {srcdir}/bazel-bin/tcmalloc/tcmalloc.so {dir}/libtcmalloc.so"
- ]
-
- super().__init__(name, **kwargs)
-
-
-tcmalloc = TCMalloc("TCMalloc",
- color="xkcd:blue",
- version="1676100265bd189df6b5513feac15f102542367e")
-
-tcmalloc_align = TCMalloc("TCMalloc-Aligned",
- version="1676100265bd189df6b5513feac15f102542367e",
- color="xkcd:light blue")
-
-tcmalloc_align.LD_PRELOAD = f"{BUILDDIR}/align_to_cl.so {tcmalloc_align.LD_PRELOAD}"
-
-
-class TCMallocGperftools(Allocator):
- """gperftools TCMalloc allocator"""
-
- sources = GitArtifact("gperftools",
- "https://github.com/gperftools/gperftools.git")
-
- def __init__(self, name, **kwargs):
-
- self.LD_PRELOAD = "{dir}/lib/libtcmalloc.so"
- self.prepare_cmds = ["./autogen.sh"]
- self.build_cmds = [
- "cd {srcdir}; ./configure --prefix={dir}",
- "cd {srcdir}; make install -j4"
- ]
-
- super().__init__(name, **kwargs)
-
-
-tcmalloc_gperftools = TCMallocGperftools("TCMalloc-gperftools",
- color="xkcd:dark blue",
- version="gperftools-2.7")
-
-tcmalloc_gperftools_nofs = TCMallocGperftools(
- "TCMalloc-Gperftools-NoFalsesharing",
- patches=["{patchdir}/tcmalloc_2.7_no_active_falsesharing.patch"],
- version="gperftools-2.7",
- color="xkcd:navy")
-
-tcmalloc_gperftools_align = TCMallocGperftools("TCMalloc-Gperftools-Aligned",
- version="gperftools-2.7",
- color="xkcd:navy blue")
-
-tcmalloc_gperftools_align.LD_PRELOAD = f"{BUILDDIR}/align_to_cl.so {tcmalloc_gperftools_align.LD_PRELOAD}"
-
-tcmalloc_gperftools_cacheline_exclusive = TCMallocGperftools(
- "TCMalloc-Gperftools-Cacheline-Exclusive",
- patches=["{patchdir}/tcmalloc_2.7_cacheline_exclusive.patch"],
- version="gperftools-2.7",
- color="xkcd:royal blue")