Низкая скорость чтения-записи винчестера.

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
4ykotka
проходил мимо
Сообщения: 3
Зарегистрирован: 2008-04-26 10:11:10

Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение 4ykotka » 2008-04-26 10:30:41

Поднимал эту тему на linuxforum.ru некоторое время назад, но там мне помочь никто не смог, возможно слишком дистроспецифичная проблема.
День добрый!
Возникла следующая проблемка: система FreeBSD7.0, скорость копирования большого файла(не только большого) ~1Gb колеблется от 2.5 до 3 МБ/с, что на мой взгляд маловато, по настройкам вроде всё в порядке.

Код: Выделить всё

sysctl -a | grep hw.ata
hw.ata.wc: 1
hw.ata.atapi_dma: 1
hw.ata.ata_dma: 1

Код: Выделить всё

atacontrol mode ad0
current mode = UDMA100

Код: Выделить всё

diskinfo -vct ad0
ad0
		512			 # sectorsize
		120034123776	# mediasize in bytes (112G)
		234441648	   # mediasize in sectors
		232581		  # Cylinders according to firmware.
		16			  # Heads according to firmware.
		63			  # Sectors according to firmware.
		ad:WD-WMAET1260268	  # Disk ident.

I/O command overhead:
		time to read 10MB block	  2.808768 sec	   =	0.137 msec/sector
		time to read 20480 sectors   4.702132 sec	   =	0.230 msec/sector
		calculated command overhead					 =	0.092 msec/sector

Seek times:
		Full stroke:	  250 iter in   9.527630 sec =   38.111 msec
		Half stroke:	  250 iter in   6.450133 sec =   25.801 msec
		Quarter stroke:   500 iter in  10.103956 sec =   20.208 msec
		Short forward:	400 iter in   3.069185 sec =	7.673 msec
		Short backward:   400 iter in   4.024954 sec =   10.062 msec
		Seq outer:	   2048 iter in   0.508947 sec =	0.249 msec
		Seq inner:	   2048 iter in   0.793524 sec =	0.387 msec
Transfer rates:
		outside:	   102400 kbytes in  26.645867 sec =	 3843 kbytes/sec
		middle:		102400 kbytes in  26.239880 sec =	 3902 kbytes/sec
		inside:		102400 kbytes in  26.285463 sec =	 3896 kbytes/sec
Скорей всего что-то я, где-то пропустил.. но вот что, и где ума не приложу, буду благодарен за идеи, если нужны дополнительные сведения, только скажите.
Вот ещё пара тестов подтверждающих плачевность ситуации:

Код: Выделить всё

: 
 ls -l /home/p2p/incoming/files/Pompoko.avi
-rw-rw-r--  1 p2p  p2p  1465352192  4 ??? 01:30 /home/p2p/incoming/files/Pompoko.avi

 time cp /home/p2p/incoming/files/Pompoko.avi /home/
real	9m36.631s
user	0m0.164s
sys	 0m59.172s

Код: Выделить всё

dd if=/home/p2p/incoming/files/Pompoko.avi of=/dev/null
1465352192 bytes transferred in 466.603954 secs (3140462 bytes/sec)

real	7m46.785s
user	0m1.627s
sys	 0m54.056s
Опции монтирования:

Код: Выделить всё

 mount
/dev/ad0s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad0s1e on /tmp (ufs, local, soft-updates)
/dev/ad0s1f on /usr (ufs, local, soft-updates)
/dev/ad0s1d on /var (ufs, local, soft-updates)

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35466
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение Alex Keda » 2008-04-26 12:34:35

Код: Выделить всё

iostat -v 1
и шапочку топа с соседней консоли - во время копирования
Убей их всех! Бог потом рассортирует...

ProFTPD
проходил мимо

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение ProFTPD » 2008-04-26 13:04:38

автор, примонтируй с опцией

-o noatime
-o async

кстате, я когда создавал разделы я поставил Soft Updates!

а что лучше Soft Updates или async? у меня эти две включены, скорость разная, если фильм то до 15Мбайт/сек

ProFTPD
проходил мимо

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение ProFTPD » 2008-04-26 13:07:00

только потом восстановить с лайфсиди надо будет

/etc/rc.conf

Код: Выделить всё

fsck_y_enable="YES" 
background_fsck="NO"

4ykotka
проходил мимо
Сообщения: 3
Зарегистрирован: 2008-04-26 10:11:10

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение 4ykotka » 2008-04-26 17:14:26

lissyara писал(а):

