You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Support starting benchmark tasks using taskset on Linux #52233
Our benchmark tasks must be modified to add a taskset command to pin the CPU the benchmark will run on. This is needed because now CPUs come with performance cores and energy efficient cores, making it harder to have reliable results otherwise.
Activity
ryanaslett commentedon Mar 27, 2024
FYI: It appears as though the p cores are 2 threads each, and the e cores are only one. This is the output of lscpu on one of the machinees:
So it should just be a matter of
taskset -c 0-11 <command>for the perf cores.RafaelGSS commentedon Mar 27, 2024
FWIW A long time ago I did research to see the impact of CPU 0 on Node.js tasks and apparently, it doesn't affect Node.js workload. https://github.com/RafaelGSS/lies-and-benchmark/blob/76a261381ab1fae378bc24ff1853d39e48e8bcde/cpu-0-variation/cpu-http.js#L25
I did a more comprehensive benchmark during that research, but I couldn't find any reference to it in my personal notes.
thisalihassan commentedon Mar 28, 2024
I will make a PR for this
mcollina commentedon Mar 28, 2024
@RafaelGSS the reason why this is needed is to remove variance from the tests, because on new machines there are different types of cores.
benchmark: conditionally use spawn with taskset for cpu pinning
benchmark: add ipc support to spawn stdio config
benchmark: add ipc support to spawn stdio config
benchmark: inherit stdio/stderr instead of pipe
benchmark: add ipc support to spawn stdio config
benchmark: inherit stdio/stderr instead of pipe
benchmark: conditionally use spawn with taskset for cpu pinning
benchmark: add ipc support to spawn stdio config
benchmark: inherit stdio/stderr instead of pipe
benchmark: conditionally use spawn with taskset for cpu pinning
benchmark: add ipc support to spawn stdio config
benchmark: inherit stdio/stderr instead of pipe