Skip to content

[question] Performance of parallel_download #6732

@acmeijer

Description

@acmeijer

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?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions