я не могу понять, как цепочка
app -> read disk block <=> guest kernel <=> guest cache <=> hypervizor <=> native kernel <=> native cache <=> block device
быстрее, чем
app -> read disk block <=> native kernel <=> native cache <=> block device
В обоих случаях native cache будет хранить ВСЕ кэши ВСЕХ гостей/контейнеров, однако в случае с контейнером не будет лишнего раундтрипа до хостового кэша (или не дай бог физического девайса) и не будет перерасхода памяти на кэш.