Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 10 (http://forum.oszone.net/forumdisplay.php?f=118)
-   -   [решено] Проблема с виндовым кэшем дисков (http://forum.oszone.net/showthread.php?t=348077)

Tigeron 23-02-2021 19:17 2951046

Проблема с виндовым кэшем дисков
 
Windows 10 Pro 19043.844. Не могу никак отключить ненужный мне кеш дисков. В оборудовании кеш отключал, Sysmain отключен, форматировал под разный размер кластера, не помогло.
Проблема состоит в том, что во время копирования файла на hdd, скорость записи на приёме заведомо медленнее скорости чтения источника, но он его копирует на диск со скоростью чтения источника, чего не может быть и очевидно это кэш, потом скорость падает до половины реальной скорости записи hdd и после завершения загрузки файла ещё пару минут дописывает в hdd этот файл.
Дело точно не в самом hdd, потому что на другом hdd то же самое, на ссд проблема неактуальная потому что он и так быстро пишет, но вероятно и его тоже касается.
Меня эта ситуация напрягает, если кто знает как это решить, дайте знать.
Скрин графика с диспетчера задач прилагается.

Решение
Слава богам, лекарство получено, виндовый кэш побеждён и оставлен аппаратный.
1. Ставим HOT PLUG в биосе над нужным диском.
2. Ставим такие ключи в реестре (НАЗВАНИЕ и непонятные_цифры_буквы подставляем свои).
Код:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters\Classpnp]
"UserRemovalPolicy"=dword:00000003

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters\Disk]
"UserWriteCacheSetting"=dword:00000001
"CacheIsPowerProtected"=dword:00000000

3. Перезагружаемся.

Спасибо, Avatar-Lion, что поддержал беседу, что навело меня на нужные мысли, что в итоге решило мою проблему.

Avatar-Lion 23-02-2021 19:43 2951047

У любого HDD есть кэш, это отдельная микросхема на его плате, типа DDR-памяти. Другое дело, что если вы каким-то образом реально отключите ее, то скорость упадет еще больше и будет всегда такой, как на конце графика. Не надо считать себя умнее инженеров, которые придумали это устройство, им виднее как оно устроено и как должно работать.

Плюс вы не приводите тип данных, на которых измеряете скорость. Чем больше мелких файлов, тем дольше придется ждать завершения операции копирования, так что тестируйте лучше на одиночных крупных файлах по 8-10Гб, так вы получите устоявшуюся скорость записи и тогда можно уже будет продолжить беседу. И да, не забудьте привести конкретные цифры (скорость записи) по итогу тестирования, система ведь показывает вам скорость записи.

Tigeron 23-02-2021 20:01 2951049

Размер кеша судя по всему 2 гигабайта, мой hdd имеет размер кеша 64мб, никакие инженеры здесь не при чём, и их мнение мне не важно, тест на больших файлах.
Раньше ничего подобного не было, поэтому и создал тему, чтобы выяснить как это отключить.
Причины - меня не устраивает, что система мне говорит, что файл записан, а по факту он не пойми где и рисуется ёлка на hdd.
ИЗ очевидных соображений, если отключится питание, то я потеряю данные, потому что ~60-90 секунд система дописывает на диск это бред.

Avatar-Lion 23-02-2021 20:28 2951054

Если вы так боитесь потерять данные, то покупайте ИБП. Кэширование для того и было придумано, чтобы дать пользователю как можно скорее возможность продолжить работу с устройством. Но если так хочется, можете отключить кэширование в Диспетчере устройств, в свойствах нужного HDD. Правда, кэширование на аппаратном уровне (кэш на самом HDD) вы не отключите никак, ибо так уж устроено любое запоминающее устройство: сначала данные поступают в некий буфер, а потом уже отправляются непосредственно в само хранилище, будь то магнитный диск или ячейка флэш-памяти.

Tigeron 23-02-2021 20:34 2951055

Во первых, я не боюсь потерять данные.
Во вторых, это не аппаратный кэш, потому что 500мб/с в течение нескольких секунд не может быть, потому что кеш у hdd встроенный 64мб.
В третьих, в диспетчере устройств я выключал политику и ничего не менялось, что во второй раз доказывает, что тут не при чём кеш hdd.
В четвёртых, всё это я уже описывал в шапке, может стоит внимательнее читать?

Tigeron 23-02-2021 20:46 2951057

