redisbench-admin 0.11.0__tar.gz → 0.11.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/PKG-INFO +12 -4
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/README.md +6 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/pyproject.toml +9 -5
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/compare/compare.py +3 -3
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/common.py +33 -1
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/run.py +37 -8
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/run_remote.py +5 -3
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/standalone.py +5 -1
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/benchmark_config.py +6 -4
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/remote.py +6 -2
- redisbench_admin-0.11.0/setup.py +0 -102
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/LICENSE +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/cli.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/commands/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/commands/commands.json.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/compare/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/compare/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/deploy/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/deploy/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/deploy/deploy.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/oss_cluster.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/oss_standalone.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/common/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/common/common.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/export.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/google_benchmark/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/google_benchmark/google_benchmark_json_format.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/memtier_benchmark/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/memtier_benchmark/memtier_benchmark_json_format.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/pyperf/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/pyperf/pyperf_json_format.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/redis_benchmark/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/redis_benchmark/metrics_definition.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/redis_benchmark/redis_benchmark_csv_format.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/extract/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/extract/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/extract/extract.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/app.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/grafana_api.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/daemon.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/flamegraph.pl +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/perf.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/perf_daemon_caller.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/pprof.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/profilers.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/profilers_local.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/profilers_schema.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/stackcollapse-perf.pl +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/vtune.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/aibench_run_inference_redisai_vision/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/aibench_run_inference_redisai_vision/aibench_run_inference_redisai_vision.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/ann.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/.dockerignore +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/.git +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/.github/workflows/benchmarks.yml +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/.gitignore +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/LICENSE +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/README.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/algos.yaml +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/algosP.yaml +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/annoy.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/balltree.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/base.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/bruteforce.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/ckdtree.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/datasketch.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/definitions.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/diskann.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dolphinnpy.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dummy_algo.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elasticsearch.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elastiknn.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_gpu.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_hnsw.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/flann.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/hnswlib.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kdtree.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kgraph.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/lshf.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/milvus.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/mrpt.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/n2.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nearpy.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nmslib.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/onng_ngt.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/opensearchknn.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/panng_ngt.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pinecone.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/puffinn.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pynndescent.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/qg_ngt.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/redisearch.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/rpforest.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/scann.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/sptag.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/subprocess.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vald.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vecsim-hnsw.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vespa.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/constants.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/data.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/datasets.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/distance.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/main.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/metrics.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/plot_variants.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/utils.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/results.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/ann_benchmarks/runner.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/create_dataset.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/create_hybrid_dataset.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/create_text_to_image_ds.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/create_website.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.annoy +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.datasketch +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann_pq +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.dolphinn +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.elasticsearch +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.elastiknn +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.faiss +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.flann +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.hnswlib +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.kgraph +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.mih +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.milvus +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.mrpt +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.n2 +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.nearpy +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.ngt +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.nmslib +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.opensearchknn +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.puffinn +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.pynndescent +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.redisearch +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.rpforest +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.scann +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.scipy +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.sklearn +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.sptag +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.vald +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install/Dockerfile.vespa +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/install.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/logging.conf +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/multirun.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/plot.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/bf-runner +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/bf-runner.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/ext-add-query-metric.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/ext-batch-queries.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/ext-prepared-queries.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/ext-query-parameters.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/protocol/specification.md +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/requirements.txt +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/requirements_py38.txt +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/fashion-mnist-784-euclidean.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/gist-960-euclidean.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/glove-100-angular.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/glove-25-angular.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/lastfm-64-dot.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/mnist-784-euclidean.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/nytimes-256-angular.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/results/sift-128-euclidean.png +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/run.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/run_algorithm.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/templates/chartjs.template +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/templates/detail_page.html +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/templates/general.html +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/templates/latex.template +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/templates/summary.html +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/test/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/test/test-jaccard.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/test/test-metrics.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/cluster.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ftsb/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ftsb/ftsb.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/git.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/grafana.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/memtier_benchmark/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/memtier_benchmark/memtier_benchmark.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/metrics.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/modules.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/redis_benchmark/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/redis_benchmark/redis_benchmark.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/redisgraph_benchmark_go/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/redisgraph_benchmark_go/redisgraph_benchmark_go.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/redistimeseries.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/s3.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ssh.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/tsbs_run_queries_redistimeseries/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/tsbs_run_queries_redistimeseries/tsbs_run_queries_redistimeseries.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ycsb/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ycsb/ycsb.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/async_env.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/async_terraform.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/benchmark.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/log.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/render_files.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_async/run_async.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/local_client.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/local_db.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/local_helpers.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_local/run_local.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/consts.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/log.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/notifications.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/remote_client.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/remote_db.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/remote_env.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/remote_failures.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/remote_helpers.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/terraform.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/local.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/redisearch.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/redisgraph_benchmark_go.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/results.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/ssh.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/utils.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/watchdog/__init__.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/watchdog/args.py +0 -0
- {redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/watchdog/watchdog.py +0 -0
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: redisbench-admin
|
|
3
|
-
Version: 0.11.
|
|
3
|
+
Version: 0.11.3
|
|
4
4
|
Summary: Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... ).
|
|
5
5
|
Author: filipecosta90
|
|
6
6
|
Author-email: filipecosta.90@gmail.com
|
|
7
|
-
Requires-Python: >=3.
|
|
7
|
+
Requires-Python: >=3.9.0,<4.0.0
|
|
8
8
|
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
9
10
|
Classifier: Programming Language :: Python :: 3.10
|
|
10
11
|
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
11
13
|
Requires-Dist: Flask (>=2.0.1,<3.0.0)
|
|
12
14
|
Requires-Dist: Flask-HTTPAuth (>=4.4.0,<5.0.0)
|
|
13
15
|
Requires-Dist: GitPython (>=3.1.12,<4.0.0)
|
|
14
16
|
Requires-Dist: Jinja2 (>=3.0.3,<4.0.0)
|
|
15
17
|
Requires-Dist: PyYAML (>=6.0,<7.0)
|
|
16
18
|
Requires-Dist: boto3 (>=1.13.24,<2.0.0)
|
|
17
|
-
Requires-Dist: certifi (>=2021.10.8,<
|
|
19
|
+
Requires-Dist: certifi (>=2021.10.8,<2025.0.0)
|
|
18
20
|
Requires-Dist: daemonize (>=2.5.0,<3.0.0)
|
|
19
21
|
Requires-Dist: flask-restx (>=0.5.1,<0.6.0)
|
|
20
22
|
Requires-Dist: humanize (>=2.4.0,<3.0.0)
|
|
@@ -22,7 +24,7 @@ Requires-Dist: jsonpath_ng (>=1.5.2,<2.0.0)
|
|
|
22
24
|
Requires-Dist: matplotlib (>=3.1.2,<4.0.0)
|
|
23
25
|
Requires-Dist: numpy (>=2.0.0,<3.0.0)
|
|
24
26
|
Requires-Dist: pandas (>=2.1.2,<3.0.0)
|
|
25
|
-
Requires-Dist: paramiko (>=2.7.2,<
|
|
27
|
+
Requires-Dist: paramiko (>=2.7.2,<4.0.0)
|
|
26
28
|
Requires-Dist: psutil (>=5.6.6,<6.0.0)
|
|
27
29
|
Requires-Dist: pyWorkFlow (>=0.0.2,<0.0.3)
|
|
28
30
|
Requires-Dist: py_cpuinfo (>=5.0.0,<6.0.0)
|
|
@@ -156,6 +158,12 @@ To run a specific test:
|
|
|
156
158
|
$ tox -- tests/test_redistimeseries.py
|
|
157
159
|
```
|
|
158
160
|
|
|
161
|
+
To run a specific test with verbose logging:
|
|
162
|
+
|
|
163
|
+
```sh
|
|
164
|
+
# tox -- -vv --log-cli-level=INFO tests/test_run.py
|
|
165
|
+
```
|
|
166
|
+
|
|
159
167
|
## License
|
|
160
168
|
|
|
161
169
|
redisbench-admin is distributed under the BSD3 license - see [LICENSE](LICENSE)
|
|
@@ -113,6 +113,12 @@ To run a specific test:
|
|
|
113
113
|
$ tox -- tests/test_redistimeseries.py
|
|
114
114
|
```
|
|
115
115
|
|
|
116
|
+
To run a specific test with verbose logging:
|
|
117
|
+
|
|
118
|
+
```sh
|
|
119
|
+
# tox -- -vv --log-cli-level=INFO tests/test_run.py
|
|
120
|
+
```
|
|
121
|
+
|
|
116
122
|
## License
|
|
117
123
|
|
|
118
124
|
redisbench-admin is distributed under the BSD3 license - see [LICENSE](LICENSE)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "redisbench-admin"
|
|
3
|
-
version = "0.11.
|
|
3
|
+
version = "0.11.3"
|
|
4
4
|
description = "Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... )."
|
|
5
5
|
authors = ["filipecosta90 <filipecosta.90@gmail.com>","Redis Performance Group <performance@redis.com>"]
|
|
6
6
|
readme = "README.md"
|
|
@@ -10,14 +10,14 @@ redisbench-admin = "redisbench_admin.cli:main"
|
|
|
10
10
|
perf-daemon = "redisbench_admin.profilers.daemon:main"
|
|
11
11
|
|
|
12
12
|
[tool.poetry.dependencies]
|
|
13
|
-
python = "^3.
|
|
13
|
+
python = "^3.9.0"
|
|
14
14
|
humanize = "^2.4.0"
|
|
15
15
|
requests = "^2.32.3"
|
|
16
16
|
py_cpuinfo = "^5.0.0"
|
|
17
17
|
boto3 = "^1.13.24"
|
|
18
18
|
tqdm = "^4.46.1"
|
|
19
19
|
toml = "^0.10.1"
|
|
20
|
-
paramiko = "
|
|
20
|
+
paramiko = ">=2.7.2,<4.0.0"
|
|
21
21
|
jsonpath_ng = "^1.5.2"
|
|
22
22
|
pysftp = "^0.2.9"
|
|
23
23
|
python_terraform = "^0.10.1"
|
|
@@ -40,17 +40,21 @@ watchdog = "^2.1.6"
|
|
|
40
40
|
redis = "^4.2.2"
|
|
41
41
|
slack-sdk = "^3.15.2"
|
|
42
42
|
slack-bolt = "^1.13.0"
|
|
43
|
-
certifi = "
|
|
43
|
+
certifi = ">=2021.10.8,<2025.0.0"
|
|
44
44
|
pygithub = "^1.57"
|
|
45
45
|
|
|
46
46
|
[tool.poetry.dev-dependencies]
|
|
47
47
|
pytest = "^4.6"
|
|
48
48
|
pytest-cov = "^2.9.0"
|
|
49
49
|
codecov = "2.1.13"
|
|
50
|
-
black = "
|
|
50
|
+
black = "24.3.0"
|
|
51
51
|
flake8 = "^5.0.0"
|
|
52
52
|
tox-poetry-installer = {extras = ["poetry"], version = "^0.10.3"}
|
|
53
53
|
|
|
54
|
+
[tool.poetry.group.dev.dependencies]
|
|
55
|
+
tox-poetry-installer = {extras = ["poetry"], version = "^0.10.3"}
|
|
56
|
+
docker = "^7.1.0"
|
|
57
|
+
|
|
54
58
|
[build-system]
|
|
55
59
|
requires = ["poetry_core>=1.0.0"]
|
|
56
60
|
build-backend = "poetry.core.masonry.api"
|
|
@@ -653,7 +653,7 @@ def get_by_strings(
|
|
|
653
653
|
comparison_str = comparison_branch
|
|
654
654
|
|
|
655
655
|
if baseline_tag is not None:
|
|
656
|
-
if
|
|
656
|
+
if baseline_covered:
|
|
657
657
|
logging.error(
|
|
658
658
|
"--baseline-branch and --baseline-tag are mutually exclusive. Pick one..."
|
|
659
659
|
)
|
|
@@ -1043,9 +1043,9 @@ def get_v_pct_change_and_largest_var(
|
|
|
1043
1043
|
if last_n < 0 or (last_n > 0 and len(comparison_values) < last_n):
|
|
1044
1044
|
comparison_values.append(tuple[1])
|
|
1045
1045
|
comparison_df = pd.DataFrame(comparison_values)
|
|
1046
|
-
comparison_median = float(comparison_df.median())
|
|
1046
|
+
comparison_median = float(comparison_df.median().iloc[0])
|
|
1047
1047
|
comparison_v = comparison_median
|
|
1048
|
-
comparison_std = float(comparison_df.std())
|
|
1048
|
+
comparison_std = float(comparison_df.std().iloc[0])
|
|
1049
1049
|
if verbose:
|
|
1050
1050
|
logging.info(
|
|
1051
1051
|
"comparison_datapoints: {} value: {}; std-dev: {}; median: {}".format(
|
|
@@ -484,6 +484,36 @@ def extract_test_feasible_setups(
|
|
|
484
484
|
for setup_name in feasible_setups_list:
|
|
485
485
|
if default_specs is not None:
|
|
486
486
|
feasible_setups_map[setup_name] = {}
|
|
487
|
+
# spec:
|
|
488
|
+
# setups:
|
|
489
|
+
# - name: oss-standalone
|
|
490
|
+
# type: oss-standalone
|
|
491
|
+
# redis_topology:
|
|
492
|
+
# primaries: 1
|
|
493
|
+
# replicas: 1
|
|
494
|
+
# placement: "sparse"
|
|
495
|
+
# resources:
|
|
496
|
+
# requests:
|
|
497
|
+
# cpus: "2"
|
|
498
|
+
# memory: "10g"
|
|
499
|
+
# - name: oss-standalone-threads-6
|
|
500
|
+
# type: oss-standalone
|
|
501
|
+
# redis_topology:
|
|
502
|
+
# primaries: 1
|
|
503
|
+
# replicas: 1
|
|
504
|
+
# placement: "sparse"
|
|
505
|
+
# resources:
|
|
506
|
+
# requests:
|
|
507
|
+
# cpus: "2"
|
|
508
|
+
# memory: "10g"
|
|
509
|
+
# dbconfig:
|
|
510
|
+
# module-configuration-parameters:
|
|
511
|
+
# redisearch:
|
|
512
|
+
# WORKERS: 6
|
|
513
|
+
# MIN_OPERATION_WORKERS: 6
|
|
514
|
+
# module-oss:
|
|
515
|
+
# WORKERS: 6
|
|
516
|
+
# MIN_OPERATION_WORKERS: 6
|
|
487
517
|
if "setups" in default_specs:
|
|
488
518
|
for setup in default_specs["setups"]:
|
|
489
519
|
if setup_name == setup["name"]:
|
|
@@ -515,7 +545,9 @@ def extract_test_feasible_setups(
|
|
|
515
545
|
feasible_setups_map[setup_name]
|
|
516
546
|
)
|
|
517
547
|
)
|
|
518
|
-
|
|
548
|
+
logging.info(
|
|
549
|
+
f"There a total of {len(feasible_setups_map.keys())} setups. Setups: {feasible_setups_map}"
|
|
550
|
+
)
|
|
519
551
|
return feasible_setups_map
|
|
520
552
|
|
|
521
553
|
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
# All rights reserved.
|
|
5
5
|
#
|
|
6
6
|
import logging
|
|
7
|
+
import copy
|
|
7
8
|
|
|
8
9
|
from redisbench_admin.run.common import extract_test_feasible_setups
|
|
9
10
|
from redisbench_admin.run_remote.consts import min_recommended_benchmark_duration
|
|
@@ -31,7 +32,7 @@ def calculate_client_tool_duration_and_check(
|
|
|
31
32
|
|
|
32
33
|
|
|
33
34
|
def merge_dicts(dict1, dict2):
|
|
34
|
-
result =
|
|
35
|
+
result = copy.deepcopy(dict1) # Start with dict1's keys and values
|
|
35
36
|
for key, value in dict2.items():
|
|
36
37
|
if key in result:
|
|
37
38
|
if isinstance(result[key], dict) and isinstance(value, dict):
|
|
@@ -56,8 +57,15 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
56
57
|
benchmark_runs_plan[benchmark_type] = {}
|
|
57
58
|
|
|
58
59
|
# extract dataset-name
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
(
|
|
61
|
+
benchmark_contains_dbconfig,
|
|
62
|
+
dataset_name,
|
|
63
|
+
_,
|
|
64
|
+
_,
|
|
65
|
+
_,
|
|
66
|
+
) = extract_redis_dbconfig_parameters(benchmark_config, "dbconfig")
|
|
67
|
+
logging.info(
|
|
68
|
+
f"Benchmark contains specific dbconfig on test {test_name}: {benchmark_contains_dbconfig}"
|
|
61
69
|
)
|
|
62
70
|
if dataset_name is None:
|
|
63
71
|
dataset_name = test_name
|
|
@@ -74,6 +82,14 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
74
82
|
)
|
|
75
83
|
|
|
76
84
|
for setup_name, setup_settings in test_setups.items():
|
|
85
|
+
test_benchmark_config = copy.deepcopy(benchmark_config)
|
|
86
|
+
setup_contains_dbconfig = False
|
|
87
|
+
if "dbconfig" in setup_settings:
|
|
88
|
+
setup_contains_dbconfig = True
|
|
89
|
+
logging.info(
|
|
90
|
+
f"setup ({setup_name}): {setup_settings}. contains dbconfig {setup_contains_dbconfig}"
|
|
91
|
+
)
|
|
92
|
+
|
|
77
93
|
if setup_name not in benchmark_runs_plan[benchmark_type][dataset_name]:
|
|
78
94
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name] = {}
|
|
79
95
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
@@ -82,6 +98,7 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
82
98
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
83
99
|
"benchmarks"
|
|
84
100
|
] = {}
|
|
101
|
+
|
|
85
102
|
if (
|
|
86
103
|
test_name
|
|
87
104
|
in benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
@@ -94,13 +111,25 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
94
111
|
)
|
|
95
112
|
)
|
|
96
113
|
else:
|
|
97
|
-
#
|
|
98
|
-
if
|
|
99
|
-
|
|
100
|
-
|
|
114
|
+
# check if we need to merge dbconfigs from the setup defaults
|
|
115
|
+
if setup_contains_dbconfig:
|
|
116
|
+
if "dbconfig" not in test_benchmark_config:
|
|
117
|
+
test_benchmark_config["dbconfig"] = {}
|
|
118
|
+
setup_dbconfig = setup_settings["dbconfig"]
|
|
119
|
+
benchmark_dbconfig = test_benchmark_config["dbconfig"]
|
|
120
|
+
logging.info(
|
|
121
|
+
f"Merging setup dbconfig: {setup_dbconfig}, with benchmark dbconfig {test_benchmark_config}"
|
|
101
122
|
)
|
|
123
|
+
final_db_config = merge_dicts(benchmark_dbconfig, setup_dbconfig)
|
|
124
|
+
logging.info(f"FINAL DB CONFIG: {final_db_config}")
|
|
125
|
+
test_benchmark_config["dbconfig"] = final_db_config
|
|
126
|
+
|
|
127
|
+
logging.info(
|
|
128
|
+
f"final benchmark config for setup: {setup_name} and test: {test_name}. {test_benchmark_config}"
|
|
129
|
+
)
|
|
130
|
+
# add benchmark
|
|
102
131
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
103
132
|
"benchmarks"
|
|
104
|
-
][test_name] =
|
|
133
|
+
][test_name] = test_benchmark_config
|
|
105
134
|
|
|
106
135
|
return benchmark_runs_plan
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/run_remote.py
RENAMED
|
@@ -346,7 +346,10 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
346
346
|
|
|
347
347
|
# map from setup name to overall target-tables ( if any target is defined )
|
|
348
348
|
overall_tables[setup_name] = {}
|
|
349
|
+
total_benchmarks = len(benchmarks_map.keys())
|
|
350
|
+
import tqdm
|
|
349
351
|
|
|
352
|
+
pbar = tqdm.tqdm(total=total_benchmarks, unit="benchmarks")
|
|
350
353
|
for test_name, benchmark_config in benchmarks_map.items():
|
|
351
354
|
if return_code != 0 and args.fail_fast:
|
|
352
355
|
logging.warning(
|
|
@@ -371,9 +374,7 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
371
374
|
continue
|
|
372
375
|
remote_perf = None
|
|
373
376
|
logging.info(
|
|
374
|
-
"Repetition {} of {}. Running test {}"
|
|
375
|
-
repetition, BENCHMARK_REPETITIONS, test_name
|
|
376
|
-
)
|
|
377
|
+
f"Repetition {repetition} of {BENCHMARK_REPETITIONS}. Running test {test_name}. Total benchmarks {total_benchmarks}"
|
|
377
378
|
)
|
|
378
379
|
(
|
|
379
380
|
setup_name,
|
|
@@ -1092,6 +1093,7 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
1092
1093
|
f"Test {test_name} does not have remote config. Skipping test."
|
|
1093
1094
|
)
|
|
1094
1095
|
|
|
1096
|
+
pbar.update()
|
|
1095
1097
|
if len(benchmark_artifacts_links) > 0:
|
|
1096
1098
|
writer = MarkdownTableWriter(
|
|
1097
1099
|
table_name=benchmark_artifacts_table_name,
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run_remote/standalone.py
RENAMED
|
@@ -76,6 +76,7 @@ def remote_module_files_cp(
|
|
|
76
76
|
):
|
|
77
77
|
remote_module_files = []
|
|
78
78
|
if local_module_files is not None:
|
|
79
|
+
logging.info(f"local_module_files: {local_module_files}")
|
|
79
80
|
for local_module_file in local_module_files:
|
|
80
81
|
splitted_module_and_plugins = []
|
|
81
82
|
if type(local_module_file) is str:
|
|
@@ -135,7 +136,10 @@ def remote_module_files_cp(
|
|
|
135
136
|
if pos > 1:
|
|
136
137
|
remote_module_files_in = remote_module_files_in + " "
|
|
137
138
|
remote_module_files_in = remote_module_files_in + remote_module_file
|
|
138
|
-
|
|
139
|
+
logging.info(
|
|
140
|
+
f"appending to {remote_module_files} remote file {remote_module_files_in}"
|
|
141
|
+
)
|
|
142
|
+
remote_module_files.append(remote_module_files_in)
|
|
139
143
|
logging.info(
|
|
140
144
|
"There are a total of {} remote files {}".format(
|
|
141
145
|
len(remote_module_files), remote_module_files
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/utils/benchmark_config.py
RENAMED
|
@@ -258,10 +258,12 @@ def extract_redis_dbconfig_parameters(benchmark_config, dbconfig_keyname):
|
|
|
258
258
|
cp = benchmark_config[dbconfig_keyname]["configuration-parameters"]
|
|
259
259
|
for k, v in cp.items():
|
|
260
260
|
redis_configuration_parameters[k] = v
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
261
|
+
if "dataset_load_timeout_secs" in benchmark_config[dbconfig_keyname]:
|
|
262
|
+
dataset_load_timeout_secs = benchmark_config[dbconfig_keyname][
|
|
263
|
+
"dataset_load_timeout_secs"
|
|
264
|
+
]
|
|
265
|
+
if "dataset_name" in benchmark_config[dbconfig_keyname]:
|
|
266
|
+
dataset_name = benchmark_config[dbconfig_keyname]["dataset_name"]
|
|
265
267
|
|
|
266
268
|
return (
|
|
267
269
|
dbconfig_present,
|
|
@@ -544,11 +544,15 @@ def common_tf(branch, path, repo, temporary_dir=None, destroy=False):
|
|
|
544
544
|
temporary_dir = tempfile.mkdtemp()
|
|
545
545
|
if destroy is False:
|
|
546
546
|
logging.info(
|
|
547
|
-
"Fetching infrastructure definition from git repo {}
|
|
547
|
+
"Fetching infrastructure definition from git repo {}{} (branch={}). Using local dir {} to store state".format(
|
|
548
548
|
repo, path, branch, temporary_dir
|
|
549
549
|
)
|
|
550
550
|
)
|
|
551
551
|
git.Repo.clone_from(repo, temporary_dir, branch=branch, depth=1)
|
|
552
|
+
logging.info(f"ensuring folder exists: {temporary_dir}")
|
|
553
|
+
assert os.path.exists(temporary_dir) and os.path.isdir(
|
|
554
|
+
temporary_dir
|
|
555
|
+
), f"Folder '{temporary_dir}' does not exist"
|
|
552
556
|
terraform_working_dir = temporary_dir + path
|
|
553
557
|
return terraform_working_dir
|
|
554
558
|
|
|
@@ -561,7 +565,7 @@ def check_remote_setup_spot_instance(
|
|
|
561
565
|
contains_spot_instance = False
|
|
562
566
|
for remote_setup_property in remote_setup_config:
|
|
563
567
|
if "spot_instance" in remote_setup_property:
|
|
564
|
-
spot_path = "
|
|
568
|
+
spot_path = "terraform/" + remote_setup_property["spot_instance"]
|
|
565
569
|
contains_spot_instance = True
|
|
566
570
|
logging.info(f"Detected spot instance config. Setup path: {spot_path}")
|
|
567
571
|
|
redisbench_admin-0.11.0/setup.py
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
from setuptools import setup
|
|
3
|
-
|
|
4
|
-
packages = \
|
|
5
|
-
['redisbench_admin',
|
|
6
|
-
'redisbench_admin.commands',
|
|
7
|
-
'redisbench_admin.compare',
|
|
8
|
-
'redisbench_admin.deploy',
|
|
9
|
-
'redisbench_admin.environments',
|
|
10
|
-
'redisbench_admin.export',
|
|
11
|
-
'redisbench_admin.export.common',
|
|
12
|
-
'redisbench_admin.export.google_benchmark',
|
|
13
|
-
'redisbench_admin.export.memtier_benchmark',
|
|
14
|
-
'redisbench_admin.export.pyperf',
|
|
15
|
-
'redisbench_admin.export.redis_benchmark',
|
|
16
|
-
'redisbench_admin.extract',
|
|
17
|
-
'redisbench_admin.grafana_api',
|
|
18
|
-
'redisbench_admin.profilers',
|
|
19
|
-
'redisbench_admin.run',
|
|
20
|
-
'redisbench_admin.run.aibench_run_inference_redisai_vision',
|
|
21
|
-
'redisbench_admin.run.ann',
|
|
22
|
-
'redisbench_admin.run.ann.pkg',
|
|
23
|
-
'redisbench_admin.run.ann.pkg.ann_benchmarks',
|
|
24
|
-
'redisbench_admin.run.ann.pkg.ann_benchmarks.algorithms',
|
|
25
|
-
'redisbench_admin.run.ann.pkg.ann_benchmarks.plotting',
|
|
26
|
-
'redisbench_admin.run.ann.pkg.protocol',
|
|
27
|
-
'redisbench_admin.run.ann.pkg.test',
|
|
28
|
-
'redisbench_admin.run.ftsb',
|
|
29
|
-
'redisbench_admin.run.memtier_benchmark',
|
|
30
|
-
'redisbench_admin.run.redis_benchmark',
|
|
31
|
-
'redisbench_admin.run.redisgraph_benchmark_go',
|
|
32
|
-
'redisbench_admin.run.tsbs_run_queries_redistimeseries',
|
|
33
|
-
'redisbench_admin.run.ycsb',
|
|
34
|
-
'redisbench_admin.run_async',
|
|
35
|
-
'redisbench_admin.run_local',
|
|
36
|
-
'redisbench_admin.run_remote',
|
|
37
|
-
'redisbench_admin.utils',
|
|
38
|
-
'redisbench_admin.watchdog']
|
|
39
|
-
|
|
40
|
-
package_data = \
|
|
41
|
-
{'': ['*'],
|
|
42
|
-
'redisbench_admin.run.ann.pkg': ['.github/workflows/*',
|
|
43
|
-
'install/*',
|
|
44
|
-
'results/*',
|
|
45
|
-
'templates/*']}
|
|
46
|
-
|
|
47
|
-
install_requires = \
|
|
48
|
-
['Flask-HTTPAuth>=4.4.0,<5.0.0',
|
|
49
|
-
'Flask>=2.0.1,<3.0.0',
|
|
50
|
-
'GitPython>=3.1.12,<4.0.0',
|
|
51
|
-
'Jinja2>=3.0.3,<4.0.0',
|
|
52
|
-
'PyYAML>=6.0,<7.0',
|
|
53
|
-
'boto3>=1.13.24,<2.0.0',
|
|
54
|
-
'certifi>=2021.10.8,<2022.0.0',
|
|
55
|
-
'daemonize>=2.5.0,<3.0.0',
|
|
56
|
-
'flask-restx>=0.5.1,<0.6.0',
|
|
57
|
-
'humanize>=2.4.0,<3.0.0',
|
|
58
|
-
'jsonpath_ng>=1.5.2,<2.0.0',
|
|
59
|
-
'matplotlib>=3.1.2,<4.0.0',
|
|
60
|
-
'numpy>=2.0.0,<3.0.0',
|
|
61
|
-
'pandas>=2.1.2,<3.0.0',
|
|
62
|
-
'paramiko>=2.7.2,<3.0.0',
|
|
63
|
-
'psutil>=5.6.6,<6.0.0',
|
|
64
|
-
'pyWorkFlow>=0.0.2,<0.0.3',
|
|
65
|
-
'py_cpuinfo>=5.0.0,<6.0.0',
|
|
66
|
-
'pygithub>=1.57,<2.0',
|
|
67
|
-
'pysftp>=0.2.9,<0.3.0',
|
|
68
|
-
'pytablewriter[html]>=0.64.1,<0.65.0',
|
|
69
|
-
'python_terraform>=0.10.1,<0.11.0',
|
|
70
|
-
'redis>=4.2.2,<5.0.0',
|
|
71
|
-
'requests>=2.32.3,<3.0.0',
|
|
72
|
-
'slack-bolt>=1.13.0,<2.0.0',
|
|
73
|
-
'slack-sdk>=3.15.2,<4.0.0',
|
|
74
|
-
'sshtunnel>=0.4.0,<0.5.0',
|
|
75
|
-
'toml>=0.10.1,<0.11.0',
|
|
76
|
-
'tqdm>=4.46.1,<5.0.0',
|
|
77
|
-
'watchdog>=2.1.6,<3.0.0',
|
|
78
|
-
'wget>=3.2,<4.0']
|
|
79
|
-
|
|
80
|
-
entry_points = \
|
|
81
|
-
{'console_scripts': ['perf-daemon = redisbench_admin.profilers.daemon:main',
|
|
82
|
-
'redisbench-admin = redisbench_admin.cli:main']}
|
|
83
|
-
|
|
84
|
-
setup_kwargs = {
|
|
85
|
-
'name': 'redisbench-admin',
|
|
86
|
-
'version': '0.11.0',
|
|
87
|
-
'description': 'Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... ).',
|
|
88
|
-
'long_description': '[](https://codecov.io/gh/redis-performance/redisbench-admin)\n\n\n\n# [redisbench-admin](https://github.com/redis-performance/redisbench-admin)\n\nRedis benchmark run helper can help you with the following tasks:\n\n- Setup abd teardown of benchmarking infrastructure specified\n on [redis-performance/testing-infrastructure](https://github.com/redis-performance/testing-infrastructure)\n- Setup and teardown of an Redis and Redis Modules DBs for benchmarking\n- Management of benchmark data and specifications across different setups\n- Running benchmarks and recording results\n- Exporting performance results in several formats (CSV, RedisTimeSeries, JSON)\n- Finding on-cpu, off-cpu, io, and threading performance problems by attaching profiling tools/probers ( perf (a.k.a. perf_events), bpf tooling, vtune )\n- **[SOON]** Finding performance problems by attaching telemetry probes\n\nCurrent supported benchmark tools:\n\n- [redis-benchmark](https://github.com/redis/redis)\n- [memtier_benchmark](https://github.com/RedisLabs/memtier_benchmark)\n- [redis-benchmark-go](https://github.com/redis-performance/redis-benchmark-go)\n- [YCSB](https://github.com/RediSearch/YCSB)\n- [tsbs](https://github.com/RedisTimeSeries/tsbs)\n- [redisgraph-benchmark-go](https://github.com/RedisGraph/redisgraph-benchmark-go)\n- [ftsb_redisearch](https://github.com/RediSearch/ftsb)\n- [ann-benchmarks](https://github.com/RedisAI/ann-benchmarks)\n\n## Installation\n\nInstallation is done using pip, the package installer for Python, in the following manner:\n\n```bash\npython3 -m pip install redisbench-admin\n```\n\n## Profiler daemon\n\nYou can use the profiler daemon by itself in the following manner. \nOn the target machine do as follow:\n\n```bash\npip3 install --upgrade pip\npip3 install redisbench-admin --ignore-installed PyYAML\n\n# install perf\napt install linux-tools-common linux-tools-generic linux-tools-`uname -r` -y\n\n# ensure perf is working\nperf --version\n\n# install awscli\nsnap install aws-cli --classic\n\n\n# configure aws\naws configure\n\n# start the perf-daemon\nperf-daemon start\nWARNING:root:Unable to detected github_actor. caught the following error: No section: \'user\'\nWritting log to /tmp/perf-daemon.log\nStarting perf-daemon. PID file /tmp/perfdaemon.pid. Daemon workdir: /root/RedisGraph\n\n# check daemon is working appropriatelly\ncurl localhost:5000/ping\n\n# start a profile\ncurl -X POST localhost:5000/profiler/perf/start/<pid to profile>\n\n# stop a profile\ncurl -X POST -d \'{"aws_access_key_id":$AWS_ACCESS_KEY_ID,"aws_secret_access_key":$AWS_SECRET_ACCESS_KEY}\' localhost:5000/profiler/perf/stop/<pid to profile>\n```\n\n\n## Development\n\n1. Install [pypoetry](https://python-poetry.org/) to manage your dependencies and trigger tooling.\n```sh\npip install poetry\n```\n\n2. Installing dependencies from lock file\n\n```\npoetry install\n```\n\n### Running formaters\n\n```sh\npoetry run black .\n```\n\n\n### Running linters\n\n```sh\npoetry run flake8\n```\n\n\n### Running tests\n\nA test suite is provided, and can be run with:\n\n```sh\n$ tox\n```\n\nTo run a specific test:\n```sh\n$ tox -- tests/test_redistimeseries.py\n```\n\n## License\n\nredisbench-admin is distributed under the BSD3 license - see [LICENSE](LICENSE)\n',
|
|
89
|
-
'author': 'filipecosta90',
|
|
90
|
-
'author_email': 'filipecosta.90@gmail.com',
|
|
91
|
-
'maintainer': 'None',
|
|
92
|
-
'maintainer_email': 'None',
|
|
93
|
-
'url': 'None',
|
|
94
|
-
'packages': packages,
|
|
95
|
-
'package_data': package_data,
|
|
96
|
-
'install_requires': install_requires,
|
|
97
|
-
'entry_points': entry_points,
|
|
98
|
-
'python_requires': '>=3.10.0,<4.0.0',
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
setup(**setup_kwargs)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/commands/commands.json.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/__init__.py
RENAMED
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/oss_cluster.py
RENAMED
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/environments/oss_standalone.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/common/__init__.py
RENAMED
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/common/common.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/export/pyperf/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/grafana_api/grafana_api.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/flamegraph.pl
RENAMED
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/perf_daemon_caller.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/profilers_local.py
RENAMED
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/profilers_schema.py
RENAMED
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/profilers/stackcollapse-perf.pl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/.dockerignore
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{redisbench_admin-0.11.0 → redisbench_admin-0.11.3}/redisbench_admin/run/ann/pkg/algosP.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|