-
Запустить
docker-compose up -d
в текущей папке. -
Запуск бенчмарка
docker exec splay_benchmark_app_1 python benchmark.py
-
Выполнить любую команду
docker exec -i splay_benchmark_app_1 <cmd>
запуск скомпилированного C++ docker exec -i splay_benchmark_app_1 st <input1.txt
Запуск Python docker exec -i splay_benchmark_app_1 python splay_tree_orig.py <input1.txt
Запуск Pypy3 docker exec -i splay_benchmark_app_1 pypy splay_tree_orig.py <input1.txt
Запуск Cython docker exec -i splay_benchmark_app_1 python splay_cython.py <input1.txt
Вывод тоже работает
docker exec -i splay_benchmark_app_1 st <input1.txt >output.txt
Запуск с генерацией состояний docker exec -i splay_benchmark_app_1 python splay_tree_trace.py <input1.txt
после этого создается папка graph, где лежат файлы в формате dot вида
'039- after SplayTree._remove(,).dot'
Скрипт docker exec -i splay_benchmark_app_1 python convert.py
преобразовывает всю папку graph в папку final в формате png.
PNG не генерируется сразу в graphviz, чтобы все файлы были одного размера и не нужно было выравнивать кадр.
Также делается файл gif.
Можно еще попробовать запустить cython в pypy, но для меня это пожалуй слишком, не знаю, стоит ли об этом писать)