LINUX.ORG.RU

MATS/MODS сделать BolgenOS

 , mats, mods


0

1

В общем пошло много ноутов с дискретками nvidia с кодом ошибки 43. И тут хрен пойми, память или сам чип. Существующие сборки mats/mods нифига на современных буках не стартуют. Какой дистрибутив взять что бы сразу в консольном режиме грузился и дружил с современными uefi? Шоб оттуда mats пускать.

Прошу также кастануть пана @GPFault, а то у меня скора не хватает.



Последнее исправление: coronaswine (всего исправлений: 1)
Ответ на: комментарий от GPFault

По поводу memtestCL можно поподробнее, пожалуйста?

У меня тут под рукой на этой хате нет ничего с дискреткой, и даже линукса нет, только бук с интелом. Но он даже интел у меня стал тестировать под виндой, тоже бывает полезно, не так давно был бук, виснущий с артефактами при нагрузке на проц. Собственно, проц приговорили к замене и припёрли ко мне, а я как-то так краем сознания подумал что а вдруг область памяти, которая выделена встройке, дохлая, и действительно, всё заколосилось без ОЗУ впаянной.

Короче полезная штука, спасибо большое. На АМД она тоже работает?

Устройство инициализированно - каким образом определить? Ну то есть если висит в виндовом диспетчере с ошибкой, то инициализированно?

coronaswine
() автор топика
Ответ на: комментарий от coronaswine

По поводу memtestCL можно поподробнее, пожалуйста?

memtestCL работает на windows/linux + amd, вообще на чём угодно под любой ОС, где есть opencl, даже на arm-ах под линуксом а-ля nanoPI. Главное собрать)

Другое дело что выводы по нему можно делать достаточно ограниченные. Адрес ошибки даже в виртуальной памяти он не показывает. Это теоретически можно допилить, благо есть исходники, но без опыта по opencl я за 20 минут не осилил понять как именно. То есть до получени информации о том, какой чип неисправен тут далеко.

Так что выводы по результатам memtestCL достаточно ограниченные:

  • Если на тестировании всего объёма ошибок нет, а в других приложениях ошибки - память непричём, виноват чип.
    • тестируемый объём успешно задаётся аргументами команлной строки
    • иногда для тестирования всвего объёма приходится запускаь параллельно несколько экземпляров, т.к. не все реализации opencl могут один большой блок, особенно больше 4gb
  • Если на тестировании всего объёма ошибки есть, а на тестировании малого (порядка 2*объём кеша) ошибок нет - виновата память
  • Если на тестировании малого объёма ошибки есть - то отличить GPU от памяти проблематично
    • но в такой ситуации вообще странно, что поставился драйвер. Что на линуксе, что на винде при сильных проблемах с памятью об успешной установке драйвера и создании opencl-контекста речь обычно не идёт.

Устройство инициализированно - каким образом определить? Ну то есть если висит в виндовом диспетчере с ошибкой, то инициализированно?

В контексте тестирования памяти при помощи mats (т.е. без драйвера, производящего opencl-вычиcления) понятие устройство иннициализировалось это «с момента последнего reset видеокарта прошла первичную инициацлизацию своих компонент до состояния в котором активна память и ативно отображение памяти на адресное простанвство CPU согласно PCIe BAR». Это внутреннее состояние устройства, никакого внятного способа понять произошло это или нет - мне неизвестно. Есть только крайние случаи:

  • если mats запускается и на объёме 2*размер_кеша говорит что как минимум по некоторым банкам нет ошибок - значит инициализация прошла
  • если кусок вывода в lspci -v показывате диапазон памяти как disabled - значит инициализации не было

Инициализацию умеет делать BIOS POST (на десктопах, иначе как бы он смог что-то показывать), а также драйвера - nvidia, nouveau. Часто, если драйвер уже выдал какое-то сообщение об ошибке - знаичт инициализацию он начал, и скорее всего доыёл до интересного нам места. Поэтому когда в dmesg появляется ошибка от драйвера, или в винде появляется ошибка 43 - велик шанс что инициализация выполнена. Особенно если подождать сакральные 2 минуты, о которых я писал в этом треде выше.

Но т.к. mats под винду нет (да, лоровцы, это пример суперогороженного проприетарного софта, который есть только под linux) - то толку от ошибки 43 абсолютно никакого. При ребуте инициализированность утратится. Теоретически, при желании можно наверное написать тестилку памяти по физическим адресам под винду.

GPFault ★★
()
Последнее исправление: GPFault (всего исправлений: 3)
Ответ на: комментарий от GPFault

Огромное спасибо, понятно, доходчиво и сразу видно профессионала своего дела) На профильном форуме тоже создал тему, продублирую туда? Укажу авторство, естественно

coronaswine
() автор топика
Ответ на: комментарий от coronaswine

да, только дай ссыль здесь. Т.к. если про vlab то - из техниеческих я там только раздел про видеокарты читаю и там вроде такой темы пока нет. Так как разделы про ноуты - то мне тёмный лес и там тему не увижу)

GPFault ★★
()
Последнее исправление: GPFault (всего исправлений: 1)
Ответ на: комментарий от coronaswine

Спасибо. А mats/mods у тебя в архиве неисполняемые, да. chmod +x надо. А насчёт своей сборки — это тебе точно к спуфу. https://github.com/sp00f1ng/booty

Только яхз, как втуда блоб сунуть. Но вроде как несложно должно быть.

ass ★★★★
()
Ответ на: комментарий от ass

Да я повесил на них +x наутилусом. Может он глючит, конечно.

coronaswine
() автор топика
Ответ на: комментарий от cross_platform

Ты бредишь.

За все дистры не скажу но в моём есть /lib/udev/rules.d/99-nvidia.rules /lib/udev/rules.d/99-nvidia-uvm.rules.

Иксы могут не старотовать, но блоб будет подгружен.

ass ★★★★
()
Ответ на: комментарий от ass

Блоб использует ленивую инициализацию: после того как он загружается он ничего с видяхой не делает пока не получит первое приложение, которое требует доступ к видяхе (иксы, nvidia-smi, майнинг, memtestCL и проч) или фреймбуфер (говорят что блоб наконец научился, но не знаю как). Даже VBIOS не вычитывает с неё. Можно почти полный труп втсавить, после загрузки модуля - никаких ошибок. Только на прервом использовании.

GPFault ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.