SemanticSearchPOC / tools /dev /bench /measure_start_time.py
KevinStephenson
Adding in weaviate code
b110593
raw
history blame
1.03 kB
import subprocess
import time
# This measures the start time of weaviate
#
# How to use:
# - Build a container of the weaviate code that you want to benchmark, this script assumes that you use
# ./tools/test/run_ci_server.sh
# - Import objects
# - Run this script, it will automatically stop/start the weaviate docker container multiple times and measure how long
# it takes
runs = 10
container_name = "weaviate-weaviate-1"
total_time = 0
# stop any running weaviate containers
subprocess.run(["docker", "stop", container_name])
for _ in range(runs):
start = time.time()
subprocess.run(["docker", "start", container_name])
# Loop until weaviate is responding
while True:
n = subprocess.run(["curl", "-s", "http://localhost:8080"])
if n.returncode == 0:
total_time += time.time()-start
subprocess.run(["docker", "stop", container_name])
break
print("Average time until weaviate responds: ", total_time/runs)