Высокая загрузка процессора во время ввода-вывода

Я использую Ubuntu Server 12.04 LTS на машине на базе AMD E-350 . Во время тяжелых нагрузок ввода-вывода (например, передача файлов через NFS или HTTP, извлечение архивов, создание резервных копий и т. Д.) Загрузка ЦП становится совершенно безумной. Я видел среднюю нагрузку на этой двухъядерной машине намного выше восьми ... и скорость отклика намного ниже.

Я думаю, что проблема определенно связана с ядром, но убедитесь сами:

$ sudo hdparm -I / dev / sdb

/dev/sdb:

ATA device, with non-removable media
    Model Number:       SAMSUNG HD501LJ                             
    Firmware Revision:  CR100-10
    Transport:          Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5
Standards:
    Used: ATA-8-ACS revision 3b 
    Supported: 8 7 6 5 
Configuration:
    Logical        max    current
    cylinders    16383    16383
    heads        16    16
    sectors/track    63    63
    --
    CHS current addressable sectors:   16514064
    LBA    user addressable sectors:  268435455
    LBA48  user addressable sectors:  976771055
    Logical/Physical Sector size:           512 bytes
    device size with M = 1024*1024:      476938 MBytes
    device size with M = 1000*1000:      500106 MBytes (500 GB)
    cache/buffer size  = 16384 KBytes (type=DualPortCache)
Capabilities:
    LBA, IORDY(can be disabled)
    Queue depth: 32
    Standby timer values: spec'd by Standard, no device specific minimum
    R/W multiple sector transfer: Max = 16    Current = 16
    Recommended acoustic management value: 254, current value: 128
    DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 udma7 
         Cycle time: min=120ns recommended=120ns
    PIO: pio0 pio1 pio2 pio3 pio4 
         Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
    Enabled    Supported:
       *    SMART feature set
            Security Mode feature set
       *    Power Management feature set
       *    Write cache
       *    Look-ahead
       *    Host Protected Area feature set
       *    WRITE_BUFFER command
       *    READ_BUFFER command
       *    NOP cmd
       *    DOWNLOAD_MICROCODE
            SET_MAX security extension
       *    Automatic Acoustic Management feature set
       *    48-bit Address feature set
       *    Device Configuration Overlay feature set
       *    Mandatory FLUSH_CACHE
       *    FLUSH_CACHE_EXT
       *    SMART error logging
       *    SMART self-test
       *    General Purpose Logging feature set
       *    64-bit World wide name
       *    Segmented DOWNLOAD_MICROCODE
       *    Gen1 signaling speed (1.5Gb/s)
       *    Gen2 signaling speed (3.0Gb/s)
       *    Native Command Queueing (NCQ)
       *    Host-initiated interface power management
       *    Phy event counters
       *    DMA Setup Auto-Activate optimization
            Device-initiated interface power management
       *    Software settings preservation
       *    SMART Command Transport (SCT) feature set
       *    SCT Long Sector Access (AC1)
       *    SCT LBA Segment Access (AC2)
       *    SCT Error Recovery Control (AC3)
       *    SCT Features Control (AC4)
       *    SCT Data Tables (AC5)
Security: 
    Master password revision code = 65534
        supported
    not    enabled
    not    locked
        frozen
    not    expired: security count
        supported: enhanced erase
    168min for SECURITY ERASE UNIT. 168min for ENHANCED SECURITY ERASE UNIT.
Logical Unit WWN Device Identifier: 50000f001b301090
    NAA        : 5
    IEEE OUI    : 0000f0
    Unique ID    : 01b301090
Checksum: correct

$ iostat 1 # На один фрагмент ниже

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               0.00         0.00         0.00          0          0
sdb             355.00     60544.00         0.00      60544          0

$ vmstat 1

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  9      0 152864     12 3302740    0    0 61952     0 18115 1999  1 24 12 63
 0  8      0 153316     12 3302060    0    0 59648     0 20060 2393  1 33  9 57
 0 10      0 153432     12 3302060    0    0 54784     0 18430 2205  1 24 11 65
 1  8      0 154848     12 3301216    0    0 59392     0 19011 2291  1 31  8 60
 0  9      0 149676     12 3306324    0    0 59392     0 21149 2417  2 29  6 64
 0  9      0 150460     12 3305268    0    0 61952     0 18664 2117  1 28 11 60
 1  8      0 152084     12 3304028    0    0 59392     0 20045 2245  2 31  6 62
 1  8      0 152548     12 3303452    0    0 60160     0 20105 2426  2 29  9 60

Что я могу с этим поделать?

0
задан 11 November 2012 в 21:18

2 ответа

Это ожидаемое поведение. Вы захотите проверить разницу между нагрузкой и использованием процессора (например, используя top). Скорее всего, использование CPU очень низкое, а загрузка CPU высокая. Это вызвано тем, что указывает загрузка ЦП, и в большинстве случаев совершенно безвредно.

Со страницы руководства uptime:

   System  load  averages is the average number of processes that are either in a runnable or uninterrupt‐
   able state.  A process in a runnable state is either using the CPU  or  waiting  to  use  the  CPU.   A
   process in uninterruptable state is waiting for some I/O access, eg waiting for disk.  The averages are
   taken over the three time intervals.  Load averages are not normalized for the number of CPUs in a sys‐
   tem, so a load average of 1 means a single CPU system is loaded all the time while on a 4 CPU system it
   means it was idle 75% of the time.

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

Решение: не беспокойтесь и не покупайте более быстрые диски (или достойный RAID, SAN, ...).

Мне лично нравится dstat за устранение этих проблем.

0
ответ дан 11 November 2012 в 21:18

Очень нормально, чтобы нагрузка была высокой во время большой активности диска, поэтому вы должны проверить «top» и «iowait». В этом случае «0.7% wa» - это время iowait. Я подозреваю, что ваш будет высоким.

Cpu0  : 17.4%us,  3.0%sy,  0.0%ni, 78.9%id,  0.7%wa,  0.0%hi,  0.0%si,  0.0%st

В вашем примере я не уверен, в каких единицах измерения эти измерения, но если wa -%, то оно довольно высокое.

Проблема Я вижу, что ваш диск Samsung определенно ужасно медленный в тестах: http://usb.userbenchmark.com/SpeedTest/4007/SAMSUNG-HD501LJ Эта низкая производительность Вы видите, безусловно, является результатом, который отражает критерии. На самом деле, я никогда не видел более медленного диска со скоростью 7200 об / мин!

Решение: 1.) Замените диск на более производительную модель (настоятельно рекомендую любой из более новых Toshiba SATA3 7200 3,5 "). модели).

Например, я обнаружил, что у Toshiba 7200 об / мин 2x2 ТБ в RAID-массиве mdadm 10 моя скорость ввода-вывода составляет примерно 389-400 МБ / с (фактически удваивая скорость одного диска).

0
ответ дан 11 November 2012 в 21:18

Другие вопросы по тегам:

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