k-NN icon indicating copy to clipboard operation
k-NN copied to clipboard

[WIP] add single node benchmark script

Open luyuncheng opened this issue 1 year ago • 2 comments

Description

In #1053, it shows that we can create single-node benchmarking docker application. so when i do benchmarking for different algorithm, i write some docker-compose to do some benchmark.

In os-node, i use volumes to mapping this repo and reinstall k-nn plugins. In os-client, i use volumes to mapping this repo and datasets for testing different yaml.

Issues Resolved

#1053

Check List

  • [ ] New functionality includes testing.
    • [ ] All tests pass
  • [ ] New functionality has been documented.
    • [ ] New functionality has javadoc added
  • [ ] Commits are signed as per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.

luyuncheng avatar Sep 06 '23 13:09 luyuncheng

Codecov Report

Merging #1097 (5f09690) into main (cc5cd7e) will not change coverage. The diff coverage is n/a.

@@            Coverage Diff            @@
##               main    #1097   +/-   ##
=========================================
  Coverage     84.95%   84.95%           
  Complexity     1184     1184           
=========================================
  Files           159      159           
  Lines          4813     4813           
  Branches        433      433           
=========================================
  Hits           4089     4089           
  Misses          528      528           
  Partials        196      196           

codecov[bot] avatar Sep 06 '23 13:09 codecov[bot]

This is a really good start. A couple points:

  1. I would add the files under its own directory in benchmark. Something like benchmark/docker
  2. I was thinking that it would be good to have a custom dockerfile for the node so that as part of the multistage build, the plugin could first be built and then the machine setup.
  3. Adding README in the file would be good

In the future it would be good to have some container telemetry over the course of the test as well (memory usage, cpu usage, etc.). But this can be taken for another review!

jmazanec15 avatar Sep 12 '23 04:09 jmazanec15

Closing for now. I started a project over here (https://github.com/jmazanec15/opensearch-knn-single-node-experiments) we can build on top of and add functionality

jmazanec15 avatar Jul 02 '24 15:07 jmazanec15