redisbench-admin 0.11.66__tar.gz → 0.11.67__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.
Files changed (242) hide show
  1. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/PKG-INFO +5 -2
  2. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/pyproject.toml +1 -1
  3. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/args.py +1 -0
  4. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/cluster.py +1 -3
  5. {redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms → redisbench_admin-0.11.67/redisbench_admin/run/ycsb}/__init__.py +0 -0
  6. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/remote_db.py +3 -1
  7. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/remote_helpers.py +27 -11
  8. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/run_remote.py +7 -6
  9. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/standalone.py +6 -2
  10. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/benchmark_config.py +6 -2
  11. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/local.py +4 -2
  12. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/remote.py +81 -33
  13. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/.dockerignore +0 -2
  14. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/.git +0 -1
  15. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/.github/workflows/benchmarks.yml +0 -100
  16. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/.gitignore +0 -21
  17. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/LICENSE +0 -21
  18. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/README.md +0 -157
  19. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/algos.yaml +0 -1294
  20. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/algosP.yaml +0 -67
  21. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/__init__.py +0 -2
  22. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/annoy.py +0 -26
  23. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/balltree.py +0 -22
  24. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/base.py +0 -36
  25. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/bruteforce.py +0 -110
  26. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/ckdtree.py +0 -17
  27. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/datasketch.py +0 -29
  28. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/definitions.py +0 -187
  29. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/diskann.py +0 -190
  30. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dolphinnpy.py +0 -31
  31. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dummy_algo.py +0 -25
  32. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elasticsearch.py +0 -107
  33. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elastiknn.py +0 -124
  34. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss.py +0 -124
  35. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_gpu.py +0 -61
  36. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_hnsw.py +0 -39
  37. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/flann.py +0 -27
  38. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/hnswlib.py +0 -36
  39. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kdtree.py +0 -22
  40. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kgraph.py +0 -39
  41. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/lshf.py +0 -25
  42. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/milvus.py +0 -99
  43. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/mrpt.py +0 -41
  44. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/n2.py +0 -28
  45. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nearpy.py +0 -48
  46. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nmslib.py +0 -74
  47. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/onng_ngt.py +0 -100
  48. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/opensearchknn.py +0 -107
  49. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/panng_ngt.py +0 -79
  50. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pinecone.py +0 -39
  51. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/puffinn.py +0 -45
  52. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pynndescent.py +0 -115
  53. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/qg_ngt.py +0 -102
  54. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/redisearch.py +0 -90
  55. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/rpforest.py +0 -20
  56. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/scann.py +0 -34
  57. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/sptag.py +0 -28
  58. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/subprocess.py +0 -246
  59. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vald.py +0 -149
  60. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vecsim-hnsw.py +0 -43
  61. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vespa.py +0 -47
  62. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/constants.py +0 -1
  63. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/data.py +0 -48
  64. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/datasets.py +0 -620
  65. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/distance.py +0 -53
  66. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/main.py +0 -325
  67. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/__init__.py +0 -2
  68. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/metrics.py +0 -183
  69. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/plot_variants.py +0 -17
  70. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/utils.py +0 -165
  71. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/results.py +0 -71
  72. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/ann_benchmarks/runner.py +0 -333
  73. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/create_dataset.py +0 -12
  74. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/create_hybrid_dataset.py +0 -147
  75. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/create_text_to_image_ds.py +0 -117
  76. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/create_website.py +0 -272
  77. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile +0 -11
  78. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.annoy +0 -5
  79. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.datasketch +0 -4
  80. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann +0 -29
  81. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann_pq +0 -31
  82. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.dolphinn +0 -5
  83. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.elasticsearch +0 -45
  84. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.elastiknn +0 -61
  85. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.faiss +0 -18
  86. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.flann +0 -10
  87. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.hnswlib +0 -10
  88. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.kgraph +0 -6
  89. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.mih +0 -4
  90. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.milvus +0 -27
  91. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.mrpt +0 -4
  92. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.n2 +0 -5
  93. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.nearpy +0 -5
  94. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.ngt +0 -13
  95. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.nmslib +0 -10
  96. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.opensearchknn +0 -43
  97. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.puffinn +0 -6
  98. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.pynndescent +0 -4
  99. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.redisearch +0 -18
  100. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.rpforest +0 -5
  101. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.scann +0 -5
  102. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.scipy +0 -4
  103. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.sklearn +0 -4
  104. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.sptag +0 -30
  105. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.vald +0 -8
  106. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install/Dockerfile.vespa +0 -17
  107. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/install.py +0 -70
  108. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/logging.conf +0 -34
  109. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/multirun.py +0 -298
  110. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/plot.py +0 -159
  111. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/bf-runner +0 -10
  112. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/bf-runner.py +0 -204
  113. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/ext-add-query-metric.md +0 -51
  114. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/ext-batch-queries.md +0 -77
  115. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/ext-prepared-queries.md +0 -77
  116. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/ext-query-parameters.md +0 -47
  117. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/protocol/specification.md +0 -194
  118. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/requirements.txt +0 -14
  119. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/requirements_py38.txt +0 -11
  120. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/fashion-mnist-784-euclidean.png +0 -0
  121. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/gist-960-euclidean.png +0 -0
  122. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/glove-100-angular.png +0 -0
  123. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/glove-25-angular.png +0 -0
  124. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/lastfm-64-dot.png +0 -0
  125. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/mnist-784-euclidean.png +0 -0
  126. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/nytimes-256-angular.png +0 -0
  127. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/results/sift-128-euclidean.png +0 -0
  128. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/run.py +0 -12
  129. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/run_algorithm.py +0 -3
  130. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/templates/chartjs.template +0 -102
  131. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/templates/detail_page.html +0 -23
  132. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/templates/general.html +0 -58
  133. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/templates/latex.template +0 -30
  134. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/templates/summary.html +0 -60
  135. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/test/__init__.py +0 -0
  136. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/test/test-jaccard.py +0 -19
  137. redisbench_admin-0.11.66/redisbench_admin/run/ann/pkg/test/test-metrics.py +0 -99
  138. redisbench_admin-0.11.66/redisbench_admin/run/ycsb/__init__.py +0 -0
  139. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/LICENSE +0 -0
  140. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/README.md +0 -0
  141. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/__init__.py +0 -0
  142. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/cli.py +0 -0
  143. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/commands/__init__.py +0 -0
  144. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/commands/commands.json.py +0 -0
  145. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/compare/__init__.py +0 -0
  146. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/compare/args.py +0 -0
  147. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/compare/compare.py +0 -0
  148. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/deploy/__init__.py +0 -0
  149. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/deploy/args.py +0 -0
  150. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/deploy/deploy.py +0 -0
  151. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/environments/__init__.py +0 -0
  152. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/environments/oss_cluster.py +0 -0
  153. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/environments/oss_standalone.py +0 -0
  154. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/__init__.py +0 -0
  155. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/args.py +0 -0
  156. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/common/__init__.py +0 -0
  157. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/common/common.py +0 -0
  158. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/export.py +0 -0
  159. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/google_benchmark/__init__.py +0 -0
  160. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/google_benchmark/google_benchmark_json_format.py +0 -0
  161. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/memtier_benchmark/__init__.py +0 -0
  162. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/memtier_benchmark/memtier_benchmark_json_format.py +0 -0
  163. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/pyperf/__init__.py +0 -0
  164. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/pyperf/pyperf_json_format.py +0 -0
  165. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/redis_benchmark/__init__.py +0 -0
  166. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/redis_benchmark/metrics_definition.py +0 -0
  167. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/export/redis_benchmark/redis_benchmark_csv_format.py +0 -0
  168. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/extract/__init__.py +0 -0
  169. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/extract/args.py +0 -0
  170. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/extract/extract.py +0 -0
  171. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/grafana_api/__init__.py +0 -0
  172. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/grafana_api/app.py +0 -0
  173. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/grafana_api/args.py +0 -0
  174. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/grafana_api/grafana_api.py +0 -0
  175. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/__init__.py +0 -0
  176. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/daemon.py +0 -0
  177. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/flamegraph.pl +0 -0
  178. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/perf.py +0 -0
  179. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/perf_daemon_caller.py +0 -0
  180. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/pprof.py +0 -0
  181. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/profilers.py +0 -0
  182. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/profilers_local.py +0 -0
  183. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/profilers_schema.py +0 -0
  184. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/stackcollapse-perf.pl +0 -0
  185. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/profilers/vtune.py +0 -0
  186. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/__init__.py +0 -0
  187. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/aibench_run_inference_redisai_vision/__init__.py +0 -0
  188. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/aibench_run_inference_redisai_vision/aibench_run_inference_redisai_vision.py +0 -0
  189. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ann/__init__.py +0 -0
  190. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ann/ann.py +0 -0
  191. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/asm.py +0 -0
  192. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/common.py +0 -0
  193. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ftsb/__init__.py +0 -0
  194. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ftsb/ftsb.py +0 -0
  195. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/git.py +0 -0
  196. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/grafana.py +0 -0
  197. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/memtier_benchmark/__init__.py +0 -0
  198. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/memtier_benchmark/memtier_benchmark.py +0 -0
  199. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/metrics.py +0 -0
  200. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/modules.py +0 -0
  201. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/redis_benchmark/__init__.py +0 -0
  202. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/redis_benchmark/redis_benchmark.py +0 -0
  203. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/redisgraph_benchmark_go/__init__.py +0 -0
  204. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/redisgraph_benchmark_go/redisgraph_benchmark_go.py +0 -0
  205. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/redistimeseries.py +0 -0
  206. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/run.py +0 -0
  207. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/s3.py +0 -0
  208. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ssh.py +0 -0
  209. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/tsbs_run_queries_redistimeseries/__init__.py +0 -0
  210. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/tsbs_run_queries_redistimeseries/tsbs_run_queries_redistimeseries.py +0 -0
  211. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run/ycsb/ycsb.py +0 -0
  212. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/__init__.py +0 -0
  213. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/async_env.py +0 -0
  214. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/async_terraform.py +0 -0
  215. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/benchmark.py +0 -0
  216. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/log.py +0 -0
  217. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/render_files.py +0 -0
  218. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_async/run_async.py +0 -0
  219. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/__init__.py +0 -0
  220. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/args.py +0 -0
  221. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/local_client.py +0 -0
  222. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/local_db.py +0 -0
  223. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/local_helpers.py +0 -0
  224. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_local/run_local.py +0 -0
  225. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/__init__.py +0 -0
  226. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/args.py +0 -0
  227. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/consts.py +0 -0
  228. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/log.py +0 -0
  229. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/notifications.py +0 -0
  230. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/remote_client.py +0 -0
  231. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/remote_env.py +0 -0
  232. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/remote_failures.py +0 -0
  233. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/run_remote/terraform.py +0 -0
  234. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/__init__.py +0 -0
  235. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/redisearch.py +0 -0
  236. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/redisgraph_benchmark_go.py +0 -0
  237. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/results.py +0 -0
  238. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/ssh.py +0 -0
  239. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/utils/utils.py +0 -0
  240. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/watchdog/__init__.py +0 -0
  241. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/watchdog/args.py +0 -0
  242. {redisbench_admin-0.11.66 → redisbench_admin-0.11.67}/redisbench_admin/watchdog/watchdog.py +0 -0
