diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2020-05-06 16:56:32 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2020-06-02 11:18:47 +0200 |
| commit | 8174a918ea3b7cb216bf7ea98cfdc10661b5c37d (patch) | |
| tree | 0747ec3ccb9f8d7eeccfac35977fc17855ca3bbb /src/allocators/speedymalloc.py | |
| parent | 8f52e8fc02dd235582f5961941bcd564e9a681cd (diff) | |
| download | allocbench-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/speedymalloc.py')
| -rw-r--r-- | src/allocators/speedymalloc.py | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/src/allocators/speedymalloc.py b/src/allocators/speedymalloc.py deleted file mode 100644 index 6fe202a..0000000 --- a/src/allocators/speedymalloc.py +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2018-2020 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. If not, see <http://www.gnu.org/licenses/>. -"""Speedymalloc - -Speedymalloc is a cached bump pointer allocator. -A bump pointer allocator makes the biggest possible tradeoff between speed and -memory in speeds favor. Memory is mmapped per thread and never freed. -""" - -from src.artifact import GitArtifact -from src.allocator import Allocator - -VERSION = "dd24b9d24c78c798df97ca5556ba248ccff97ca7" - - -class Speedymalloc(Allocator): - """Speedymalloc definition for allocbench""" - - sources = GitArtifact("speedymalloc", - "https://gitlab.cs.fau.de/flow/speedymalloc.git") - - def __init__(self, name, **kwargs): - - configuration = "--buildtype=release " - for option, value in kwargs.get("options", {}).items(): - configuration += f"-D{option}={value} " - - self.build_cmds = [ - f"meson {{srcdir}} {{dir}} {configuration}", "ninja -C {dir}" - ] - - self.LD_PRELOAD = "{dir}/libspeedymalloc.so" - super().__init__(name, **kwargs) - - -speedymalloc = Speedymalloc("speedymalloc", version=VERSION) - -speedymalloc_no_madv_free = Speedymalloc("speedymalloc_no_madv_free", - options={"madvise_free": "false"}, - version=VERSION) - -speedymalloc_no_madv_willneed = Speedymalloc( - "speedymalloc_no_madv_willneed", - options={"madvise_willneed": "false"}, - version=VERSION) - -speedymalloc_4095_sc_32 = Speedymalloc("speedymalloc_4095_sc_32", - options={ - "cache_bins": 4095, - "cache_bin_seperation": 32 - }, - version=VERSION) - -speedymalloc_4095_sc_128 = Speedymalloc("speedymalloc_4095_sc_128", - options={ - "cache_bins": 4095, - "cache_bin_seperation": 128 - }, - version=VERSION) - -speedymalloc_only_glab = Speedymalloc( - "speedymalloc_only_glab", - options={"max_local_allocation_buffer_size": 0}, - version=VERSION) - -speedymalloc_no_glab = Speedymalloc( - "speedymalloc_no_glab", - options={"max_local_allocation_buffer_size": -1}, - version=VERSION) - -# speedymalloc_rseq = Speedymalloc( - # "speedymalloc_rseq", - # version="e1549fa2a2833deba0ba53504a6c67ee31a0e42a") |
