Board.KolibriOS.org

Official KolibriOS board
It is currently Sat Sep 21, 2019 2:25 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 262 posts ]  Go to page Previous 114 15 16 17 18 Next
Author Message
PostPosted: Thu Apr 10, 2014 2:46 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
yogev_ezra wrote:
Пишет только номер канала и номер диска, но не номер контроллера.
...
Как видим, 2 раза встречается IDE CH1 и IDE CH2, но они относятся к разным контроллерам.

Я подумаю над реализацией. Просто не хотелось захламлять лог лишними строками, которые особо ничего мне как разработчику не сообщают.
yogev_ezra wrote:
Пробовал замерять разницу между PIO и UDMA режимами (диск hd0 работал с PIO, а диск hd2 - с UDMA):
Копирование файла 177MB с /hd2/2 (UDMA) на /usbhd0/1 заняло ровно 1 минуту
Копирование файла 173MB с /hd0/2 (PIO) на /usbhd0/1 заняло 2 минуты 15 секунд
(т.е. скорость PIO вышла примерно в 2 раза медленнее).

Результаты тестов не показательны, поскольку ограничены скоростью записи на USB (особенное если это SD карта, а не USB флеш), а PIO сам по себе, если CPU не занят другими задачами может достигать заметных значений для линейного чтения/записи.
Spoiler: Show
http://ru.wikipedia.org/wiki/PIO
Quote:
PIO Mode 0 = 3,3 MB/s
PIO Mode 1 = 5,2 MB/s
PIO Mode 2 = 8,3 MB/s
PIO Mode 3 = 11,1 MB/s
PIO Mode 4 = 16,7 MB/s

В твоем же случае это явно ограничение скорости работы с USB флеш: 2,95 МB/s для DMA и 1,28 МB/s для PIO. Для уменьшения эффекта нужно копировать на дополнительный рамдиск. Еще можно физически отключить ATAPI привод и копировать с жесткого на жесткий, если там есть FAT32 раздел. Еще есть подозрение, что скорость NTFS драйвера не самая оптимальная.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Thu Apr 10, 2014 9:14 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Протестировал на своём железе, IDE в режиме SATA native. Всё читается, fat32 пишется. Отличная работа !
Spoiler: Show
K : kernel SVN r4797
K : 4 CPU detected
K : IDE controller programming interface 0001018F
K : BAR0 IDE base addr FF00
K : BAR1 IDE base addr FE00
K : BAR2 IDE base addr FD00
K : BAR3 IDE base addr FC00
K : BAR4 IDE controller register base addr FB00
K : IDE Interrupt 0B
K : IDE controller programming interface 00010185
K : BAR0 IDE base addr F800
K : BAR1 IDE base addr F700
K : BAR2 IDE base addr F600
K : BAR3 IDE base addr F500
K : BAR4 IDE controller register base addr F400
K : IDE Interrupt 0B
K : Channel 1 Disk 0
K : Dev: ST2000DM001-1CH164
K : PIO possible modes 03
K : PIO set mode 01
K : Multiword DMA possible modes 07
K : Multiword DMA set mode 00
K : Ultra DMA possible modes 7F
K : Ultra DMA set mode 05
K : Channel 1 Disk 1
K : Dev: ST3320620AS
K : PIO possible modes 03
K : PIO set mode 01
K : Multiword DMA possible modes 07
K : Multiword DMA set mode 00
K : Ultra DMA possible modes 7F
K : Ultra DMA set mode 05
K : Channel 2 Disk 0
K : Device not found
K : Channel 2 Disk 1
K : Dev: Optiarc DVD RW AD-7203S
K : PIO possible modes 03
K : PIO set mode 01
K : Multiword DMA possible modes 07
K : Multiword DMA set mode 00
K : Ultra DMA possible modes 3F
K : Ultra DMA set mode 05
K : Channel 1 Disk 0
K : Device not found
K : Channel 1 Disk 1
K : Device not found
K : Channel 2 Disk 0
K : Device not found
K : Channel 2 Disk 1
K : Device not found
K : Attach Interrupt 11 Handler 80031744
K : Set IDE IRQ11 return code 8005BC10
K : IDE CH1 DMA enabled
K : IDE CH2 PIO, because ATAPI drive present
K : Attach Interrupt 11 Handler 80031744
K : Set IDE IRQ11 return code 8005BC24
K : IDE CH1 PIO because no devices
K : IDE CH2 PIO because no devices
K : clear_pci_ide_interrupts: port[FB02] = 60 -> 60; port[FB0A] = 40 -> 40
K : clear_pci_ide_interrupts: port[F402] = 00 -> 00; port[F40A] = 00 -> 00


Top
   
