-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Hi!
I thought I'd share some performance numbers from testing out the new parallel_download feature released in 1.23.0. The below numbers were obtained on a VM running Ubuntu 18.04 with 4 virtual cores and 8GB of RAM.
The test set-up was running conan create on a conanfile.py which ends up installing 120 packages each time. The build step only takes 10-20s, so the time taken is dominated by installing packages. I cleared the local cache between each run.
parallel_download = OFF (commented out):
real 4m31.090s
user 0m51.465s
sys 0m10.899s
parallel_download = 2:
real 3m16.367s
user 0m54.972s
sys 0m14.303s
parallel_download = 4:
real 3m19.584s
user 0m56.525s
sys 0m19.725s
parallel_download = 8:
real 4m24.657s
user 1m5.907s
sys 0m35.089s
parallel_download = 16:
real 4m14.652s
user 1m10.295s
sys 0m40.923s
Some points to note:
- going higher on the parallel_download number seems to at some point make the process slower
- CPU load increases when increasing the parallel_download number but does not necessarily speed up whole process
- It looks like decompression speed decreases a reasonable amount per indivual package when using the parallel_download feature. I know this is quite unscientific but I don't know a good way to measure this. Happy to take suggestions to get useful numbers.
The performance increase is great but I was expecting a bit more, so I was wondering if there might be some easy gain to be had - my question is whether there be something slowing down the decompression when using the parallel_download feature and if so if there is a known method of improving this?
- I've read the CONTRIBUTING guide.