В доказательство того, что политика не влияет на "магическую" скорость записи в начале.

Avatar-Lion 23-02-2021 21:16 2951061

Windows вычисляет скорость чтения \ записи в течение первой секунды, после чего обновляет индикатор раз в N секунд, пытаясь показать пользователю реальную скорость чтения \ записи. Так что "настоящие" цифры в начале чтения \ записи вы не увидите никогда. Во-вторых, надо понимать, что разные HDD в связке с разными SATA-контроллерами и разными драйверами ведут себя по-разному, не говоря уж о том, что различные фоновые процессы могут оказывать сильное влияние на показатели чтения \ записи.

На моем домашнем ПК тоже первые секунды показывает запись со скоростью 800Мбайт\с, если вас это успокоит, т.е. проблема не только у вас такая. Хотя как по мне, никакой проблемы тут нет. Мало ли чего там ОС показывает... Главное, что на время копирования как таковое это не влияет или влияет положительным образом, поскольку можно сразу начинать работать со скопированными файлами, пока они там на фоне потихоньку дописываются из кэша на жесткий диск.

Tigeron 23-02-2021 21:45 2951063

Проблема есть, система сообщает, что файл скопирован, по факту он ещё не скопирован, значит сообщение системы ложное, меня не устраивают ложные данные при копировании файлов.
1. Никакие фоновые процессы не оказывают влияние у меня.
2. Раньше была ровная полка на 130мб/с с самого НАЧАЛА и до КОНЦА.
3. Сейчас с флешкой скорость ровная и показывается как и с переносным hdd и она без "мифического" кеша и ровная с точностью до пикселя.
4. Sata драйвер тот же, что и всегда Intel(R) 8 Series/C220 Chipset Family SATA AHCI Controller 14.8.18.1066 06.09.2017.
Из этого следует, что usb устройства не используют дурацкий эфемерный кеш и тот же hdd подключенный по sata получает этот магический кеш, а по usb не получает, значит этот кеш необязателен и может быть отключен, вопрос только как.

Avatar-Lion 23-02-2021 22:18 2951064

Понятно. Верните на SATA-контроллер стандартный AHCI-драйвер из состава Windows 10.

Tigeron 23-02-2021 22:29 2951066

Поставил стандартный, никаких изменений.

Avatar-Lion 23-02-2021 22:34 2951068

В безопасном режиме такие же скорости?

Tigeron 23-02-2021 22:47 2951072

Да, такие же.

Avatar-Lion 23-02-2021 23:04 2951074

Могу тогда только предложить выделить отдельный диск для экспериментов и начать устанавливать туда чистые версии в обратном порядке: 20Н2, 2004, 1909 и т.д. Если везде будет одно и то же, значит, таковы особенности вашего железа. Если же на какой-то версии поведение индикатора копирования станет таким, как раньше, то останетесь на ней.

Tigeron 24-02-2021 13:44 2951100

Пробовал на 19041, то же самое. По наблюдениям выяснилось, что при копировании в диспетчере задач растёт размер графы "кэшировано", раньше не замечал этого из-за меньшего объёма озу(8гб), то есть винда не могла физически раздуть кеш так, чтобы hdd потом долго сидел и дописывал файлы, сейчас 16 и система не стесняясь жрёт всю свободную память под этот кеш при копировании больших файлов.

Avatar-Lion 24-02-2021 15:24 2951115

Могу добавить, что тут "виноват" SSD, поскольку лично у меня все эти сверх-скорости видны в начале копирования только при копировании данных с SSD на HDD. Если просто с одного HDD на другой HDD копировать, то скорость изначально соответствует обычной и держится одинаковой на протяжении всего копирования.

Tigeron 24-02-2021 17:46 2951158

SSD не при чём, с диска на этот же диск то же самое

Avatar-Lion 24-02-2021 18:34 2951164

Хм-м... Ну, в Десятке где-то есть центр отзывов, можете им написать письмо и даже заснять видео (там есть такая функция), чтобы проиллюстрировать сей процесс. Правда, я не уверен что они сочтут неправильные показатели скорости за что-то серьезное. Мало ли чего там Проводник пишет... На скорость-то как такую это не влияет, а это главное. И более грубые ошибки в Десятке кое-где до сих пор не исправлены, поэтому на быструю реакцию Майкрософта можете не рассчитывать.

Tigeron 24-02-2021 19:21 2951171

Я уже поискал и на англоязычных форумах и не один я задаюсь такой проблемой. Раннее упоминание точно такого же сюжета аж в 2016 и до сих пор майкам плевать. Пример с переводом "Когда начинается процесс записи, объем кэшированной памяти составляет около 2 ГБ, но он быстро увеличивается до 60 ГБ .. Затем, когда файл удаляется, он мгновенно возвращается к 2 ГБ. Так что я уверен, что это число представляет файловый кеш в сочетании с необъяснимо высокой скоростью записи в начале файла. Это просто делает невозможным отслеживание фактического процесса записи файла без синхронной записи на диск, что значительно замедляет процесс. Почему нельзя отключить 60гб бессмысленного кеширования файлов? Microsoft снова наносит удар xD" https://overclockers.ru/lab/show/156...rovanii_zapisi
Судя из этой статьи кеширование записи придумали ещё во времена Windows 2000 и IDE, НО! там им можно было управлять, в том числе выключать. Отсюда я не думаю, что дело только в Win 10, а просто при 8гб ОЗУ не было заметно этого эффекта.

Vadikan 24-02-2021 19:36 2951173

Цитата:

Цитата Tigeron
Это просто делает невозможным отслеживание фактического процесса записи файла без синхронной записи на диск, »

Непонятно, это ваши мысли или вы транслируете кого-то без ссылки. А так, можно в память писать, WPR в помощь (windows performance recorder).

Avatar-Lion 24-02-2021 19:45 2951176

Цитата:

Цитата Tigeron
объем кэшированной памяти составляет около 2 ГБ, но он быстро увеличивается до 60 ГБ »

Откровенное и бессмысленное враньё. У меня 12Гб RAM и при копировании файла объёмом в 14Гб у меня должен был полностью забиться кэш, но он увеличивается только где-то на пару гигов, а потом обратно освобождается. Не надо верить всему подряд в интернете, даже если это и написано на английском языке. Чайников и ламеров в США не меньше, чем в РФ.

В принципе, есть сторонние утилиты, которые заменяют стандартное системное окно при копировании файлов и показывают свои индикаторы, таймеры и прочую инфу. Можете попробовать их, заодно отпишетесь как оно там у них - тоже космические скорости показывают или у них всё норм.

Tigeron 24-02-2021 19:58 2951179

При мне лично, при копировании файлов на 35 гигов вся свободная память (14гб) была забита кешем, то есть всего в 2 раза больший объём, чем сам кеш, он мог легко записывать гигов 100 с быстрого ссд на медленный при высоком объёме озу, по-видимому 64гб, значит это не может быть ложью, человеку нечего делать как врать про кеш и писать в сапорт майкам? Бред. Никакие утилиты не могут повлиять, потому что файл, который по факту валяется ещё в кеше уже показывается в проводнике записанным.

Avatar-Lion 24-02-2021 20:14 2951182

Цитата:

Цитата Tigeron
файл, который по факту валяется ещё в кеше уже показывается в проводнике записанным »

Вообще-то оно так еще со времён Windows XP повелось, если вы вдруг не в курсе. Безопасное извлечение устройства зачем придумали? Именно для этого: система проверяет все ли данные переписаны на диск и, если нет, уведомляет об этом пользователя. Реально где-то 5-7 секунд проходило с того момента как Проводник показывал что файл на диске до того момента, когда он там оказывался по факту. Windows 10 просто унаследовала этот механизм от более старых систем, которые разрабатывались еще в те времена, когда ни о каких SSD и домашних ПК с кучей RAM никто не задумывался даже.

Я согласен с тем, что ОС по факту вводит пользователя в заблуждение, демонстрируя что файл скопирован, в то время как на самом деле он все еще переписывается, но я бы не стал на вашем месте уделять этому так много внимания. Если вас это утешит, то и 20Н2, и следующая версия, которая должна выйти этой весной, были направлены в первую очередь на исправление всевозможных багов и глюков. Я, правда, ни разу ни с какими проблемами при эксплуатации Windows 10 не сталкивался, но тем не менее, можно понадеяться на то, что Майкрософт рано или поздно все же исправит некорректное поведение системы при копировании файлов. Не зря же они взяли курс на исправление ошибок, в конце концов.

Iska 24-02-2021 20:26 2951185

Цитата:

