Speeding up image builds?
I often find myself waiting for image builds to run. What are some steps I can take to make them faster? Generally, I find that image builds are I/O bound (CPU usage remains quite low), so one option would be to use a machine with better I/O. What is the best option for this? Is this something where thin provisioning (instead of thick provisioning) causes a large performance penalty? Or is the only solution to throw hardware at the problem? If the latter, what would better hardware be? -- Sincerely, Demi Marie Obenour (she/her/hers)
Demi Marie Obenour <demiobenour@gmail.com> writes:
I often find myself waiting for image builds to run. What are some steps I can take to make them faster?
Generally, I find that image builds are I/O bound (CPU usage remains quite low), so one option would be to use a machine with better I/O. What is the best option for this? Is this something where thin provisioning (instead of thick provisioning) causes a large performance penalty? Or is the only solution to throw hardware at the problem? If the latter, what would better hardware be?
Okay, well, the absolute best thing we could do would be to write a vhost-user-blk backend that lazily populates an EROFS image as the disk is read from. Everything short of that is a compromise between effort and results. I tend to just wait, so I haven't looked too much into this. It is way faster on my Apple Silicon MacBook than any x86_64 system I've tried, but I couldn't tell you why. I've tried building on tmpfs in the past, but IIRC it didn't help much for me. Maybe it would for you though?
participants (2)
-
Alyssa Ross -
Demi Marie Obenour