CrystalDiskMark: как это на самом деле работает

CrystalDiskMark — один из самых популярных тестов хранения данных, но как он определяет производительность накопителя?

CrystalDiskMark существует уже более десяти лет, и это один из любимых способов ПК-сообщества протестировать хранилища, будь то жесткие диски, твердотельные накопители (SSD) или даже флэш-накопители. Это простой тест, выполняемый одним щелчком мыши, который показывает, насколько быстро работает ваше хранилище. Но что именно он тестирует и что означают результаты для вашего оборудования? Вот что вам нужно знать.

Что такое CrystalDiskMark?

CrystalDiskMark — это тест хранилища Windows, впервые выпущенный в 2008 году и пытающийся оценить скорость диска в заданных условиях тестирования. Существует также тест macOS под названием АморфныйДискМарк, который должен работать более-менее одинаково и спроектирован (с разрешения автора CrystalDiskMark) так же. По сути, все, что делает CrystalDiskMark, — это передает файлы и сообщает вам скорость, с которой диск мог передавать эти данные.

Перед запуском тестов вам необходимо установить рабочий размер файла. Это размер файла, который CrystalDiskMark создает для выполнения тестов чтения и записи, и он варьируется от 16 МБ до 64 ГБ. Оставить значение по умолчанию в 1 ГБ вполне нормально, поскольку это реалистичный размер для большого количества данных, к которым вы можете получить доступ в своем хранилище.

CrystalDiskMark поставляется с четырьмя предустановленными тестами, но если вы заглянете в расширенные настройки, вы сможете настроить, какие тесты тестируются, и получить разные результаты. Тесты CrystalDiskMark сводятся к четырем важным параметрам тестирования: последовательному и последовательному. случайный размер, размер блока, глубина очереди и потоки.

Последовательный против. случайный

Два основных типа тестов, которые использует CrystalDiskMark, — последовательные и случайные, обозначаемые SEQ и RND соответственно. Основное различие между этими двумя видами рабочих нагрузок заключается в том, как организованы данные. При последовательной рабочей нагрузке данные, к которым обращается SSD, физически смежны и доступны один за другим в последовательности (следовательно, последовательно). Случайные рабочие нагрузки включают в себя данные, которые не являются последовательными или непрерывными и могут быть распределены по всему диску. В зависимости от других факторов разница в производительности между последовательным и произвольным режимами может варьироваться от незначительной до чрезвычайно большой.

Вообще говоря, твердотельные накопители очень хорошо справляются со случайными рабочими нагрузками, в то время как жесткие диски с ними справляются плохо, поэтому вам следует может увидеть, что жесткие диски получают номинальную скорость менее 10 МБ/с в случайных тестах CrystalDiskMark, но более 100 МБ/с в последовательных те. Это связано с тем, что на HDD приходится механически перемещать компонент, читающий и записывающий с физического диска, и на перескакивание с места на место уходит довольно много времени. Хотя твердотельные накопители не являются механическими устройствами, они по-прежнему обрабатывают случайные рабочие нагрузки медленнее, чем последовательные, по внешним причинам.

Размер блока

Файлы состоят из блоков и представляют собой самые большие фрагменты данных, которые перемещаются за одну операцию ввода-вывода (или ввода-вывода). В тестах по умолчанию, которые предоставляет вам CrystalDiskMark, вы увидите некоторые из них, использующие размер блока 1 МБ (примерно один МБ). мегабайт), некоторые используют размер блока 4 КБ (примерно четыре килобайта), а другие используют размер блока 128 КБ (примерно 128 КБ). килобайты).

Чем больше размер блока, тем выше скорость передачи

Это может показаться нелогичным, но чем больше размер блока, тем выше скорость передачи. По сути, это разница между перемещением одного листа бумаги за раз и перемещением целой папки в картотеку. Последовательная передача файлов часто включает большие блоки, тогда как случайные рабочие нагрузки обычно используют меньшие блоки. Хотя CrystalDiskMark использует большие размеры блоков в последовательных тестах и ​​малые размеры блоков в случайных тестах, размер блока не обязательно указывает на последовательность или случайность.

Глубина очереди