@@ -1,7 +1,8 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: redisbench-admin
3
- Version: 0.11.66
3
+ Version: 0.11.67
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
+ License-File: LICENSE
5
6
  Author: filipecosta90
6
7
  Author-email: filipecosta.90@gmail.com
7
8
  Requires-Python: >=3.10.0,<4.0.0
@@ -9,6 +10,8 @@ Classifier: Programming Language :: Python :: 3
9
10
  Classifier: Programming Language :: Python :: 3.10
10
11
  Classifier: Programming Language :: Python :: 3.11
11
12
  Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Programming Language :: Python :: 3.13
14
+ Classifier: Programming Language :: Python :: 3.14
12
15
  Requires-Dist: Flask (>=2.0.1,<3.0.0)
13
16
  Requires-Dist: Flask-HTTPAuth (>=4.4.0,<5.0.0)
14
17
  Requires-Dist: GitPython (>=3.1.12,<4.0.0)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "redisbench-admin"
3
- version = "0.11.66"
3
+ version = "0.11.67"
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"
@@ -53,6 +53,7 @@ ARCH = os.getenv("ARCH", ARCH_X86)
53
53
  if "x64" in ARCH:
54
54
  ARCH = ARCH_X86
55
55
 
56
+
56
57
  def common_run_args(parser):