Цитата Tigeron
Судя из этой статьи кеширование записи придумали ещё во времена Windows 2000 и IDE, »

Нет. Кэширование придумали во времена оны, а Microsoft начала его использовать c MS DOS 4.01.

Цитата:

Цитата Avatar-Lion
Вообще-то оно так еще со времён Windows XP повелось »

И, опять же, со времён MS DOS 4.01.

Tigeron 24-02-2021 20:48 2951187

По факту это не ошибка, а особенность и судя по тому, что их не волнует невозможность отключения кэширования записи в память, то ничего они делать не будут, но ждать после того, как файл появился уже в проводнике секунд 60-90 это бред, в чём сложность дать выбор отключения этого шлакокэша я не понимаю, ведь они дают выбор выключить аппаратный кэш, но виндовый нет. Да тут даже десятка не при чём, раз уж кеш записи в озу, как уточнили выше, так давно используется.

Avatar-Lion 24-02-2021 22:13 2951193

Цитата:

Цитата Tigeron
ждать после того, как файл появился уже в проводнике секунд 60-90 это бред »

Почему бред-то? Для меня это удобно, т.к. можно сразу приступать к работе с файлом, например, переименовать его или открыть в другой программе. Файл тем временем потихоньку допишется в фоновом режиме.

Тут вопрос-то элементарный на самом деле: зачем ждать, когда файл скопируется целиком, если можно этого уже не ждать? Вы себе столько RAM для чего напихали в ПК? Уж наверное не для красоты, а чтобы сделать работу с ПК более быстрой и, следовательно, комфортной. ОС вам эту возможность предоставляет. А то, что эту фишку нельзя отключить... Ну, монополия на рынке ОС дает Майкрософту возможность не думать о нуждах отдельных пользователей, им проще делать систему для домохозяек, в то время как интересы всяким там гиков учитываются по остаточному принципу. В общем, капитализм, счастье и т.д.

Tigeron 24-02-2021 22:26 2951194

охренеть как удобно сэконоить 5 секунд ради того, чтобы ждать потом 90, вершина удобности

Avatar-Lion 24-02-2021 22:33 2951195

А зачем ждать-то? Файл кинули куда вам надо и всё, можете с ним работать. Вас, строго говоря, вообще не должно беспокоить когда он по факту запишется на диск. Что вам даст эта информация? Вы же за компьютером все-таки сидите не для того, чтобы контролировать все ли ваши файлики записались или нет. Этим занимается ОС. Она освобождает вам время, которое вы можете потратить на другие дела.

Tigeron 24-02-2021 23:47 2951205

С интернета скорость ниже но файл всё равно кешируется и в итоге без кеша файл был бы уже фактически на диске, а с ним он ещё валяется в кеше и какой здесь плюс?
Во вторых из-за того, что файлы валяются больше минуты в кэше нельзя сразу выключить пк.
В третьих, у ссд скорость записи гораздо выше, НО при копировании с hdd, он тоже кэшируется, по факту без кеша файл также был уже бы на ссд, но с кешем он в нём ещё где-то валяется, может здесь какой-то плюс? Как нету плюса?
Решение кстати найдено, поставил под hdd в биосе хот плаг и внезапно вдруг появилась настройка как у флешек, удивительно, значит всё таки можно. НО майки настолько конченые, что если выключить их недокеш, то нельзя включить аппаратный, гениально, что сказать. Подскажите, может, кто знает где в реестре хранятся ключи политик дисковых устройств, может обмануть как-нибудь получится и включится аппаратный кеш с отключенным виндовым.

Tigeron 25-02-2021 00:14 2951206

Слава богам, лекарство получено, виндовый кэш побеждён и оставлен аппаратный.
1. Ставим HOT PLUG в биосе над нужным диском.
2. Ставим такие ключи в реестре (НАЗВАНИЕ и непонятные_цифры_буквы подставляем свои).
Код:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters\Classpnp]
"UserRemovalPolicy"=dword:00000003

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\НАЗВАНИЕ\непонятные_цифры_буквы\Device Parameters\Disk]
"UserWriteCacheSetting"=dword:00000001
"CacheIsPowerProtected"=dword:00000000

3. Перезагружаемся.

Спасибо, Avatar-Lion, что поддержал беседу, что навело меня на нужные мысли, что в итоге решило мою проблему.


Время: 05:03.

Время: 05:03.
© OSzone.net 2001-