| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add GitAllocatorSources draft | Florian Schmaus | 2019-08-12 | 1 | -0/+4 |
| | | |||||
| * | Improve scalloc error message | Florian Schmaus | 2019-08-12 | 1 | -2/+5 |
| | | |||||
| * | improve exec | Florian Fischer | 2019-08-12 | 1 | -2/+6 |
| | | | | | | fix usage print message if exec failed and exit with exit code 1 | ||||
| * | use absolut path of benchmark binary | Florian Fischer | 2019-08-12 | 1 | -1/+2 |
| | | |||||
| * | add LD_LIBRARY_PATH to system installed allocators | Florian Fischer | 2019-08-12 | 1 | -4/+6 |
| | | |||||
| * | add malloc_stats | Florian Fischer | 2019-08-12 | 1 | -0/+5 |
| | | |||||
| * | use LD_LIBRARY_PATH for glibc instead of calling its loader | Florian Fischer | 2019-08-12 | 6 | -25/+49 |
| | | | | | | | | | Calling the loader fails on non ELF executables. Exec, formerly run_cmd, now takes two options: -l LD_LIBRARY_PATH, -p LD_PRELOAD. -p sets LD_PRELOAD and -l LD_LIBRARY_PATH before executing the rest of argv. glibc no longer uses cmd_prefix in favor of LD_LIBRARY_PATH. | ||||
| * | add patch info to malloc_stats | Florian Fischer | 2019-08-11 | 5 | -49/+65 |
| | | |||||
| * | Rework exec chain | Florian Fischer | 2019-08-11 | 3 | -19/+40 |
| | | | | | | | | | | | | | | | Originally the structure of the executed cmd was {measure cmd} {allocator cmd prefix} {cmd} with the parent environment except LD_PRELOAD was modified for the whole command chain. Unfortunatly perf causes segfaults with some allocators and measuring allocators cmd prefixes doesnt seem fair. So the new cmd chain looks like: {allocator cmd prefix} {measure cmd} run_cmd <LD_PRELOAD> {cmd} without touching the environment in python. run_cmd sets LD_PRELOAD to the value it received in argv[1] and executes argv[2] with the rest of argv. This does also measure code not part of the actual benchmark but in a equal manner and not only for some allocators. | ||||
| * | fix and adjust to mysql installations on Ubuntu 18.04 | Florian Fischer | 2019-08-11 | 1 | -7/+8 |
| | | |||||
| * | use new location of bumpptr | Florian Fischer | 2019-08-11 | 1 | -1/+1 |
| | | |||||
| * | except OSError: /usr/sbin/mysqld: cannot dynamically load executable | Florian Fischer | 2019-08-11 | 1 | -1/+5 |
| | | |||||
| * | check if vm.overcommit_memory is set before building scalloc | Florian Fischer | 2019-08-11 | 1 | -0/+8 |
| | | | | | | | | Scalloc checks if it is allowed to overcommit memory at runtime and aborts. Calling abort() does not set an exit code and therefore does not trigger allocbenchs failure handling. To prevent crashing at runtime we now fail early. | ||||
| * | make bump pointer allocator available through src.allocators.bumpptr | Florian Fischer | 2019-08-11 | 3 | -3/+5 |
| | | |||||
| * | improve bumpptr_alloc | Florian Fischer | 2019-08-11 | 2 | -7/+22 |
| | | | | | | Return always 16 Byte aligned blocks and mmap the whole available memory reported by free -t per thread. | ||||
| * | don't copy benchmark.allocators again | Florian Fischer | 2019-08-10 | 1 | -6/+0 |
| | | |||||
| * | be more carefull with default entries in Benchmark.results | Florian Fischer | 2019-08-10 | 1 | -10/+18 |
| | | |||||
| * | print malloc_stats to stdout | Florian Fischer | 2019-08-10 | 1 | -1/+4 |
| | | |||||
| * | fix Allocator.build() if sources are None | Florian Fischer | 2019-08-02 | 1 | -6/+6 |
| | | |||||
| * | add facts to dataref export | Florian Fischer | 2019-07-31 | 6 | -30/+54 |
| | | |||||
| * | use libtbbmalloc_proxy which overwrites malloc | Florian Fischer | 2019-07-17 | 1 | -1/+1 |
| | | |||||
| * | fix tbbmalloc definition | Florian Fischer | 2019-07-03 | 1 | -1/+1 |
| | | |||||
| * | add barrier to larson benchmark | Florian Fischer | 2019-07-01 | 1 | -0/+10 |
| | | | | | | | The barrier prevents worker thread from doing work before the main thread starts the timing. This behaviour was mentioned in the paper: Mostly Lock-Free Malloc by Dave Dice, Alex Garthwaite | ||||
| * | add default colors to included allocators | Florian Fischer | 2019-07-01 | 10 | -14/+19 |
| | | |||||
| * | add mimalloc definition | Florian Fischer | 2019-06-27 | 2 | -1/+27 |
| | | |||||
| * | fix realloc micro benchmark for allocators returning null for realloc(ptr, 0) | Florian Fischer | 2019-06-27 | 1 | -1/+1 |
| | | |||||
| * | add tbbmalloc definition | Florian Fischer | 2019-06-24 | 2 | -1/+26 |
| | | |||||
| * | fix all allocators collection | Florian Fischer | 2019-06-24 | 1 | -10/+3 |
| | | |||||
| * | add mesh and lockless_allocator definitions | Florian Fischer | 2019-06-24 | 4 | -2/+50 |
| | | |||||
| * | rework allocator definitions #2 | Florian Fischer | 2019-06-24 | 13 | -141/+135 |
| | | | | | | | | | 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". | ||||
| * | apply some flake8 hints | Florian Fischer | 2019-06-19 | 11 | -117/+107 |
| | | |||||
| * | fix name of tcmalloc source | Florian Fischer | 2019-06-17 | 1 | -1/+1 |
| | | |||||
| * | fix jemalloc, SuperMalloc and Hoard dirty builds | Florian Fischer | 2019-06-17 | 3 | -3/+3 |
| | | |||||
| * | reduce code duplication by giving each known allocator its own class | Florian Fischer | 2019-06-17 | 15 | -0/+327 |
| | | | | | also move allocator related code to src/allocators | ||||
| * | fix old variable name in debug output | Florian Fischer | 2019-06-17 | 1 | -1/+1 |
| | | |||||
| * | save full server /proc/pid/status file in each result entry | Florian Fischer | 2019-05-27 | 1 | -1/+4 |
| | | |||||
| * | use sane iterations (100 -> 10000) | Florian Fischer | 2019-05-27 | 2 | -5/+3 |
| | | |||||
| * | fix libc_ver using code from pip | Florian Fischer | 2019-05-27 | 2 | -5/+55 |
| | | |||||
| * | mark free ptr unused | Florian Fischer | 2019-05-27 | 1 | -1/+1 |
| | | |||||
| * | don't break if a result is NaN | Florian Fischer | 2019-05-21 | 1 | -4/+4 |
| | | |||||
| * | don't hardcode bumpptr color | Florian Fischer | 2019-05-21 | 1 | -1/+1 |
| | | |||||
| * | add ttest1 from ptmalloc | Florian Fischer | 2019-05-15 | 5 | -0/+685 |
| | | |||||
| * | fix cmd for non server benchmarks | Florian Fischer | 2019-05-15 | 1 | -1/+1 |
| | | |||||
| * | introduce server concept to Benchmark | Florian Fischer | 2019-05-15 | 3 | -136/+129 |
| | | | | | | | | | | | | | A benchmark object can specify a list of cmds to execute as "servers" in the member attribute server_cmds. Servers are started and terminated through Popen objects. This requires the server cmds to not daemonize so the server can be terminated through the Popen object. For each started server cmd a shutdown function is registered with atexit to terminate all servers even if a exception occurs. Use the new server concept in httpd and mysql benchmarks | ||||
| * | add function to prefix cmd with abspath using whereis | Florian Fischer | 2019-05-15 | 1 | -0/+18 |
| | | |||||
| * | remove unused variable | Florian Fischer | 2019-05-15 | 1 | -1/+0 |
| | | |||||
| * | add php to httpd benchmark | Florian Fischer | 2019-05-15 | 8 | -75/+2666 |
| | | | | | | | | | | restructure httpd and php-fpm setup OBJDIR/etc holds configs OBJDIR/run holds pid files OBJDIR/log holds all log files don't daemonize nginx | ||||
| * | fix ylabel for llc miss plot | Florian Fischer | 2019-05-14 | 1 | -1/+1 |
| | | |||||
| * | add dataref exports | Florian Fischer | 2019-05-08 | 4 | -0/+31 |
| | | |||||
| * | use abspaths in globalvars | Florian Fischer | 2019-05-08 | 1 | -2/+2 |
| | | |||||