57
58
  parser.add_argument(
58
59
  "--architecture",
@@ -166,9 +166,7 @@ def spin_up_redis_cluster_remote_redis(
166
166
  else:
167
167
  full_command = " ".join(command)
168
168
  logging.error(
169
- "Remote primary shard {} command: {}".format(
170
- master_shard_id, full_command
171
- )
169
+ "Remote primary shard {} command: {}".format(master_shard_id, full_command)
172
170
  )
173
171
  logfiles.append(logfile)
174
172
  redis_process_commands.append(full_command)
@@ -155,7 +155,9 @@ def remote_db_spin(
155
155
  username,
156
156
  continue_on_module_check_error,
157
157
  )
158
- logging.info("Extra library files copied successfully (not passed to redis-server)")
158
+ logging.info(
159
+ "Extra library files copied successfully (not passed to redis-server)"
160
+ )
159
161
  # setup Redis
160
162
  redis_setup_result = True
161
163
  redis_conns = []
@@ -71,11 +71,15 @@ def ensure_aws_cli_available(client_public_ip, username, private_key, client_ssh
71
71
  "curl 'https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip' -o 'awscliv2.zip'",
72
72
  "unzip -q awscliv2.zip",
73
73
  "sudo ./aws/install",
74
- "rm -rf awscliv2.zip aws/"
74
+ "rm -rf awscliv2.zip aws/",
75
75
  ]
76
76
 
77
77
  install_result = execute_remote_commands(
78
- client_public_ip, username, private_key, install_commands, client_ssh_port
78
+ client_public_ip,
79
+ username,
80
+ private_key,
81
+ install_commands,
82
+ client_ssh_port,
79
83
  )
80
84
 
81
85
  # Check if installation was successful
@@ -249,6 +253,7 @@ def remote_tool_pre_bench_step(
249
253
  )
250
254
  logging.info("Finished up remote tool {} requirements".format(benchmark_tool))
251
255
 
256
+
252
257
  def _setup_remote_benchmark_tool_requirements(
253
258
  client_public_ip,
254
259
  username,
@@ -261,22 +266,33 @@ def _setup_remote_benchmark_tool_requirements(
261
266
  ):
262
267
  commands = [
263
268
  "wget {} -q -O {}".format(tool_link, remote_tool_link),
264
- "chmod 755 {}".format(remote_tool_link)
269
+ "chmod 755 {}".format(remote_tool_link),
265
270
  ]
266
271
 
267
272
  # detect if queries_file_link is a s3 URI or http one and act accordingly (use aws cli or wget)
268
273
  if queries_file_link is not None:
269
- if queries_file_link.startswith("s3://"):
270
- ensure_aws_cli_available(client_public_ip, username, private_key, client_ssh_port)
271
- commands.append(
272
- "timeout 600 aws s3 cp {} {} --no-sign-request --cli-read-timeout 300".format(queries_file_link, remote_input_file)
273
- )
274
- else:
275
- commands.append("wget {} -q -O {}".format(queries_file_link, remote_input_file))
274
+ if queries_file_link.startswith("s3://"):
275
+ ensure_aws_cli_available(
276
+ client_public_ip, username, private_key, client_ssh_port
277
+ )
278
+ commands.append(
279
+ "timeout 600 aws s3 cp {} {} --no-sign-request --cli-read-timeout 300".format(
280
+ queries_file_link, remote_input_file
281
+ )
282
+ )
283
+ else:
284
+ commands.append(
285
+ "wget {} -q -O {}".format(queries_file_link, remote_input_file)
286
+ )
276
287
  else:
277
288
  logging.info("No queries file link provided. Skipping download.")
278
289
  execute_remote_commands(
279
- client_public_ip, username, private_key, commands, client_ssh_port, limit_output_print=True,
290
+ client_public_ip,
291
+ username,
292
+ private_key,
293
+ commands,
294
+ client_ssh_port,
295
+ limit_output_print=True,
280
296
  )
281
297
 
282
298
 
@@ -89,15 +89,14 @@ STALL_INFO_DAYS = 7
89
89
  EXPIRE_TIME_SECS_PROFILE_KEYS = 60 * 60 * 24 * STALL_INFO_DAYS
90
90
  EXPIRE_TIME_MSECS_PROFILE_KEYS = EXPIRE_TIME_SECS_PROFILE_KEYS * 1000
91
91
 
92
+
92
93
  def ensure_mixed_types_first(benchmark_runs_plan):
93
94
  """
94
95
  Returns an iterator over (benchmark_type, bench_by_dataset_map) tuples,
95
96
  ensuring that 'mixed' benchmark types are processed before others.
96
97
  """
97
- return sorted(
98
- benchmark_runs_plan.items(),
99
- key=lambda x: (x[0] != "mixed", x[0])
100
- )
98
+ return sorted(benchmark_runs_plan.items(), key=lambda x: (x[0] != "mixed", x[0]))
99
+
101
100
 
102
101
  def is_important_data(tf_github_branch, artifact_version):
103
102
  return True
@@ -405,7 +404,9 @@ def run_remote_command_logic(args, project_name, project_version):
405
404
  ts_key_full_price = f"ts:{tf_triggering_env}:tests:full_price"
406
405
  ts_key_architecture = f"ts:{tf_triggering_env}:tests:arch:{architecture}"
407
406
  reuse_mixed = False
408
- for benchmark_type, bench_by_dataset_map in ensure_mixed_types_first(benchmark_runs_plan):
407
+ for benchmark_type, bench_by_dataset_map in ensure_mixed_types_first(
408
+ benchmark_runs_plan
409
+ ):
409
410
  if benchmark_type == "mixed" and "read-only" in benchmark_runs_plan:
410
411
  reuse_mixed = True
411
412
  if return_code != 0 and args.fail_fast:
@@ -440,7 +441,7 @@ def run_remote_command_logic(args, project_name, project_version):
440
441
  setup_settings = setup_details["setup_settings"]
441
442
  benchmarks_map = setup_details["benchmarks"]
442
443
  # we start with an empty per bench-type/setup-name
443
- if not reuse_mixed:
444
+ if not reuse_mixed or "env" not in setup_details:
444
445
  logging.info(
445
446
  "Given we are not reusing a mixed setup we will reset the setup details."
446
447
  )
@@ -701,7 +701,9 @@ def spin_test_standalone_redis(
701
701
  create_module_dir_commands,
702
702
  db_ssh_port,
703
703
  )
704
- logging.info(f"📁 Copying {len(extra_libs)} extra library files to remote...")
704
+ logging.info(
705
+ f"📁 Copying {len(extra_libs)} extra library files to remote..."
706
+ )
705
707
  # Copy extra libs but discard result (not passed to redis-server)
706
708
  remote_module_files_cp(
707
709
  extra_libs,
@@ -720,7 +722,9 @@ def spin_test_standalone_redis(
720
722
  server_public_ip, username, private_key, remote_symlinks, db_ssh_port
721
723
  )
722
724
  if not symlink_success:
723
- logging.warning("⚠️ Some symlinks failed to create, continuing anyway...")
725
+ logging.warning(
726
+ "⚠️ Some symlinks failed to create, continuing anyway..."
727
+ )
724
728
 
725
729
  # Generate Redis startup command
726
730
  logfile = "redis-spin-test.log"
@@ -209,7 +209,9 @@ def merge_default_and_specific_properties_dict_type(
209
209
  use_case_specific_properties.append(default_property)
210
210
  logging.info(
211
211
  "Adding a default '{}' property ({}) given the file {} did not have the specific property".format(
212
- propertygroup_keyname, default_property, usecase_filename
212
+ propertygroup_keyname,
213
+ default_property,
214
+ usecase_filename,
213
215
  )
214
216
  )
215
217
  break
@@ -228,7 +230,9 @@ def merge_default_and_specific_properties_dict_type(
228
230
  for usecase_kpi in use_case_specific_properties:
229
231
  usecase_rule, usecase_details = list(usecase_kpi.items())[0]
230
232
  usecase_condition = list(usecase_details.values())[0]
231
- usecase_comparison_key = "{}{}".format(usecase_rule, usecase_condition)
233
+ usecase_comparison_key = "{}{}".format(
234
+ usecase_rule, usecase_condition
235
+ )
232
236
  if comparison_key == usecase_comparison_key:
233
237
  found = True
234
238
  if found:
@@ -83,9 +83,11 @@ def check_if_needs_remote_fetch(
83
83
  )
84
84
  )
85
85
  if property.startswith("s3://"):
86
- logging.error("Unexpected s3 URL. It should have already been downloaded. Skipping...")
86
+ logging.error(
87
+ "Unexpected s3 URL. It should have already been downloaded. Skipping..."
88
+ )
87
89
  else:
88
- wget.download(property, full_path)
90
+ wget.download(property, full_path)
89
91
  else:
90
92
  logging.info(
91
93
  "Reusing cached remote file (located at {} ).".format(full_path)
@@ -151,7 +151,13 @@ def fetch_file_from_remote_setup(
151
151
 
152
152
 
153
153
  def execute_remote_commands(
154
- server_public_ip, username, private_key, commands, port, get_pty=False, limit_output_print=False,
154
+ server_public_ip,
155
+ username,
156
+ private_key,
157
+ commands,
158
+ port,
159
+ get_pty=False,
160
+ limit_output_print=False,
155
161
  ):
156
162
  res = []
157
163
  c = connect_remote_ssh(port, private_key, server_public_ip, username)
@@ -163,20 +169,20 @@ def execute_remote_commands(
163
169
  stderr = stderr.readlines()
164
170
  if recv_exit_status != 0:
165
171
  if not limit_output_print:
166
- logging.warning(
167
- "Exit status: {} for command {}.\n\tSTDERR: {}\n\tSTDOUT: {}".format(
168
- recv_exit_status, command, stdout, stderr
169
- )
170
- )
172
+ logging.warning(
173
+ "Exit status: {} for command {}.\n\tSTDERR: {}\n\tSTDOUT: {}".format(
174
+ recv_exit_status, command, stdout, stderr
175
+ )
176
+ )
171
177
  else:
172
- # Take first 10 lines, truncate each to 200 chars to avoid huge logs
173
- stdout_limited = [line[:100] for line in stdout[:10]]
174
- stderr_limited = [line[:100] for line in stderr[:10]]
175
- logging.info(
176
- "Exit status: {} for command {}.\n\tSTDERR: {}\n\tSTDOUT: {}".format(
177
- recv_exit_status, command, stderr_limited, stdout_limited
178
- )
179
- )
178
+ # Take first 10 lines, truncate each to 200 chars to avoid huge logs
179
+ stdout_limited = [line[:100] for line in stdout[:10]]
180
+ stderr_limited = [line[:100] for line in stderr[:10]]
181
+ logging.info(
182
+ "Exit status: {} for command {}.\n\tSTDERR: {}\n\tSTDOUT: {}".format(
183
+ recv_exit_status, command, stderr_limited, stdout_limited
184
+ )
185
+ )
180
186
  res.append([recv_exit_status, stdout, stderr])
181
187
  c.close()
182
188
  return res
@@ -316,25 +322,67 @@ def setup_remote_environment(
316
322
  ):
317
323
  logging.warning("Destroying previous setup")
318
324
  tf.destroy()
319
- return_code, stdout, stderr = tf.apply(
320
- skip_plan=True,
321
- capture_output=False,
322
- refresh=True,
323
- var={
324
- "github_sha": tf_github_sha,
325
- "github_actor": tf_github_actor,
326
- "setup_name": tf_setup_name,
327
- "github_org": tf_github_org,
328
- "Project": tf_github_org,
329
- "project": tf_github_org,
330
- "Environment": tf_github_org,
331
- "environment": tf_github_org,
332
- "github_repo": tf_github_repo,
333
- "triggering_env": tf_triggering_env,
334
- "timeout_secs": tf_timeout_secs,
335
- },
336
- raise_on_error=True,
337
- )
325
+
326
+ # Capture output to provide better error messages
327
+ try:
328
+ return_code, stdout, stderr = tf.apply(
329
+ skip_plan=True,
330
+ capture_output=True, # Changed to True to capture error details
331
+ refresh=True,
332
+ var={
333
+ "github_sha": tf_github_sha,
334
+ "github_actor": tf_github_actor,
335
+ "setup_name": tf_setup_name,
336
+ "github_org": tf_github_org,
337
+ "Project": tf_github_org,
338
+ "project": tf_github_org,
339
+ "Environment": tf_github_org,
340
+ "environment": tf_github_org,
341
+ "github_repo": tf_github_repo,
342
+ "triggering_env": tf_triggering_env,
343
+ "timeout_secs": tf_timeout_secs,
344
+ },
345
+ raise_on_error=True,
346
+ )
347
+ # Log successful output for debugging
348
+ if stdout:
349
+ logging.info(f"Terraform apply stdout:\n{stdout}")
350
+ if stderr:
351
+ logging.warning(f"Terraform apply stderr:\n{stderr}")
352
+ except Exception as e:
353
+ # Provide detailed error information
354
+ logging.error("=" * 80)
355
+ logging.error("TERRAFORM APPLY FAILED")
356
+ logging.error("=" * 80)
357
+ logging.error(f"Error type: {type(e).__name__}")
358
+ logging.error(f"Error message: {str(e)}")
359
+
360
+ # Try to get the terraform command details
361
+ try:
362
+ if hasattr(e, "cmd"):
363
+ logging.error(f"Failed command: {e.cmd}")
364
+ if hasattr(e, "returncode"):
365
+ logging.error(f"Return code: {e.returncode}")
366
+ if hasattr(e, "stdout") and e.stdout:
367
+ logging.error(f"STDOUT:\n{e.stdout}")
368
+ if hasattr(e, "stderr") and e.stderr:
369
+ logging.error(f"STDERR:\n{e.stderr}")
370
+ except:
371
+ pass
372
+
373
+ logging.error("=" * 80)
374
+ logging.error(f"Terraform setup details:")
375
+ logging.error(f" - Setup name: {tf_setup_name}")
376
+ logging.error(f" - GitHub org: {tf_github_org}")
377
+ logging.error(f" - GitHub repo: {tf_github_repo}")
378
+ logging.error(f" - GitHub SHA: {tf_github_sha}")
379
+ logging.error(f" - Triggering env: {tf_triggering_env}")
380
+ logging.error(f" - Timeout: {tf_timeout_secs}s")
381
+ logging.error("=" * 80)
382
+
383
+ # Re-raise the exception with more context
384
+ raise
385
+
338
386
  infra_wait_secs = 60
339
387
  logging.warning(f"Infra ready wait... for {infra_wait_secs} secs")
340
388
  time.sleep(infra_wait_secs)
@@ -1 +0,0 @@
1
- gitdir: ../../../../.git/modules/redisbench_admin/run/ann/pkg
@@ -1,100 +0,0 @@
1
- name: ANN benchmarks
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
- build:
7
-
8
- runs-on: ubuntu-20.04
9
- strategy:
10
- matrix:
11
- include:
12
- - library: annoy
13
- dataset: random-xs-20-angular
14
- - library: dolphinn
15
- dataset: random-xs-20-angular
16
- - library: faiss
17
- dataset: random-xs-20-angular
18
- - library: flann
19
- dataset: random-xs-20-angular
20
- - library: kgraph
21
- dataset: random-xs-20-angular
22
- - library: milvus
23
- dataset: random-xs-20-angular
24
- - library: mrpt
25
- dataset: random-xs-20-angular
26
- - library: n2
27
- dataset: random-xs-20-angular
28
- - library: nearpy
29
- dataset: random-xs-20-angular
30
- - library: ngt
31
- dataset: random-xs-20-angular
32
- - library: nmslib
33
- dataset: random-xs-20-angular
34
- - library: hnswlib
35
- dataset: random-xs-20-angular
36
- - library: puffinn
37
- dataset: random-xs-20-angular
38
- - library: pynndescent
39
- dataset: random-xs-20-angular
40
- - library: rpforest
41
- dataset: random-xs-20-angular
42
- - library: sklearn
43
- dataset: random-xs-20-angular
44
- - library: sptag
45
- dataset: random-xs-20-angular
46
- - library: mih
47
- dataset: random-xs-16-hamming
48
- - library: datasketch
49
- dataset: random-s-jaccard
50
- - library: scann
51
- dataset: random-xs-20-angular
52
- - library: elasticsearch
53
- dataset: random-xs-20-angular
54
- - library: elastiknn
55
- dataset: random-xs-20-angular
56
- - library: opensearchknn
57
- dataset: random-xs-20-angular
58
- - library: diskann
59
- dataset: random-xs-20-angular
60
- - library: puffinn
61
- dataset: random-s-jaccard
62
- - library: pynndescent
63
- dataset: random-s-jaccard
64
- - library: vespa
65
- dataset: random-xs-20-angular
66
- - library: scipy
67
- dataset: random-xs-20-angular
68
- - library: vald
69
- dataset: random-xs-20-angular
70
- fail-fast: false
71
-
72
- steps:
73
- - uses: actions/checkout@v2 # Pull the repository
74
-
75
- - name: Install various apt packages
76
- run: sudo apt-get install -y libhdf5-dev python3-numpy python3-scipy python3-matplotlib python3-sklearn
77
-
78
- - name: Install dependencies
79
- run: |
80
- pip3 install -r requirements.txt
81
- python3 install.py
82
-
83
- env:
84
- LIBRARY: ${{ matrix.library }}
85
- DATASET: ${{ matrix.dataset }}
86
-
87
- - name: Run the benchmark
88
- run: |
89
- python3 run.py --docker-tag ann-benchmarks-${LIBRARY} --max-n-algorithms 5 --dataset $DATASET --run-disabled --timeout 300
90
- python3 run.py --docker-tag ann-benchmarks-${LIBRARY} --max-n-algorithms 5 --dataset $DATASET --run-disabled --batch --timeout 300
91
- sudo chmod -R 777 results/
92
- python3 plot.py --dataset $DATASET --output plot.png
93
- python3 plot.py --dataset $DATASET --output plot-batch.png --batch
94
- python3 -m unittest test/test-metrics.py
95
- python3 -m unittest test/test-jaccard.py
96
- python3 create_website.py --outputdir . --scatter --latex
97
-
98
- env:
99
- LIBRARY: ${{ matrix.library }}
100
- DATASET: ${{ matrix.dataset }}
@@ -1,21 +0,0 @@
1
- .DS_Store
2
- *.pyc
3
- *.o
4
- protocol/c/fr-*
5
-
6
- install/*.txt
7
- install/*.yaml
8
- install/lib-*/
9
- data/*
10
- *.class
11
-
12
- *.log
13
-
14
- results/*
15
- !results/*.png
16
- website
17
-
18
- venv
19
-
20
- .idea
21
- .vscode
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2018 Erik Bernhardsson
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.