PDA

Показать полную графическую версию : DMA режим и SATA drive SuSE SLED 10


vlad1977
12-03-2007, 05:48
Доброго времени суток, уважаемые гуру.
Разрешите задать вопрос растущему над собой чайнику.
После установки SLED10 заметил разность в скорости входа в систему на своем новом десктопе, который использует SATA drive ( Seagate Barracuda 7200.10 ST3320620AS (Perpendicular Recording Technology) 320GB 7200 RPM 16MB Cache SATA 3.0Gb/s) и прошлой конфигурацией с уже не помню каким харддрайвом UltraATA и виндовсом.
Сейчас стоит материнка ( ABIT KN9 ULTRA Socket AM2 NVIDIA nForce 570 Ultra MCP ATX AMD Motherboard), процессор - AMD Athlon 64 X2 3800+ Windsor 2.0GHz Socket AM2 Processor Model ADO3800IAA5CU , 1 гиг памяти двухканальной - AMD Athlon 64 X2 3800+ Windsor 2.0GHz Socket AM2 Processor Model ADO3800IAA5CU
Остальная конфигурация такая:
linux-rulez1:~ # lspci
00:00.0 RAM memory: nVidia Corporation MCP55 Memory Controller (rev a1)
00:01.0 ISA bridge: nVidia Corporation MCP55 LPC Bridge (rev a2)
00:01.1 SMBus: nVidia Corporation MCP55 SMBus (rev a2)
00:01.2 RAM memory: nVidia Corporation MCP55 Memory Controller (rev a2)
00:02.0 USB Controller: nVidia Corporation MCP55 USB Controller (rev a1)
00:02.1 USB Controller: nVidia Corporation MCP55 USB Controller (rev a2)
00:04.0 IDE interface: nVidia Corporation MCP55 IDE (rev a1)
00:05.0 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a2)
00:05.1 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a2)
00:05.2 IDE interface: nVidia Corporation MCP55 SATA Controller (rev a2)
00:06.0 PCI bridge: nVidia Corporation Unknown device 0370 (rev a2)
00:06.1 Audio device: nVidia Corporation MCP55 High Definition Audio (rev a2)
00:08.0 Bridge: nVidia Corporation MCP55 Ethernet (rev a2)
00:09.0 Bridge: nVidia Corporation MCP55 Ethernet (rev a2)
00:0b.0 PCI bridge: nVidia Corporation Unknown device 0374 (rev a2)
00:0c.0 PCI bridge: nVidia Corporation Unknown device 0374 (rev a2)
00:0d.0 PCI bridge: nVidia Corporation Unknown device 0378 (rev a2)
00:0e.0 PCI bridge: nVidia Corporation Unknown device 0375 (rev a2)
00:0f.0 PCI bridge: nVidia Corporation Unknown device 0377 (rev a2)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:08.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
01:09.0 Multimedia audio controller: Creative Labs SB0400 Audigy2 Value
01:0a.0 Ethernet controller: Atheros Communications, Inc. AR5005G 802.11abg NIC (rev 01)
06:00.0 VGA compatible controller: nVidia Corporation Unknown device 01df (rev a1)
linux-rulez1:~ #
Проблема: время входа в систему длится около 10-15 секунд, что по-моему есть неправильно... Во время логина LED индикатор работы харддрайва горит практически не переставая. Та же проблема наблюдается на лаптопе с той же системой.
Мой друг выдвигает идею, что это есть результат неправильной настройки DMA, но устранить так и не удалось.
Вот вывод oт hdparm -I
linux-rulez1:~ # hdparm -I /dev/sda

/dev/sda:

ATA device, with non-removable media
Model Number: ST3320620AS
Serial Number: 5QF195YV
Firmware Revision: 3.AAE
Standards:
Supported: 7 6 5 4
Likely used: 7
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: 625142448
device size with M = 1024*1024: 305245 MBytes
device size with M = 1000*1000: 320072 MBytes (320 GB)
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: 0
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6
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:
* READ BUFFER cmd
* WRITE BUFFER cmd
* Host Protected Area feature set
* Look-ahead
* Write cache
* Power Management feature set
Security Mode feature set
* SMART feature set
* FLUSH CACHE EXT command
* Mandatory FLUSH CACHE command
* Device Configuration Overlay feature set
* 48-bit Address feature set
SET MAX security extension
* DOWNLOAD MICROCODE cmd
* General Purpose Logging feature set
* SMART self-test
* SMART error logging
Security:
Master password revision code = 65534
supported
not enabled
not locked
not frozen
not expired: security count
not supported: enhanced erase
Checksum: correct
hdparm -c

