Кеш диска SCSI

367
Rufi

У меня есть контроллер SCSI (HP Smart Array 642), использующий драйвер cciss в Linux, который подключен к нескольким дискам SCSI. Я пытаюсь оптимизировать связь между этими устройствами и дошел до того, что мне следует проверить, насколько заполнен кэш каждого диска.

Можно ли получить это значение с диска? Или, возможно, можно получить это значение из контроллера?

ps Хочу заметить, что поскольку диски находятся за контроллером, я не могу использовать, например, hdparm.

2
Линукс не может и не должен заботиться о спецификациях дисков позади массива. это зависит от контроллера массива, чтобы оптимизировать вещи. Вы не должны пытаться возиться с дисками напрямую, потому что это означало бы обход контроллера и, возможно, уничтожение массива. 11 лет назад 2
Это то, что я делаю: я общаюсь с дисками через SCSI, проходя через команды, и мне нет дела до массива. 11 лет назад 1

2 ответа на вопрос

1
ConcernedOfTunbridgeWells

Вы могли бы frig с прошивкой на дисках напрямую. scsirastools позволит вам выдавать команды режима в дисках, чтобы изменить их конфигурацию. Если вы хотите поэкспериментировать с дисками, обратите внимание на параметры сегментации кеша и политики предварительной выборки на стр. 8, чтобы начать работу.

Я не знаю, будет ли поддержка scsirastools проходить через ваш RAID-контроллер. Если это не так, вам, возможно, придется отключить Ebay от старого контроллера Adaptec 39320 или аналогичного и использовать его для работы со страницами режима. YMMV.

Но если мы говорим о сквозных командах, то для другого RAID-контроллера это будет совсем другое. Rufi 11 лет назад 0
0
Rufi

Во время исследования было обнаружено ограничение буфера для этого контроллера в драйвере Linux (cciss):

MAX_KMALLOC_SIZE (4096 * 512)

Это означает, что для получения максимальной скорости нам нужно постоянно помещать информацию об отправке в этот буфер размером 2 МБ. Итак, похоже, что это не кеш контроллера, а какое-то важное значение, влияющее на скорость процесса отправки.

Если мы говорим о командах Data-Out, в которые нам нужно постоянно включать буфер, неплохо проверить параметр длины передачи, который влияет на размер буфера. Конечно, не забывайте о количестве дисков, потому что это распределение памяти относится к контроллеру.

В противном случае ограничением в этой ситуации является скорость диска, но, конечно, это зависит от контроллера, дисков, шин и множества других параметров.

Похожие вопросы