[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Speeding up dpkg, a proposal

I have another proposal.  It looks like right now dpkg extracts all of
the files in the archive, then for each one, calls fsync() then
rename().  Because this is done serially for each file in the archive,
it forces small, out of order writes that cause extra seeking and queue
plugging.  It would be much better to use aio to queue up all of the
syncs at once, so that the elevator can coalesce and reorder them for
optimal writing.

Further, this processing is done on a per archive basis.  It would be
even better if multiple archives could be extracted at once, and all of
the fsyncs from all of the archives batched up.

Reply to: