Mercurial > hg
comparison doc/docchecker @ 49899:3eef8baf6b92
worker: avoid reading 1 byte at a time from the OS pipe
Apparently `pickle.load` does a lot of small reads, many of them
literally 1-byte, so it benefits greatly from buffering.
This change enables the buffering, at the cost of more complicated
interaction with the `selector` API.
On one repository with ~400k files this reduces the time by about ~30s,
from ~60 to ~30s. The difference is so large because the actual updating
work is parallellized, while these small reads are bottlenecking the
central hg process.
author | Arseniy Alekseyev <aalekseyev@janestreet.com> |
---|---|
date | Fri, 06 Jan 2023 15:17:14 +0000 |
parents | 6000f5b25c9b |
children |
comparison
equal
deleted
inserted
replaced
49898:024e0580b853 | 49899:3eef8baf6b92 |
---|