Could be useful when Jenkins is running in docker (or a containerized platform such as k8s, mesos). Since the Runtime.getRuntime().availableProcessors() would reflect the CPU limit while nproc reflects the number of CPUs o the host.
Reopening as the info pulled from /proc/cpuinfo seems to reflect the host. Which may not accurately reflect the allocated processes if running Jenkins in a container (Docker).