Comment by zahlman
1 month ago
> uncompressing packages while they are still being downloaded
... but the archive directory is at the end of the file?
> no python VM startup overhead
This is about 20 milliseconds on my 11-year-old hardware.
1 month ago
> uncompressing packages while they are still being downloaded
... but the archive directory is at the end of the file?
> no python VM startup overhead
This is about 20 milliseconds on my 11-year-old hardware.
HTTP range strikes again.
As for 20 ms, if you deal with 20 dependencies in parallel, that's 400ms just to start working.
Shaving half a second on many things make things fast.
Althought as we saw with zeeek in the other comment, you likely don't need multiprocessing since the network stack and unzip in the stdlib release the gil.
Threads are cheaper.
Maybe if you'd bundle pubgrub as a compiled extension, you coukd get pretty close to uv's perf.
Why are you starting a separate Python process for each dependency?
Real thread are very recent and didn't exist when uv was created. So you needed multiprocesses.
2 replies →
Using the -S (“isolated”) flag can maybe cut startup in half.