smallnest/go-web-framework-benchmark

Empty results in the CSV files used to make gnu plots

coolwednesday opened this issue · 6 comments

I was trying to add a new framework but when I run the tests , I get empty results in the testResults folder and hence the gnuplots are also not created. Can you hep me understand what am I missing ?

gnuplot not installed?
You can follow the steps in https://github.com/smallnest/go-web-framework-benchmark/blob/master/test.sh#L32 and check which step has some problems.

Screenshot 2024-09-11 at 1 14 58 PM I have already installed gnuplot and wrk . When I run the script ...this is what I see.....for all frameworks and the testresults generated are as follows : Screenshot 2024-09-11 at 1 16 22 PM and an error message by gnuplot about array range out of bounds at the end when all frameworks are tested.

Did you changed the test.sh? I seems -d uses a wrong format.
It should be like wrk -t1 -c100 -d30s http://http://127.0.0.1:8080/hello.

wrk should not print error. The nohup.out should looks:
image

I am facing this issue while running locally, but it successfully ran in CodeSpace.

I do have a doubt though .... What are the pipelining cases about ? Can I get a context or usecase of what it actually test .... ? I am referring to concurrency_pipeline.png & benchmark-pipelinge.png.

Does your wrk support lua?
The test uses pipeline.lua to test pipeline:

throughput=$(wrk -t$cpu_cores -c$4 -d30s http://127.0.0.1:8080 -s pipeline.lua --latency -- /hello 16| grep Requests/sec | awk '{print $2}')

https://en.wikipedia.org/wiki/HTTP_pipelining

I figured out the issue ...the test.sh file had few parts of the scripts specific to linux systems and hence gave an error on my MacOS system. Thanks for the help anyways. Adding a comment about it could be helpful, in case noobs like us try it out lol!