linux-rulez1:~ # hdparm -c /dev/sda

/dev/sda:
IO_support = 0 (default 16-bit)
hdparm -Tt
linux-rulez1:~ # hdparm -tT /dev/sda

/dev/sda:
Timing cached reads: 3252 MB in 2.00 seconds = 1627.39 MB/sec
Timing buffered disk reads: 192 MB in 3.01 seconds = 63.79 MB/sec
linux-rulez1:~ #
и напоследок hdparm -d1
linux-rulez1:~ # hdparm -d1 /dev/sda

/dev/sda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Inappropriate ioctl for device
HDIO_GET_DMA failed: Inappropriate ioctl for device
linux-rulez1:~ #
Интересно, почему же не получается у меня получить информацию о DMA настройках и изменить ее? Может другой коммандой это делается для SATA drivе-ов?

ruslandh
12-03-2007, 07:23
1 Sata в Linux использует тот-же механизм, что и SCSI, а режим работы с SCSI устройствами не предпологает изминения режима доступа к дискам - просто выбирается при активации интерфейса самый быстрый режим, лог этого выбора можно найти в /var/log/dmesg .
2 Анализируя dmeasg сразу после загрузки (соответствуют файлу /var/log/dmesg) можно узнать из-за чего происходят тормоза (если это проблемы железа, а не настройки демонов).
Возможно слишком свежееее ядро, сам с сталкивался с аналогичными проблемами на ядрах старше 2.6.17 (в ядре как раз поменяли алгоритм работы модулей SATA и использование в нём irqpoll) https://bugzilla.altlinux.org/show_bug.cgi?id=10714

Envel
12-03-2007, 12:26
Есть еще sdparm.
Мне кажется вы зря тут панику разводите, проблемы просто нет. Либо я что-то не понимаю. Как вы входите в систему? Может через kdm/gdm, тогда вполне нормально, что KDE/GNOME загружаются по 10-15 секунд, тем более это SuSE.

vlad1977
14-03-2007, 07:00
2 Анализируя dmeasg сразу после загрузки (соответствуют файлу /var/log/dmesg) можно узнать из-за чего происходят тормоза (если это проблемы железа, а не настройки демонов).
Вот такой dmesg образовался - см. прицепленный файл.
А как его надо анализировать? Я ничего не нашел подозрительного. По крайней мере dmesg | grep fail вообще не дает результатов никаких. Собственно поэтому я весь вывод без фильтров вставил, может я фильтровал неверно, а с целого месседжа можно что-то другое еще выловить, что я не выловил.


Мне кажется вы зря тут панику разводите, проблемы просто нет. Либо я что-то не понимаю. Как вы входите в систему? Может через kdm/gdm, тогда вполне нормально, что KDE/GNOME загружаются по 10-15 секунд, тем более это SuSE.
Захожу через программу приветствий Gnome. Периодически она кстати падает и вместо нее включается другая, но ощутимой прибавки к скорости нет. Envel, А почему Вы считаете, что это нормально, что через гном/кде грузиться 15 сек. - это нормально?

