В настоящее время я пытаюсь протестировать пропускную способность чтения/записи на SSD. Эти SSD читаются/записываются через протокол NVMe. В настоящее время я в замешательстве, потому что я видел два метода.
Первый способ — это прямая запись некоторого блока данных в файл устройства NVMe и регистрация времени, необходимого драйверу для выполнения этой операции.
Второй способ — смонтировать файловую систему на разделе SSD и выполнить ту же операцию: записать файл в файловой системе, смонтированной на разделе, и зафиксировать время.
Что на самом деле происходит под капотом? Что даст более реальный результат по пропускной способности?
решение1
Чтение и запись на блочное устройство не кэшируются. Доступ к файловой системе включает кэш страниц, который намного быстрее, чем даже SSD. Поэтому вам придется больше думать о том, как вы хотите измерить.
Когда вы используете систему, вы используете файловые системы и кэш страниц. Так что это, вероятно, более релевантные результаты. Я предполагаю, что разница в производительности меньше при использовании файловой системы.