APFS does suck though, don't get me wrong
edit: I just tested, 36s for an `npm i` on a decently large project I have locally, 46s with an overlay fs
`rm -rf node_modules && docker run --rm -ti -v $PWD:/app node:20.19.0-alpine3.20 sh -c "cd /app && time npm i"`
So an overlay FS (if I'm understanding you/the OP correctly), not the VM's disk
APFS does suck though, don't get me wrong
edit: I just tested, 36s for an `npm i` on a decently large project I have locally, 46s with an overlay fs