Есть еще sdparm
Есть. Вот и он:
linux-rulez1:~ # sdparm -av /dev/sda
/dev/sda: ATA ST3320620AS 3.AA
Read write error recovery [0x1] mode page [PS=0]:
AWRE 1
ARRE 1
TB 0
RC 0
EER 0
PER 0
DTE 0
DCR 0
RRC 0
COR_S 0
HOC 0
DSOC 0
WRC 0
RTL 0
>> Format (SBC) mode page [0x3] not supported
>> Rigid disk (SBC) mode page [0x4] not supported
>> Verify error recovery (SBC) mode page [0x7] not supported
Caching (SBC) [0x8] mode page [PS=0]:
IC 0
ABPF 0
CAP 0
DISC 0
SIZE 0
WCE 1
MF 0
RCD 0
DRRP 0
WRP 0
DPTL 0
MIPF 0
MAPF 0
MAPFC 0
FSW 0
LBCSS 0
DRA 0
NV_DIS 0
NCS 0
CSS 0
Control [0xa] mode page [PS=0]:
TST 0
TMF_ONLY 0
D_SENSE 0
GLTSD 1
RLEC 0
QAM 0
QERR 0
RAC 0
UA_INTLCK 0
SWP 0
ATO 0
TAS 0
AUTOLOAD 0
BTP -1
ESTCT 30
>> Control extension mode subpage [0xa,0x1] not supported
>> SAT pATA control mode subpage [0xa,0xf1] not supported
>> XOR control (SBC) mode page [0x10] not supported
>> Protocol specific logical unit mode page [0x18] not supported
>> Protocol specific port mode page [0x19] not supported
>> Power condition mode page [0x1a] not supported
>> Informational exceptions control mode page [0x1c] not supported
>> Background control (SBC) mode subpage [0x1c,0x1] not supported
linux-rulez1:~ #

ruslandh
14-03-2007, 07:21
cat /var/log/dmesg | grep -B1 +A4 ATA

В принципе инетресен этот участок :

Probing IDE interface ide0...
hda: SONY DVD RW DRU-800A, ATAPI CD/DVD-ROM drive
input: ImPS/2 Generic Wheel Mouse as /class/input/input2
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
libata version 1.20 loaded.
sata_nv 0000:00:05.0: version 0.8
ACPI: PCI Interrupt Link [APSI] enabled at IRQ 23
GSI 16 sharing vector 0xE1 and IRQ 16
ACPI: PCI Interrupt 0000:00:05.0[A] -> Link [APSI] -> GSI 23 (level, low) -> IRQ 225
PCI: Setting latency timer of device 0000:00:05.0 to 64
ata1: SATA max UDMA/133 cmd 0x9F0 ctl 0xBF2 bmdma 0xE000 irq 225
ata2: SATA max UDMA/133 cmd 0x970 ctl 0xB72 bmdma 0xE008 irq 225
ata1: SATA link up 3.0 Gbps (SStatus 123)
ata1: dev 0 cfg 00:0c5a 49:2f00 82:346b 83:7d01 84:4023 85:3469 86:3c01 87:4023 88:407f 93:0000
ata1: dev 0 ATA-7, max UDMA/133, 625142448 sectors: LBA48
sata_get_dev_handle: SATA dev addr=0x50000, handle=0xffff810037fe0c80
ata1: dev 0 configured for UDMA/133
sata_get_dev_handle: SATA dev addr=0x50000, handle=0xffff810037fe0c80
scsi0 : sata_nv
ata2: SATA link down (SStatus 0)
scsi1 : sata_nv
Vendor: ATA Model: ST3320620AS Rev: 3.AA
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 625142448 512-byte hdwr sectors (320073 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
SCSI device sda: 625142448 512-byte hdwr sectors (320073 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
sda: sda1 sda2 < sda5 sda6 sda7 > sda3


Ничего некорректного не заметил.

А почему Вы считаете, что это нормально, что через гном/кде грузиться 15 сек. - это нормально

Ненормально, это если около минуты :)

vlad1977
14-03-2007, 17:25
Ненормально, это если около минуты
Ясно... а если Gnome поменять на KDE или Xfce, что-то изменится? Действительно раздражает эта тугодумность компа. Может ему памяти больше прикрутить ? :clever-ma

тугодумность проявляется и при старте программ. Не такая сильная - но есть. А сами десктоп эффекты работают просто идеально. Никаких тормозов, все просто отлично. Фильмы крутятся отлично, в том числе и прямо с дивидюков...

ruslandh
14-03-2007, 23:26
vlad1977
Если поставить более лёгкий WM, то и загружаться будет бысьрее.
Просто KDE и Gnome включают кучу своих серверов от автомонтирования до ....

vlad1977
15-03-2007, 16:18
Теперь все ясно. Спасибо!




© OSzone.net 2001-2012