Глубина очереди означает, сколько очередей обрабатывают запросы ввода-вывода в любой момент времени, и чем больше очередей открыто для передачи данных, тем выше потенциал для более высокой скорости передачи. По умолчанию CrystalDiskMark тестирует глубину очереди 1, 8 и 32, хотя при желании вы можете вручную увеличить глубину очереди и протестировать таким образом. Вы можете представить очередь как отдельного работника, раскладывающего документы, и, очевидно, чем больше работников, тем быстрее подача документов.

Более высокая глубина очереди часто приводит к более высокой скорости передачи данных независимо от размера блока или количества потоков, но большая глубина очереди особенно сильно влияет на случайные рабочие нагрузки. Если снова использовать аналогию с картотекой, два человека будут хранить документы один за другим намного быстрее, чем один человек, делающий это самостоятельно. Переход от глубины очереди с одного до 32 может привести к увеличению скорости передачи данных в 10 раз, что является огромным достижением.

Потоки

Потоки отличаются размером блока и глубиной очереди, поскольку они находятся в процессоре, а не в хранилище. Каждый ЦП имеет определенное количество ядер, и каждое ядро ​​обычно имеет один или два потока, и по сути они представляют собой версию очередей ЦП. Чем больше потоков, тем легче работать над несколькими вещами одновременно. Потоки не имеют особого значения в CrystalDiskMark, поскольку семь из восьми тестов по умолчанию используют только одно количество потоков, и только один тест использует количество потоков, равное 16.

Однако тот тест, в котором используется число потоков 16, ясно показывает, что наличие большого количества потоков ЦП может помочь. Переход от одного потока к 16 при случайной рабочей нагрузке увеличивает производительность примерно в восемь раз, или на 700%. Это связано с тем, что ЦП также участвует в обеспечении передачи данных на очень важном уровне. Но количество потоков зависит от процессора, и не каждый процессор имеет 16 потоков, и, возможно, именно поэтому CrystalDiskMark сохраняет количество потоков равным одному для большинства своих тестов по умолчанию.

Собираем все это вместе

Итак, теперь, когда вы знаете все ключевые компоненты, давайте посмотрим на реальный результат CrystalDiskMark. Это один из наших Обзор Samsung 990 Pro используя тесты по умолчанию.

990 Про

970 ЭВО Плюс

SEQ1M, Q8T1

7465/6897

3575/3059

SEQ1M, Q1T1

3878/6046

3029/2725

РНД4К, Q32T1

785/533

774/610

РНД4К, Q1T1

72/248

53/240

Результаты организованы по принципу чтения/записи и измеряются в МБ/с.

Первый тест представляет собой оптимизированный последовательный тест, в котором используется блок большого размера и восемь очередей. и хотя используется только один поток, скорость передачи практически такая же, как Samsung оценивает 990 Pro. в. Второй бенчмарк отличается лишь глубиной очереди, которая равна единице вместо восьми, что приводит к снижению производительности как чтения, так и записи (особенно чтения на 990 Pro).

Третий тест представляет собой произвольную рабочую нагрузку с размером блока всего 4 КБ, и хотя глубина очереди 32 очень высока, скорости чтения и записи по-прежнему значительно ниже, чем у последовательных рабочие нагрузки. Последний тест использует тот же размер блока 4 КБ, но снижает глубину очереди до единицы, что приводит к чрезвычайно медленная скорость чтения всего 72 МБ/с на 990 Pro (скорость записи тоже довольно низкая, но не такая уж большая). уронить).

Существует также профиль тестирования NVMe, который включает в себя несколько различных тестов, и вы также можете настроить свои собственные параметры тестирования. Просто щелкните раскрывающееся меню «Настройки», выберите параметр «Настройки», и вы увидите множество опций. Размер блока варьируется от 4 КБ до 8 МБ, глубина очереди может быть установлена ​​от 1 до 512, а количество потоков может быть от 1 до 64. Однако значения размера блока и глубины очереди не могут быть буквально какими угодно; параметры глубины очереди варьируются от 1 до 2, от 4 до 8 и так далее.

Как скачать CrystalDiskMark

CrystalDiskMark — это проверенный и надежный тест хранилища, который часто используется для измерения лучшие твердотельные накопители NVMe. Вы можете скачать его с Собственный сайт CrystalDiskMark, на котором также размещено CrystalDiskInfo, сопутствующее приложение, предназначенное для мониторинга хранилища.