Код: Выделить всё

iostat -v 1
и шапочку топа с соседней консоли - во время копирования

Код: Выделить всё

last pid:  4099;  load averages:  0.16,  0.05,  0.01                        up 0+19:39:54  17:02:04
67 processes:  2 running, 65 sleeping
CPU states:  0.4% user,  5.1% nice, 13.2% system,  1.2% interrupt, 80.2% idle
Mem: 118M Active, 47M Inact, 60M Wired, 1296K Cache, 34M Buf, 7616K Free
Swap: 463M Total, 244K Used, 462M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
 4098 admin       1  -4    0  3136K   756K getblk   0:02  8.27% cp
  897 p2p         2 115   19 43528K 36404K ucond    0:00  3.12% mlnet-real
  543 root        1  96    0  3348K  1100K select   6:36  0.00% natd

Код: Выделить всё

iostat -w 1                                                                    
      tty             ad0             cpu                                                           
 tin tout  KB/t tps  MB/s  us ni sy in id                                                           
   0   57 32.80   4  0.13   0  3  1  1 94                                                           
   0  438 62.96  77  4.73   0  2 11  3 84                                                           
   2 2776 59.51  77  4.47   3  6 13  2 76                                                           
   0  222 64.00  68  4.25   0  0 10  2 88                                                           
   2 2970 63.27  66  4.07   2  2  9  3 84                                                           
   0  285 62.15  78  4.73   0  0  9  2 89
   0  434 62.98  63  3.87   1  1 10  2 87
   0  271 64.00  71  4.43   1  0 12  1 86
   0 1337 63.03  66  4.06   0  1  9  1 89
   0  271 63.77  69  4.29   0  1 12  1 87
   0  457 62.09  67  4.06   2  2 14  2 80
   0  271 60.93  73  4.34   1  1 12  2 85
   0  449 56.91  75  4.16   2  1 14  1 83
   0  270 64.00  64  3.99   0  2  9  1 89
   0  485 62.22  72  4.37   2  1 12  2 84
   0  271 61.49  70  4.20   0  1  8  1 91
   0  480 64.00  60  3.75   0  0  7  1 92
   0  271 60.10 101  5.92   0  2 14  1 83
   0  429 63.69 104  6.46   2  0 16  1 80
   0  271 64.00  93  5.81   1  2 16  2 80
Это ( ^ ) выводво время копирования, а это ( \/ ) без онного.

Код: Выделить всё

iostat -w 1 
      tty             ad0             cpu
 tin tout  KB/t tps  MB/s  us ni sy in id
   0   60 34.54   4  0.14   0  3  1  1 94
   0  645 16.00   1  0.02   2  2  2  1 93
   0  271  0.00   0  0.00   0  1  2  2 96
   0  422 21.33   3  0.06   1  0  2  0 98
   0  271 59.43   7  0.41   0  8  4  0 88
   0  472 24.00   2  0.05   1  2  0  0 97
   0  271 16.00   1  0.02   0  2  2  2 95
   0  443  3.00   2  0.01   0  2  2  2 95
   0  271 16.00   1  0.02   0  1  3  3 93
   0  477 48.89  18  0.86   1 20  4  1 74
   0  271 53.33   3  0.16   0  3  0  2 95
   0  502 24.00   2  0.05   1  1  0  0 98
   0  271 53.33   3  0.16   0  2  2  2 94
   0  427 45.71   7  0.31   1  3  3  1 92
   0  271  0.00   0  0.00   0  0  2  0 98
   0  460 51.20   5  0.25   1  1  2  1 96
   0  271 16.00   1  0.02   0  0  5  1 94
   0  453  0.00   0  0.00   1  1  0  2 96
   0  271  0.00   0  0.00   2  1  2  1 95
   0  425 45.71   7  0.31   0  2  2  1 95

Аватара пользователя
proxyd
мл. сержант
Сообщения: 84
Зарегистрирован: 2008-03-06 15:03:37

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение proxyd » 2008-04-26 20:20:49

Присоединяюсь к Автору очень актуальная тема. Уже давно интересует вопрос, с какой скоростью должны передаваться данные с раздела на радел в приделах одного физического винта.
И вот какие я сделал выводы: 100Мбит/с = 12,5МБайтам/с это скорость передача данных с диска в буфер, а нам нужно перегнать данные туда и обратно по этому делим эту цифру на два и получаем 6,25МБ/с.

У меня WD 250GB 7200rpm, 16MB, SATA II-300

