Предположим, у меня есть VHD, расположенный на диске A, смонтированном на Windows Server 2016.
Если я включу кэширование записи для диска A и VHD, будет ли у меня двойное кэширование записи?
Предположим, я поместил этот VHD в Storage Spaces и создал виртуальный диск с 5 ГБ кэша обратной записи.
Редактировать:
Ввод-вывод виртуальной машины не кэшируется, на самом деле это очень легко проверить: запустите диспетчер процессов, который инкапсулирует старую функциональность FileMon, и посмотрите флаги доступа к файлам .vhd (x) - FILE_FLAG_NO_BUFFERING должен быть поднят и объединен с кучей разных "подсказок" "флаги.
https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
Внутри виртуальной машины вы можете включить или отключить дисковый кеш - это не имеет значения, результаты будут примерно такими же.
https://www.starwindsoftware.com/blog/a-little-about-disk-write-cache-on-windows-vm
Тем не менее, вы по-прежнему будете кэшировать операции ввода-вывода на уровне файловой системы внутри виртуальной машины, используя vRAM.
VHD используют небуферизованный ввод-вывод и не проходят через диспетчер кеша Windows. Файлы, которые вы храните на VHD, могут быть кэшированы, но сам VHD - нет.
Кроме того, дисковые пространства не поддерживаются при использовании VHD, главным образом потому, что они не могут определить, хранятся ли базовые данные с избыточностью.