PostPosted: Fri Apr 11, 2014 1:34 am 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
Mario_r4 wrote:
Результаты тестов не показательны, поскольку ограничены скоростью записи на USB (особенное если это SD карта, а не USB флеш), а PIO сам по себе, если CPU не занят другими задачами может достигать заметных значений для линейного чтения/записи.
В твоем же случае это явно ограничение скорости работы с USB флеш: 2,95 МB/s для DMA и 1,28 МB/s для PIO. Для уменьшения эффекта нужно копировать на дополнительный рамдиск.
Перепроверил те же файлы, но теперь копировал с /hdX на /tmp0/1.
Результат намного лучше, с огромной разницей в пользу UDMA (диск hd0 работал с PIO, а диск hd2 - с UDMA):
Копирование файла 177MB с /hd2/2 (UDMA) на /tmp0/1 заняло 10 секунд.
Копирование файла 173MB с /hd0/2 (PIO) на /tmp0/1 заняло 1 минуту 12 секунд.
Итого, скорость чтения: PIO - 2.4MB/s, UDMA - 17.7MB/s. Проверял специально несколько раз, и после каждого раза перезагружался, чтобы память обнулилась.
Mario_r4 wrote:
Еще можно физически отключить ATAPI привод и копировать с жесткого на жесткий, если там есть FAT32 раздел. Еще есть подозрение, что скорость NTFS драйвера не самая оптимальная.
FAT32, к сожалению, нет и не будет - это мой рабочий компьютер, и нужно пользоваться тем, что дают на работе (во всяком случае, не будет в рабочее время - разве что принести из дому свой собственный диск с FAT32 и вставить в корпус, пока никто не видит). :-)


Top
   
PostPosted: Fri Apr 11, 2014 8:24 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
yogev_ezra wrote:
Результат намного лучше, с огромной разницей в пользу UDMA (диск hd0 работал с PIO, а диск hd2 - с UDMA):
Копирование файла 177MB с /hd2/2 (UDMA) на /tmp0/1 заняло 10 секунд.
Копирование файла 173MB с /hd0/2 (PIO) на /tmp0/1 заняло 1 минуту 12 секунд.
Итого, скорость чтения: PIO - 2.4MB/s, UDMA - 17.7MB/s. Проверял специально несколько раз, и после каждого раза перезагружался, чтобы память обнулилась.

1) Это не скорость чтения - это скорость копирования. Скорость чтения несколько выше. Запись даже на рамдиск в FAT32 все же занимает некоторое время.
2) Перезагружаться было не обязательно - можно считать или скопировать другой файл, размером более 1 Мб, поскольку в Колибри пока больше 1 Мб на устройство не выделяется в связи с особенностями реализации кэша.
3) Если копировал с помощью KFAR, то у него есть ограничение на размер копируемого блока - ЕМНИП он копирует по 32 Кб за одно обращение. Так что рекомендую проверить копирование с помощью KFM - он использует намного большие размеры блоков для копирования, тем самым достигается заметно более высокая скорость. Хотя это в теории считается менее безопасным, если у компьютера нет резервного источника питания (UPS).

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Fri Apr 11, 2014 6:41 pm 
Offline
Public Relations
User avatar

Joined: Mon Jun 07, 2010 12:01 pm
Posts: 1879
SVN #4822
Процессор: Intel Atom D510
Материнская плата: Intel D510MO. На плате есть 1 SATA controller, встроенный в южный мост NM10, поддерживающий до 2 SATA устройств в режиме IDE/AHCI.
Был подключен 1 SSD диск 240GB SPK-SF12-M240 (отформатированный в NTFS).

В режиме SATA IDE Колибри видит диск, выставляет UDMA-режим, и на чтение вроде всё работает нормально.
Копирование файла 207MB с /hd2/1 на /tmp0/1 через KFAR заняло 36 секунд; через KFM - 10 секунд.
Копирование файла 471MB с /hd2/1 на /tmp0/1 через KFAR заняло 2 минуты 36 секунд; через KFM - 22 секунды.
Итого, скорость копирования через KFAR: 3 ~ 5.75 MB/s, через KFM: 20.7 ~ 21.4 MB/s.
Логи PCIDEV + BOARD прилагаю.
Mario_r4 wrote:
3) Если копировал с помощью KFAR, то у него есть ограничение на размер копируемого блока - ЕМНИП он копирует по 32 Кб за одно обращение. Так что рекомендую проверить копирование с помощью KFM - он использует намного большие размеры блоков для копирования, тем самым достигается заметно более высокая скорость. Хотя это в теории считается менее безопасным, если у компьютера нет резервного источника питания (UPS).
Ты прав, в предыдущем тесте копирование было произведено через KFAR. В этом тесте я исправил недочёт, и сравнил KFAR / KFM.


