[Comm] Балансировка доступа к жесткому диску для госте в KVM

alexei на taf.ru alexei на taf.ru
Ср Авг 20 06:20:10 MSK 2014



----- Исходное сообщение -----
> От: "Васюк Максим Анатольевич" <vaksim на gmail.com>
> Кому: "ALT Linux Community general discussions" <community на lists.altlinux.org>
> Отправленные: Среда, 20 Август 2014 г 11:05:10
> Тема: Re: [Comm] Балансировка доступа к жесткому диску для госте в KVM
> 
> 08.08.2014 22:55, Michael Shigorin пишет:
> > On Fri, Aug 08, 2014 at 09:52:23AM +0400, Kharitonov A. Dmitry wrote:
> >>> А что у Вас за винт? Не из серии "зеленых"?
> >
> > Точнее, "четырёхкилобайтносекторных": http://altlinux.org/BigSector
> > -- но в седьмых бранчах это давно учтено.
> >
> >> Очень важно, что бы раздел был выровнен по физическим блокам
> >> винчестера.  выравненный раздел имеет скорость записи 70-100
> >> мб/с не выравненный раздел имеет скорость записи 7-30 мб/с
> >
> > Тоже верно (как и про deadline/noop i/o scheduler).
> 
> Наткнулся на http://rlab.ru/doc/4k_hdd_for_linux.html
> 
> Провел небольшие опыты!
> 
> # hdparm -i /dev/sdc | grep Model
>   Model=WDC WD5000AAKX-22ERMA0, FwRev=17.01H17, SerialNo=WD-WCC2EUY33482
> 
> Запилил кривой раздел с 63 сектора:
> 
> # parted /dev/sdc
> (parted) print
> Модель: ATA WDC WD5000AAKX-2 (scsi)
> Диск /dev/sdc: 976773168s
> Размер сектора (логич./физич.): 512B/512B
> Таблица разделов: msdos
> 
> Номер  Начало  Конец       Размер      Тип      Файловая система  Флаги
>   1     63s     193359871s  193359809s  primary  ext4
> 
> # mkfs.ext4 /dev/sdc1
> # mount /dev/sdc1 /mnt/test
> # dd if=/dev/zero of=/mnt/test/000.dd bs=128k count=100000
...

> Удаляем раздел, делаем новый.
> (parted) print
> Модель: ATA WDC WD5000AAKX-2 (scsi)
> Диск /dev/sdc: 976773168s
> Размер сектора (логич./физич.): 512B/512B
> Таблица разделов: msdos
> 
> Номер  Начало  Конец       Размер      Тип      Файловая система  Флаги
>   1     2048s   195311615s  195309568s  primary
> 
> # mkfs.ext4 /dev/sdc1
> # mount /dev/sdc1 /mnt/test
> 
> # dd if=/dev/zero of=/mnt/test/000.dd bs=128k count=100000
...
> Разницы нету!!!
> Что я делаю не так. Может WD пофиксили это на уровне железа?

У вас ошибка в методике исследования. На линейных операциях записи-чтения
деградация от "63-го сектора" не проявляется. Она проявится, когда начнется
активная запись-чтение к случайным участкам файлов и ФС. Это когда вместо одной
операции записи 4к сектора, будет произведено - чтение 4к блока с "головой"
изменяемого сегмента + 4к "хвостом", выяснения куда из этих 8к писать "голову",
а куда "хвост", запись 4к с "головой" + 4к с "хвостом". При чтении так же будет
дергаться два соседних блока, с последущим анализом и вычленением нужных данных.
Вот тут-то "ата-та" и наступает.



Подробная информация о списке рассылки community