скорость чтения записи на диск

Автор mihail_1, 07 апреля 2013, 19:50:34

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

mihail_1

Копирую кучу файлов. Копируются долго.
Смотрю iostat -k -x 20

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sda               8,00     0,00   16,05    0,05  1973,20     0,20   245,14     0,08    5,08   4,99   8,04
sda1              8,00     0,00   16,05    0,05  1973,20     0,20   245,14     0,08    5,08   4,99   8,04
sdb               0,00     0,00    0,05 1235,25     0,20  5928,80     9,60     1,53    1,24   0,80  98,64
sdb1              0,00     0,00    0,05 1235,25     0,20  5928,80     9,60     1,53    1,24   0,80  98,64

Как-то неторопливо вроде бы, и почему пишется в три раза больше чем читается?
(оба диска из одной партии)

mihail_1

Я спросил не в том разделе или вопрос слишком простой или слишком сложный?

kobzar

hdparm -tT /dev/sdaХ

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

kobzar

0_о
как это у вас получилось? не может работать обычный хард быстрее стрипа в три раза..
Ты дорого мой друг, заплатишь за ошибку,..
Когда оскал мой милый, ты приймешь за улыбку.

mihail_1

Не один диск а два. Все просто - файловая система за одно обращение считывает 4 Kb, то есть обращение происходит к обоим дискам, и они оба позиционируют головки.
Когда половина файлов оказалась на одном диске а другая на другом, количество позиционирований упало и из-за того что файлов меньше и из-за того что на каждый запрос позиционировалась одна головка а не две.

mihail_1

Винты идентичные
/dev/sdb:
Timing cached reads:   6798 MB in  2.00 seconds = 3400.16 MB/sec
Timing buffered disk reads:  368 MB in  3.00 seconds = 122.50 MB/sec
/dev/sda:
Timing cached reads:   6888 MB in  2.00 seconds = 3445.58 MB/sec
Timing buffered disk reads:  366 MB in  3.01 seconds = 121.72 MB/sec

Читаю с sda, пишу на sdb (это видно)

kobzar

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

mihail_1

Есть другое объяснение? Проверялось многократно raid выигрывал у одного диска и существенно проиграл двум, факт отрицать бессмысленно. (случайные ошибки существенно меньше)

easy

Можно поинтересоваться -
cat /sys/block/sdb/queue/scheduler
?

vladimir_ar

Потому, видимо, что читается
Цитата: mihail_1 от 07 апреля 2013, 19:50:34Копирую кучу файлов
, да еще по диску разбросаны, а пишется уже подготовленный буфер подряд.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M

kobzar

Миша. Вам же только добра желают.
Вы не имеете ни малейшего понятия как работают рейды, - и не хотите читать.
Вы не имеете достаточного уровня администрирования Линукса (о чем говорит эта тема) - и не хотите читать.
Вы провели известные только вам "тесты" почему то решив что у двух винтов по отдельности скорость выше чем у рейда 0 (стрип).
(если по дороге будет ехать рядом две машины со скоростью 10км\ч - то их суммарная скорость будет 10 км\час а не 20)
Умные люди пишут вам дельные советы - Вы не хотите читать.

ЦитироватьНе один диск а два. Все просто - файловая система за одно обращение считывает 4 Kb, то есть обращение происходит к обоим дискам, и они оба позиционируют головки.
Когда половина файлов оказалась на одном диске а другая на другом, количество позиционирований упало и из-за того что файлов меньше и из-за того что на каждый запрос позиционировалась одна головка а не две.

Вот это вообще шедевр! Скорее всего вам не понятно что вы написали, но я примерно на другой фразе покажу вам:
Откручиваю я гаечным ключем синий цвет... Привет Яблоко. Красный. За поворотом на лево...

Читайте. И да прибудут с вами Знания! :)
Ты дорого мой друг, заплатишь за ошибку,..
Когда оскал мой милый, ты приймешь за улыбку.

mihail_1

С администрированием линукса у меня действительно проблемы. А принципы работы raid мне известны, поэтому и стал делать этот тест. Что два отдельных диска при случайном доступе могут выиграть я предполагал, но ожидал меньшей разницы, близкой к случайным ошибкам. (проигрышь мог быть в случае если бы количество обращений к одному диску было бы существенно больше чем к другому, но этого не произошло и оба диска работали параллельно, но с меньшей нагрузкой)

mihail_1

 cat /sys/block/sdb/queue/scheduler
noop anticipatory deadline [cfq]

Все копируемые файлы незадолго до этого были скопированы с sdb на sda. Неужели почти пустой диск может все так фрагментировать? И не слишком ли маленькие обе скорости?

PbI6A

ls /dev/md*
покажет какие есть raid-ы, например, покажет md1
ls -la /dev/disk/by-uuid/
покажет соответствие дискам и их символическим значениям, находим символическое значение для нашего raid-а
more /etc/fstab
ищем, есть ли строчка, начинающаяся с "UUID=" с идущим далее нашим символическим значением
если нет, пропускаем всё дальше до "***", если есть, запускаем редактирование fstab:
su
спросит пароль root-а.
nano /etc/fstab
запустится редактор файла, в нём находим строчку с "UUID=" с идущим далее нашим символическим значением и перед ней пишем значок #
Сохраняем файл клавишей F2, перезаписываем старое значение файла, перезагружаем комп командой
reboot
Если раздел и правда никак не использовался, то всё загрузится без проблем.
***
Удалить raid, как уже писали выше.
LINUX means: Linux Is Not a UniX
Вернулся на Devuan. Счастлив!

yura_n

Цитировать
Timing cached reads:   6888 MB in  2.00 seconds = 3445.58 MB/sec
Timing buffered disk reads:  366 MB in  3.01 seconds = 121.72 MB/sec
Здесь не показана реальная скорость записи/чтения. Таких скоростей у одиночных дисков просто не бывает. Здесь показана скорость чтения с кэша внешнего и скорость чтения с кэша диска. Возьмите большой файл, желательно на несколько гигабайт, скопируйте с одного диска на другой (с помощью файлового мененжера) - увидите реальную приблизительную скорость копирования. Вот ее напишите сюда. Если у вас много мелких файлов, то скорость будет намного меньше.