Attachments:
D510MO-IDE_pcidev.txt [2.55 KiB]
Downloaded 139 times
D510MO-IDE_boardlog.txt [7.66 KiB]
Downloaded 135 times
Top
   
 Post subject:
PostPosted: Mon Apr 14, 2014 5:47 pm 
Offline
KSoC/GSoC Student

Joined: Mon May 20, 2013 6:34 pm
Posts: 25
SVN #4797
Dell Vostro 1540
Процессор: Intel Core i3 M380
На мат. плате контроллер дисков Intel P55/PM55 (так пишет программа бенчамарков, внутрь не глядел, скорее всего часть южного моста)
НЖМД WD5000BPVT-75HXZT3 в режиме ATA не видит.
Всего в БИОСе два SATA Mode: ATA/AHCI. Чесслово!


Attachments:
BOARDLOG-Dell Vostro 1540.TXT [9.65 KiB]
Downloaded 133 times
PCIDEV-Dell Vostro 1540.TXT [2.52 KiB]
Downloaded 131 times
Top
   
 Post subject: Re:
PostPosted: Mon Apr 14, 2014 9:27 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
gtament wrote:
SVN #4797
Dell Vostro 1540
Процессор: Intel Core i3 M380
На мат. плате контроллер дисков Intel P55/PM55 (так пишет программа бенчамарков, внутрь не глядел, скорее всего часть южного моста)
НЖМД WD5000BPVT-75HXZT3 в режиме ATA не видит. 9
Всего в БИОСе два SATA Mode: ATA/AHCI. Чесслово!

Просьба проверить ftp://ftp.kolibrios.org/users/Mario/tem ... evicesi.7z в режиме ATA. (Вообще можно проверить только в ATA режим любое железо, так как AHCI мне в этой теме не нужен). Лог от BOARD нужно выложить сюда, лог от PCIDEV не нужен, т.к. там ничего не меняется.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Apr 14, 2014 9:35 pm 
Offline
KSoC/GSoC Student

Joined: Mon May 20, 2013 6:34 pm
Posts: 25
Done!


Attachments:
BOARDLOG.TXT [10.6 KiB]
Downloaded 132 times
Top
   
PostPosted: Mon Apr 14, 2014 9:51 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
gtament wrote:
Done!

Я увеличил время задержки при посылке команды, так что есть вероятность, что на черный экран будет висеть несколько дольше чем обычно.
ftp://ftp.kolibrios.org/users/Mario/tem ... evices1.7z

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Apr 14, 2014 10:07 pm 
Offline
KSoC/GSoC Student

Joined: Mon May 20, 2013 6:34 pm
Posts: 25
Tested. Not helped


Attachments:
BOARDLOG.TXT [10.61 KiB]
Downloaded 133 times
Top
   
PostPosted: Tue Apr 15, 2014 1:05 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
SVN r.4838 - Fix for IDE controller. Some weird controllers generate an interrupt even if IDE interrupts are disabled and no IDE devices. For example, notebook ASUS K72F - IDE controller 010185 generates false interrupt when we work with the IDE controller 01018f. For this reason, the interrupt handler does not need to be installed if both channel IDE controller running in PIO mode.

Некоторые странные контролеры генерируют прерывания даже если прерывания IDE отключены и нет устройств. Например в ноутбуке ASUS K72F контроллер IDE 010185 генерирует ложные прерывания, когда мы работаем с IDE контролером 01018f. По этой причине обработчик прерывания не нужно устанавливать, если оба канала IDE контроллера работают в PIO режиме.

gtament
Ревизия 4838 твоей проблемы не затрагивает, так что можно не проверять. Я жду от тебя полный lspci

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Tue Apr 15, 2014 4:00 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
SVN r.4839 дополнение к ревизии 4838.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Tue Apr 15, 2014 8:43 pm 
Offline
KSoC/GSoC Student

Joined: Mon May 20, 2013 6:34 pm
Posts: 25
Dell Vostro 1540
*Лог уже поправил на ATA


Attachments:
lspci.txt [22.15 KiB]
Downloaded 152 times


Last edited by gtament on Tue Apr 15, 2014 8:56 pm, edited 1 time in total.
Top
   
PostPosted: Tue Apr 15, 2014 8:46 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1620
Dell Vostro 3300. В IDE-режиме не видно ни жёсткого диска, ни CD. В Linux в том же режиме и то, и другое видно. Лог от lspci -vvv:


Attachments:
lspci-vvv.txt [29.61 KiB]
Downloaded 153 times

_________________
Сделаем мир лучше!
Top
   
PostPosted: Tue Apr 15, 2014 9:42 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1620
С r4841 у меня работает.

_________________
Сделаем мир лучше!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 262 posts ]  Go to page Previous 114 15 16 17 18 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited