Страница 2 из 2

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 21 июн 2019, 16:09
Glite
torvn77 писал(а):(ничего особо сложного в этом нет, просто надо скопировать ядро и каталог с модулями)
В этом и есть основная сложность, поскольку попросту не существует RTAI ядер из более поздних версий дистра. Есть только RT-PREEMPT ядра, которые имеют даже хуже показатели джиттера в сравнении с RTAI.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 21 июн 2019, 16:37
Serg
Всё гораздо проще!
Система уже давно грузится так: сначала с диска в память загружается и распаковывается образ ядра, следом за ним загружается и распаковывается initrd - это образ Init RAM-диска, на котором лежат ядерные модули драйвера дискового контроллера, файловой системы и прочего, что нужно для нахождения на дисках корневой файловой системы и её монтирования. Можно лишь творчески доработать эту концепцию... :)

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 21 июн 2019, 18:41
torvn77
UAVpilot, тут проблема в том что как ни крути, а ФС в ОЗУ будет не сжатой и образ в 1ГБ займёт все 4 ГБ.
По идее это можно обойти сделав образ на btrfs с включённой компрессией но умеет ли старая версия btrfs в уровень компрессии не известно.

Так то конечно при вливании денег докупить ОЗУ не вопрос, но iMaks-RS только ради эксперимента этот расход делать не хочет.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 21 июн 2019, 20:04
MX_Master
Ща ОЗУшки настолько дешёвые, что вся возня со сжатием выйдет дороже ;)

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 21 июн 2019, 21:37
Serg
torvn77 писал(а):UAVpilot, тут проблема в том что как ни крути, а ФС в ОЗУ будет не сжатой и образ в 1ГБ займёт все 4 ГБ.
Ну и хорошо, в 4 ГБ можно всю систему с X-ми поместить.
Сейчас 8ГБ RAM стоит столько-же, сколько самый мелкий SSD более-менее нормальной модели. Вы всё ещё хотите SSD? :)
torvn77 писал(а):Так то конечно при вливании денег докупить ОЗУ не вопрос, но iMaks-RS только ради эксперимента этот расход делать не хочет.
Без разницы, про RAM-диск я писал всем.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 22 июн 2019, 12:19
iMaks-RS
torvn77 писал(а):но iMaks-RS только ради эксперимента этот расход делать не хочет
Как-то не вошло на моём железе.. в один момент GUI завис на прочь, но при этом циферы в окне теста меняются... правда джиттер.. 100228414 нс... скриншот сделать не получилось, но сделал фото на тапок.. (
После изьятия видеокарты, запустил повтороный тест, но без изменений опций ядра.. остался nomodeset вместо i915.modeset=0..
Джиттер стал меньше 10 000.. 9851.. (три сеанса glxgears)... На этом решил и оставить. Носит это всё не коммерческий характер.. работает - ну и слава Богу... Лучшее - враг хорошего..

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 22 июн 2019, 18:04
Serg
Всякие "серьёзные" видекарты любят сами захватывать шину для общения с памятью, поэтому они как правило только ухудшают ситуацию.
i915.modeset=0 или nomodeset отключают поползновения драйверов воспользоваться какой-нибудь "ускорительной" фичей видеокарты.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 27 июн 2019, 08:43
torvn77
Если сложить весь мой опыт то он будет таким:

Как мне помнится включение софтварного рендеринга LIBGL_ALWAYS_SOFTWARE приводило к очень огромному ухудшению латенси, хотя вроде весь рендеринг ложился на процессор и вообще не должен был мешать реалтайму.
Точно не помню, но по моему я там делал какие то настройки переводившие Х сервер на стандартные драйвера, правда какие именно не помню, возможно vesаfb, но вроде я пробовал разные.
Но так или иначе это был провал.

Другие люди пишут, да и сам я наблюдал что использоаание интегрированного видео приводит к очень низким латенси и это при том, что по идее интегрированное видео использует обычное ОЗУ что должно мешать работе ОС и приводить к росту латенси.
Это вроде бы опровергает мою версию о влияний на латенси скорости работы видеокарты, но на самом деле подтверждает если посмотреть на блоксхемах как подключена видеокарта
Core_i3_530_04.jpg (4449 просмотров) <a class='original' href='./download/file.php?id=165303&sid=07168e6a601de7242881d08f660b4fdb&mode=view' target=_blank>Загрузить оригинал (53.29 КБ)</a>
Xeon-Phi-core.jpg (4451 просмотр) <a class='original' href='./download/file.php?id=165302&sid=07168e6a601de7242881d08f660b4fdb&mode=view' target=_blank>Загрузить оригинал (66.16 КБ)</a>
По одной блоксхеме видеоядро это часть контролёра ОЗУ, по другой оно сидит за L2 кешем на одной шине с ядрами.
Это очень быстрое подключение к процессору, причём происходящее мимо шины PCI и видимо связанных с ней контролёров, наверное в том числе и контролёра прерываний.

В принципе я получал на более старых ядрах Linux и 128 битном Geforce 250 хороший латенси, но более поздних ядрах этот результат портился, это подталкивало меня к мысли что дело в коде ядра, но я это игнорировал, так как идея подобрать видеокарту была более простой.

С другой стороны если учесть как идёт разработка видеокарт то логично ожидать то, что более старый и более дешёвый Geforce 250 получит портящие реалтайм улучшения посже чем более дорогой и более поздний Geforce 760.

Теперь UAVPilot выдвигает версию
UAVpilot писал(а):Всякие "серьёзные" видекарты любят сами захватывать шину для общения с памятью, поэтому они как правило только ухудшают ситуацию.
Если сложить всё в месте то можно предположить что самозахват шины видеокартами происходит только при наличии в их драйвере определённого кода.
:lamp_flash: Нельзя ли найти в видеодрайвере код задействующий портящий реалтайм аппаратный функционал и попросту его убрать, оставив всё остальное.

Возможно тоже самое проделать и с драйверами других устройств, таких как дисковый контролёр, сетевые карты, контролёр шины USB?

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 27 июн 2019, 13:18
alex_sar
Никогда внутрь видеодрайверов не смотрел, но - попросту убрать код из драйвера ) уверен что нельзя. Это же не ардуино, у железки есть свои алгоритмы работы и думаю довольно жёсткие.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 27 июн 2019, 13:48
Сергей Саныч
Был уже прецедент, правда не со столь радикальными средствами, как копание в коде драйверов.
Сергей Саныч писал(а):Материнка была где-то 2000-2002 года, кажется, EPOX, на чипсете вроде бы VIA. Процессор - Athlon XP 1700 или около этого. Видео Radeon 9600 или что-то похожее, но тоже десятилетней давности. Путем научного шаманства - залез в BIOS setup, в разделе PNP/PCI Setting нашел пункт вроде VGA Interrupt Enable и запретил его. После чего Latency упал примерно с 200000 до 12000-15000.
Re: Latency-test показания на разных материнских платах #117

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 27 июн 2019, 14:04
torvn77
alex_sar писал(а):Никогда внутрь видеодрайверов не смотрел, но - попросту убрать код из драйвера ) уверен что нельзя.
Можно, потому как
torvn77 писал(а):С другой стороны если учесть как идёт разработка видеокарт то логично ожидать то, что более старый и более дешёвый Geforce 250 получит портящие реалтайм улучшения посже чем более дорогой и более поздний Geforce 760.
То есть драйвер пишется не целиком, а по кусочкам, вопрос в том чтобы найти и с минимальной регрессией и последствиями удалить вредный кусок.

Re: LinuxCNC,показания Latency-test и разрядность шины видео

Добавлено: 27 июн 2019, 16:06
Serg
Любая видеокарта выводит картинку на экран след. образом - просто тупо в цикле копирует содержимое видеобуфера (через DAC) в выдеовыход.
У внешней видеокарты есть своя собственная память и видеобуфер располагается в ней - казалось бы всё замечательно, выводи себе и не мешай работать остальным. Но для общения с системой и используются все эти DMA и IRQ, которые и занимают системные память и шину. Кстати, в некотрых BIOS есть параметр типа "VGA апертура" - это как раз размер куска, пересылаемого за раз. Можно попробовать поменять...
У встроенной видеокарты казалось-бы всё гораздо хуже - видеобуфер-то в системной памяти... А в реальности всё гораздо лучше: как правило циклический вывод видеобуфера встроен в механизм регенерации DRAM и практически не требует ресурсов. И заполнение видеобуфера данными из приложения (кнопки, окошки и т.п.) происходит "естественным" образом - видеобуфер-то в системной памяти...
Сергей Саныч писал(а):в BIOS setup, в разделе PNP/PCI Setting нашел пункт вроде VGA Interrupt Enable и запретил его. После чего Latency упал примерно с 200000 до 12000-15000.
Это правильная идея, прерывания от видеокарты актуальны разве что в играх. Только вот не везде это можно отключить.