Как да стрес тест твърди дискове на вашия компютър или сървър
Кой от вашите твърди дискове е най-бърз и дали наистина е толкова бърз, колкото е обещал производителят? Независимо дали разполагате с настолен компютър или сървър, безплатната програма на Microsoft за Diskspd ще тества стрес и тестването на твърдите дискове.
ЗАБЕЛЕЖКА: Предишна версия на това ръководство е обяснена с помощта на старата помощна програма „SQLIO“ на Microsoft. Microsoft обаче предлага само помощната програма „Diskspd“, която заменя SQLIO, затова актуализирахме това ръководство с нови инструкции.
Защо да използвате Diskspd?
Ако искате да знаете IO способността на вашите дискове, Diskspd прави отличен инструмент. Diskspd ще ви каже максималния капацитет на твърдия диск на сървъра или ще ви насочи към най-бързия твърд диск, който трябва да използвате за тежко натоварване (или просто изискване за компютърни игри) на настолен компютър.
Като пример, нека предположим, че имаме три диска на сървър: F диск, G устройство и C диск. Ако разполагаме с MDF на F устройство, LDF на G устройството и нашата операционна система на нашия C диск, можем да преценим дали нашата настройка е ефективна. Например, ако MDF файлът е най-натовареният файл с най-много прочетени и записани файлове, бихме искали той да е на най-бързото устройство.
Използвайки горния пример с графиките (представляващи пише и чете за OS, LDF и MDF), ние ще поставим нашия MDF файл на най-бързия диск, тъй като нашият MDF е най-натовареният. Ако нашият анализ на Diskspd показа, че F е най-бързият ни диск, бихме поставили MDF файла на диск F.
Къде да изтеглите Diskspd
Microsoft предлага този отличен инструмент безплатно и можете да го изтеглите от Microsoft Technet. Това е дори с отворен код, така че можете да изтегляте и проверявате или променяте изходния код от GitHub.
Diskspd е тестван за работа на настолни версии на Windows 7, 8, 8.1, 10, както и на Windows Server 2012, 2012 R2 и 2016 Технически преглед 5.
След като го изтеглите, ще трябва да извлечете съдържанието на .zip файла в папка на компютъра. Имайте предвид, че архивът съдържа три различни файла "diskspd.exe". Единият в папката “amd64fre” е за 64-битови компютри с Windows, а тази в папката “x86fre” е за 32-битови компютри с Windows. Ако използвате 64-битова версия на Windows и вероятно сте, вероятно ще искате да използвате 64-битовата версия.
Как да извърша стрес тест?
За да извършите един тест, можете просто да извикате команда Diskspd от командния ред с активиран администратор. В Windows 10 или 8.1 щракнете с десния бутон върху бутона Старт и изберете „Команден ред (Admin)“. В Windows 7 намерете прекия път „Команден ред“ в менюто „Старт“, щракнете с десния бутон върху него и изберете „Изпълни като администратор“.
Първо, използвайте CD
за да преминете към директорията, съдържаща Diskspd.exe, която искате да използвате:
cd c: път към diskspd am64fre
В нашия случай това изглеждаше като командата по-долу.
Сега изпълнете командата Diskspd с опциите, които искате да използвате. Ще намерите пълен списък с опциите за командния ред и информацията за употребата в 30-страничния DiskSpd_Documentation.pdf файл, включен в архива Diskspd, който сте изтеглили.
Въпреки това, ако искате да станете и да стартирате бързо, ето примерна команда. Следната команда задава размера на блока до 16K (-b16K), изпълнява 30-секундния тест (-d30), деактивира хардуерния и софтуерния касов (-Sh), измерва статистиката на латентността (-L), използва две заявки за IO на нишка (- o2) и четири нишки (-t4) на цел, използва произволен достъп, а не последователно писане (-r), изпълнява 30% операции за запис и 70% операция за четене (-w30).
Той създава файл в c: file.dat с размер 50 MB (-c50M). Ако искате вместо това да сравните вашия D: диск, например, бихте посочили d: file.dat
Diskspd.exe -b16K -d90 -Sh -L -o2 -t4 -r -w30 -c50M c: \ t
След толкова дълго, колкото сте задали - 30 секунди в горния тест, резултатите от теста ще бъдат отпечатани в командния ред и можете да ги прегледате.
Консултирайте се с резултатите и ще видите средния MB / s, достигнат по време на теста, колко операции по писане са извършени секунда, колко операции за четене са извършени секунда, и общата сума на входно / изходните операции (IO) за секунда. Тези статистически данни са най-полезни, когато се сравняват няколко диска, за да се види кой е по-бърз за определени операции, но те също ще ви кажат точно колко IO твърд диск може да обработи.
Можете също да изхвърлите резултатите в текстов файл, който можете да видите по-късно с> оператора. Например командата по-долу изпълнява същата команда както по-горе и поставя резултатите в файла C: \ t.
Diskspd.exe -b16K -d90 -Sh -L -o2 -t4 -r -w30 -c50M c: \ t
Повторете този процес за другите си устройства и сравнете.
Персонализиране на командата за стрес тест
Ако се опитвате да разберете кой е най-бързият твърд диск за определено работно натоварване, трябва да създадете команда, която най-добре съответства на това натоварване. Например, ако е сървър, който чете само данни и не пише, трябва да извършите тест от 100% четения, който не измерва никаква производителност на запис. Изпълнете този стрес-тест на няколко диска и сравнете резултатите, за да видите кой е по-бърз за този тип работа.
Имайте предвид, че има много, много други опции в командния ред, които можете да зададете за Diskspd.exe. Ще намерите най-пълния актуализиран списък в документацията, която идва с изтегления файл Diskspd.exe, но ето някои важни опции:
- -w означава процент на операциите за запис и четене. Например въвеждането на -w40 ще извърши 40% операция на запис и по този начин 60% операция за четене. Въвеждането -w100 ще извърши 100% операции за запис. Изключването на превключвателя -w или въвеждането на -w0 ще извърши 0% операции за запис и по този начин 100% операция за четене.
- -R или -с определя дали тестът използва или произволен достъп, или последователни операции. За последователно задайте -r за произволен достъп или -s. Това ви помага да проверите за случаен достъп до файлове (често малък брой малки файлове) или за последователен достъп до файлове (често един голям файл, който се чете или пише наведнъж).
- -T означава броя на нишките, които ще се изпълняват по едно и също време, като -t2 за две нишки или -t6 за шест нишки.
- -о означава брой неизпълнени заявки на нишка, като -o4 за четири заявки или -o2 за два резултата.
- -д е продължителността на тестовете в секунди, като -d90 за 90 секунди или -d120 за 120 секунди.
- -б е размерът на блоковете за четене или запис, като -b16K за 16K размер на блока или -b64K за 64K размер на блока.
С помощта на тези опции можете да настроите командата benchmark, за да видите как се изпълнява диска при различни товари. След като сте написали команда, която смятате за сходна с типа на работното натоварване, което изпълнявате на компютъра си, можете да направите стрес тест на няколко диска и да видите кой предлага най-доброто представяне.