Before the decision for numProcs to run in parallel for runtests.sh
was based on _NPROCESSORS_ONLN which harware which attempts to save
power (eg arm(64)) this number may be < numProcs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
80dd47bb5564f1cfc843c8d753096a0a3acfbe2d
__NumProc=`sysctl hw.ncpu | awk '{ print $2+1 }'`
elif [ `uname` = "NetBSD" ]; then
__NumProc=$(($(getconf NPROCESSORS_ONLN)+1))
-else
+elif [ `uname` = "Darwin" ]; then
__NumProc=$(($(getconf _NPROCESSORS_ONLN)+1))
+else
+ __NumProc=$(nproc --all)
fi
while :; do
# Variables for running tests in the background
if [ `uname` = "NetBSD" ]; then
NumProc=$(getconf NPROCESSORS_ONLN)
-else
+elif [ `uname` = "Darwin" ]; then
NumProc=$(getconf _NPROCESSORS_ONLN)
+else
+ NumProc=$(nproc --all)
fi
((maxProcesses = $NumProc * 3 / 2)) # long tests delay process creation, use a few more processors