Verify latest release
pnpm version
pacquet: git d130e0f
Which area(s) of pnpm are affected? (leave empty if unsure)
No response
Link to the code that reproduces this issue or a replay of the bug
No response
Reproduction steps
N/A - private repo. Don't know a public one at the top of my head with a few thousand deps.
Describe the Bug
On a large workspace with ~3400 packages in the lockfile:
pacquet install --frozen-lockfile:
real ~32–34s
user ~1.5s
sys ~155–165s
pnpm install --frozen-lockfile --ignore-scripts:
real ~27–28s
user ~9s
sys ~56s
Bounded Rayon reduces the syscall contention:
RAYON_NUM_THREADS=4 pacquet install --frozen-lockfile:
real ~21s
sys ~54s
Samply confirms Rayon workers are heavily saturated, and stacks generally bottom out in filesystem calls. Bounding threads is obviously the wrong long-term move, but it confirms the syscall contention cause.
Expected Behavior
pacquet should be faster than js-based pnpm, not slower.
Which Node.js version are you using?
24.16.0
Which operating systems have you used?
If your OS is a Linux based, which one it is? (Include the version if relevant)
No response
Verify latest release
pnpm version
pacquet: git d130e0f
Which area(s) of pnpm are affected? (leave empty if unsure)
No response
Link to the code that reproduces this issue or a replay of the bug
No response
Reproduction steps
N/A - private repo. Don't know a public one at the top of my head with a few thousand deps.
Describe the Bug
On a large workspace with ~3400 packages in the lockfile:
Bounded Rayon reduces the syscall contention:
Samply confirms Rayon workers are heavily saturated, and stacks generally bottom out in filesystem calls. Bounding threads is obviously the wrong long-term move, but it confirms the syscall contention cause.
Expected Behavior
pacquetshould be faster than js-basedpnpm, not slower.Which Node.js version are you using?
24.16.0
Which operating systems have you used?
If your OS is a Linux based, which one it is? (Include the version if relevant)
No response