Код: Выделить всё

atacontrol mode ad4
current mode = SATA300

Код: Выделить всё

sysctl -a | grep hw.ata
hw.ata.wc: 1
hw.ata.atapi_dma: 1
hw.ata.ata_dma: 1

Код: Выделить всё

diskinfo -cvt ad4
ad4
        512             # sectorsize
        250059350016    # mediasize in bytes (233G)
        488397168       # mediasize in sectors
        484521          # Cylinders according to firmware.
        16              # Heads according to firmware.
        63              # Sectors according to firmware.
        ad:WD-WMART0898016      # Disk ident.

I/O command overhead:
        time to read 10MB block      0.104046 sec       =    0.005 msec/sector
        time to read 20480 sectors   2.689559 sec       =    0.131 msec/sector
        calculated command overhead                     =    0.126 msec/sector

Seek times:
        Full stroke:      250 iter in   6.997690 sec =   27.991 msec
        Half stroke:      250 iter in   4.720292 sec =   18.881 msec
        Quarter stroke:   500 iter in   7.584618 sec =   15.169 msec
        Short forward:    400 iter in   2.936176 sec =    7.340 msec
        Short backward:   400 iter in   1.634847 sec =    4.087 msec
        Seq outer:       2048 iter in   0.330977 sec =    0.162 msec
        Seq inner:       2048 iter in   0.307789 sec =    0.150 msec
Transfer rates:
        outside:       102400 kbytes in   0.987438 sec =   103703 kbytes/sec
        middle:        102400 kbytes in   1.129626 sec =    90649 kbytes/sec
        inside:        102400 kbytes in   1.965208 sec =    52106 kbytes/sec

Код: Выделить всё

iostat -w 1
      tty             ad4              ad6             cpu
 tin tout  KB/t tps  MB/s   KB/t tps  MB/s  us ni sy in id
   119437 128.00 166 20.73   0.00   0  0.00   2  0  9  2 88
   029883 127.39 366 45.48   0.00   0  0.00   4  0 16  2 78
   069148 127.27 305 37.87   0.00   0  0.00   5  0 20  2 73
   021599 128.00 251 31.34   0.00   0  0.00   4  0 11  2 84
   013026 128.00  86 10.74   0.00   0  0.00   1  0  3  1 95
Последний раз редактировалось proxyd 2008-04-26 20:40:11, всего редактировалось 1 раз.

4ykotka
проходил мимо
Сообщения: 3
Зарегистрирован: 2008-04-26 10:11:10

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение 4ykotka » 2008-04-26 20:30:45

Хм.. только не вижу я в твоём листинге проблемы, вроде всё в порядке у тебя, со скоростью. :?

Аватара пользователя
proxyd
мл. сержант
Сообщения: 84
Зарегистрирован: 2008-03-06 15:03:37

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение proxyd » 2008-04-26 20:48:00

4ykotka писал(а):Хм.. только не вижу я в твоём листинге проблемы, вроде всё в порядке у тебя, со скоростью. :?
С сайта производителя:
Скорость передачи данных
Чтение из кэша накопителя (Serial ATA) максимум 3 Гб/с
Скорость передачи данных (из кэша на диск) максимум 972 Мбит/с
121,5МБ/с - должно быть по идее ну хотябы 60,75МБ/с - а у меня 45МБ/с

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35466
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Низкая скорость чтения-записи винчестера.

Непрочитанное сообщение Alex Keda » 2008-04-28 0:44:44

Код: Выделить всё

315M    .
hosting# date && cp -R boot_disks /tmp/ && date
понедельник, 28 апреля 2008 г. 01:37:52 (MSD)
понедельник, 28 апреля 2008 г. 01:38:04 (MSD)
hosting#     
с этого сервера - 26.25 метра в секунду.
небыстро, но думаю упёрлось в саму уфс, плюс чё-то на гмиррор ушло.
===========
а это с ноутбука:

Код: Выделить всё

acer# date && cp swap.swp swap1.swp && date
понедельник, 28 апреля 2008 г. 01:40:03 (MSD)
понедельник, 28 апреля 2008 г. 01:41:38 (MSD)
acer#   
получилось 10.77 - но, на то он и ноут..
===========
вернёмся к серверу:

Код: Выделить всё

hosting# dd if=/dev/ad4 of=/dev/null bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 15.215302 secs (68915885 bytes/sec)
hosting#   
пишет думаю медленее чем читает, поэтому не так далеко от теории...
Убей их всех! Бог потом рассортирует...