3 ms·
AMD Ryzen 5950x and Node.js workers = 2M RPS
I've just received my new computer based on Ryzen 5950x, it's a real Beast!
One of the first thing I did was to benchmark it with my favorite language, Node.js :)
I've made all the tests below with WRK as the client
for the server part I used Cloudgate which is an open source multi-threaded Node.js application server, more details here: https://github.com/elestio/cloudgate
My benchmark results:
---------------------
Single thread test:
> wrk -t1 -c256 --latency http://127.0.0.1:3000/cloudgate/debug/raw
Running 10s test @ http://127.0.0.1:3000/cloudgate/debug/raw
1 threads and 256 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 1.03ms 464.75us 4.59ms 53.66%
Req/Sec 123.98k 6.97k 131.51k 74.00%
Requests/sec: 123391.18
Transfer/sec: 6.00MB
---------------------
High concurrency:
> wrk -t16 -c1024 --latency http://127.0.0.1:3000/cloudgate/debug/raw
Running 10s test @ http://127.0.0.1:3000/cloudgate/debug/raw
16 threads and 1024 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 1.61ms 3.37ms 57.94ms 89.52%
Req/Sec 128.50k 24.87k 160.21k 81.75%
Requests/sec: 2038979.20
Transfer/sec: 99.17MB
---------------------
Execute Node.js function 1 (simple calculation + string manipulation)
> wrk -t16 -c256 --latency http://127.0.0.1:3000/tests/simple
Running 10s test @ http://127.0.0.1:3000/tests/simple
16 threads and 256 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 799.45us 0.98ms 36.20ms 94.11%
Req/Sec 23.18k 3.32k 64.08k 91.03%
Requests/sec: 366835.61
Transfer/sec: 192.06MB
- Irishsteve 6y agoWould you run the elastic search benchmarks and report numbers ?
- shyim 6y agoDo you have a Script?
- js4ever 6y agoIf you want to run the benchmark on your own hardware: Install cloudgate: wget -O - https://cloudgate.terasp.net/CDN/cloudgate.sh https://cloudgate.terasp.net/CDN/cloudgate.sh | bash Create a sample project based on a template: cloudgate --create /tmp/myproj then type 0 to create a project based on "CatchAll" sample Finally start cloudgate on your new project path: cloudgate -r /tmp/myproj Then you can run the same wrk commands above in my original post
- 1MachineElf 6y agoCan you specify what RAM you are using, how many RAM slots are populated, and what it's speed is?
- js4ever 6y agoAre you referring to this? https://elasticsearch-benchmarks.elastic.co/ https://elasticsearch-benchmarks.elastic.co/ If yes all the tests are based on search queries ... And this is a web application server, so that would be an apple to orange comparison. But I'm planning to compete in the next round of techempower which compare web app servers :)
- Irishsteve 6y agoMy bad I didn’t mean it as a comparable benchmark. Just a different benchmark that is interesting to me :)
- claudiug 6y agoyour fav language, nodejs, i guess you mean javascript
- js4ever 6y agoIndeed, I meant javascript :p