Currently the sweeps logic is too universal with it's logic. The PR that addresses this issue will add ability to exert more fine-grained control which is very useful for running experiments as well as benchmarks. E.g. The suggested number of hnswLayers is dynamic based on the number of our graph degree and number of vectors and since the size of the graph degree varies within a sweep, it would be a waste of time to include all of them since we mathematically know which are better. Similarly, if we wanted to test different values of cuvsWriterThreads, we would probably also want to change the value of flushFreq to enable a sweep without lots of OOMs which can poison an entire run.
Note: will also create issues addressing making hnswLayers dynamic and adding better sandboxing/cleaning after runs leave OOM errors with locks on GPU memory and/or large artifacts
PR: #21
Currently the sweeps logic is too universal with it's logic. The PR that addresses this issue will add ability to exert more fine-grained control which is very useful for running experiments as well as benchmarks. E.g. The suggested number of hnswLayers is dynamic based on the number of our graph degree and number of vectors and since the size of the graph degree varies within a sweep, it would be a waste of time to include all of them since we mathematically know which are better. Similarly, if we wanted to test different values of cuvsWriterThreads, we would probably also want to change the value of flushFreq to enable a sweep without lots of OOMs which can poison an entire run.
Note: will also create issues addressing making hnswLayers dynamic and adding better sandboxing/cleaning after runs leave OOM errors with locks on GPU memory and/or large artifacts
PR: #21