Когда мой компьютер под управлением Windows Server 2008 R2 выполняет какие-либо операции с большими дисками (копирование файлов размером 10 ГБ с одного диска на другой, копирование похожих файлов по сети, объединение снимков HyperV, сжатие больших файлов), производительность всей машины сильно снижается, все перестает отвечать на запросы , Это заметно в любой ситуации, когда доступ к диску достаточно велик, чтобы не поместиться в кэш.
Есть ли какие-либо настройки для настройки этого поведения? Я могу принять более медленную передачу файлов, если это даст мне большую отзывчивость.
Сведения о системе: Dell Optiflex 960, Core 2 Quad Q9650, 8 ГБ ОЗУ, 2 диска SATA - 320 ГБ (ST3320418AS) и 1 ТБ (ST31000528AS), NCQ активен на обоих, Intel 82564LM-3 Gigabit Ethernet, графика ATI HD 3450, мост Intel ICH10. У нас есть несколько таких машин, каждая из которых демонстрирует одинаковое поведение. Я думал, что для рабочей станции это было излишним, видимо, я ошибся.
Обновление: я думаю, я не должен был упоминать HyperV вообще. Приведенная выше конфигурация является стандартной настройкой рабочей станции в компании, в которой я работаю, это не какой-либо сервер. У меня работает не более 3 виртуальных машин, и обычно я единственный, кто обращается к ним. Тем не менее, замедление происходит, даже когда не работают виртуальные машины. На Linux-машине я просто ionice
скопировал бы процесс и мог бы забыть об этом, есть ли способ управлять приоритетами ввода-вывода в Windows?
Ответы:
Использование сервера в качестве настольного компьютера ... установлен драйвер для видеокарты? (просто предложение)
http://blogs.msdn.com/b/virtual_pc_guy/archive/2009/11/16/understanding-high-end-video-performance-issues-with-hyper-v.aspx
Обновление: на i7 с поддержкой SLAT или EPT вы можете сделать что-то подобное {только для виртуальных машин} через RemoteFX. Но запуск Aero на хосте может ухудшить производительность.
источник
Я склонен сказать, что это происходит, если вы запускаете сервер hyper-v на неподходящем оборудовании. У меня было то же самое на перенастроенных системах рабочих станций, где бюджет ввода-вывода ard-диска был на нижнем уровне.
С тех пор, как я перешел на правильный raid-контроллер на более мощном сервере, я могу копировать эти вещи со скоростью, которую я считал невероятной раньше (сотни мегабайт в секунду, пока происходят другие вещи). Единственная проблема заключается в том, что 10 или около того виртуальных машин делают свои ежемесячные патчи оргии.
Я бы предложил проверить: * Среднее время отклика диска, обычно и во время операций * Процент занятости диска.
Для получения дополнительной информации, пожалуйста, опубликуйте полное оборудование - память, процессор, дисковая подсистема и макет.
** Обновить
Вы, должно быть, шутите, чтобы запустить Hyper-V против этого.
Вот некоторые из моих убеждений.
ОБА (!) Возникают проблемы при передаче больших файлов, поскольку IO получает налоги, хотя больший из них ограничен сетью (1 Гбит до 5 часов, затем 4), и генерация комбинации с контроллером ОЧЕНЬ хорошо справляется с ситуацией.
Система с двумя дисками - и, очевидно, 1 ТБ - это не диск с характеристиками, а тот, который сделан для размера, - это все равно что участвовать в гонке Формулы 1 с фиат-пандой. Встроенный не буферизированный контроллер низкой цены означает, что оптимизация ввода-вывода также невозможна. Когда ваша копия файла попадает, бюджет диска полностью уходит в это. Там могут быть некоторые оставленные для ОС, но все остальное .... кто.
По современным стандартам это LOOOOOW конечный сервер или приличные рабочие станции с большим количеством ЦП (8 ГБ ОЗУ - рабочая станция более высокого уровня). Диски не серверного уровня. Это не то, на что я бы поставил гипервизор, кроме демонстраций. Hyper-V похож на базу данных - ему нужен ввод-вывод. Много. Потому что гипервизор полностью убивает «последовательный доступ» и превращает его в случайный, как любая база данных.
Вы должны поместить в нее соответствующие возможности ввода-вывода. Помимо достаточного объема ОЗУ (если вам это нужно), вы можете запускать на них гораздо больше, в отношении виртуальной машины - в противном случае ЦП просто полностью не используется. Я надеюсь, что ваши виртуальные машины сильно нагружают процессор, иначе это впустую.
источник
У меня была похожая проблема: Windows 2008, сервер VMware и сервер нижнего уровня с дисками SATA. Производительность сети и локальное копирование больших файлов были плохими. После исследования я обнаружил, что режим SATA был в эмулированной IDE в конфигурации BIOS. Изменился на родной SATA и производительность немного увеличилась. Однако диски SATA - не лучшая идея для виртуализации. Три vms и другие задачи с хоста означают, что доступ к дискам будет узким местом.
источник
Возможно, вы захотите попробовать разгрузить как можно больше дискового ввода-вывода во внешнюю сеть SAN. (Дробон вполне бы справился с этой задачей). Похоже, хост просто не справляется с количеством операций ввода-вывода. Также может быть полезно убедиться, что драйверы чипсета и контроллера дисков установлены и обновлены.
источник
Похоже, у вас есть 2 диска SATA, и я предполагаю, что на диске 1 ТБ больше активности. Вы не сказали, какой тип дисков, но я также подозреваю, что они не поддерживают NCQ (что немного поможет). Очевидно, у вас есть узкое место IO. Настроенный optiplex 960 не сможет справиться с большими нагрузками ввода-вывода, поскольку я считаю, что два диска используют одну шину (встроенный множитель портов). Вы можете попробовать покупки дополнительной сата карты (мое предложение http://www.newegg.com/Product/Product.aspx?Item=N82E16816318008&cm_re=pci_express_sata- -16-318-008- -Продукт) или что-то подобное. В прошлом я пытался использовать десктопы в качестве сервера и сталкивался с подобными головными болями до такой степени, что теперь я просто выберу дешевый сервер. У HP есть серия ML 110, которая начинается с 400 долларов (и это с ядром i3). Серверные чипсеты почти всегда являются многоканальными контроллерами sata.
источник
Вы можете посмотреть на приоритеты ввода / вывода, используя Resource Monitor. Я также нашел нить с инструментом для их настройки здесь
источник
Я бы начал с установки / запуска Process Hacker . Это как проводник процессов, но лучше.
Начните копирование файла, а затем начните сортировку отображаемых данных в поисках чего-то странного.
Сервис -> Файл страницы - это огромный? Какой это был пик? Проверьте explorer.exe, дважды щелкнув по нему в Process hacker и посмотрите на вкладку Performance. Вот как выглядел мой при копировании папки виртуальной машины (содержащей несколько файлов vmdk различного размера).
Проверьте нижнее окно, которое показывает мой ввод / вывод. Я смотрел и видел, что он упал до нуля, когда он закончил каждый файл.
Увеличивается ли использование ресурса explorer.exe?
Вместо этого всплывает другой процесс? (т.е. AV сканирует процесс копирования?)
Сделайте то же самое в другой аналогичной системе и сравните результаты.
Все ваши ядра используются?
Надеемся, что Process Hacker даст вам дополнительное представление о проблеме.
источник