О программе
MATS MODS: программное обеспечение которое используется инженерами для тестирования видеопамяти видеокарт NVIDIA.
Mats работает только с видеокартами nvidia, amd видеокарты используют tserver.
Кроме того корректная работа программы MATS MODS возможна тогда когда для нужного ГПУ используется корректная версия. В случае если используется не подходящая версия - возможны не корректные результаты тестирования!
Если используете программу MATS в целях ремонта видеокарт то вы должны понимать, что программа тестирует не саму видеопамять. А записывает/считывает в каждую микросхему памяти объем информации. Если при записи или вычитывании этой информации будет получена ошибка по какойто из микросхем памяти - значит полноценно записать или считать эту информацию не удалось.
Причина такой ошибки далеко не всегда микросхема видеопамяти. Проблема может быть в:
1) Проблема с каналом памяти у самого графического процессора. Неиспарвен сам контролер памяти в ГПУ.
2) Проблема с отсутствием какого либо сигнала или напряжения на микросхему памяти.
3) Проблема с текстолитом - тоесть диференциальная пара передачи данных между ГПУ - VRAM нарушена.
4) Банальный отрыв шара под ГПУ или VRAM что особо часто бывает при ударах или падениях карты.
5) Залитие под ГПУ или самой микросхемой памяти.
MATS - поможет выявить ошибку. Тоесть даст направление для размышлений. Остальное - исключительно задача для головы специалиста по ремонту видеокарт.
Делать правильные выводы и успешно ремонтировать видеокарты вам поможет опыт, гибкий ум и .... я надеюсь... эта статья.
Начало.
Сперва потребуется скачать само програмное обеспечение. Помните что важно именно правильная версия ПО для вашей карты. В примере мы разберем тестирование для 10-й линейки Nvidia. Покажем как работает тест памяти на ней. Не беспокойтесь внизу вы найдете возможность скачать актуальную версию матс для свежих видеокарт!
1) Скачиваем сборку - которую мы будем использовать как "скелет" для нужной версии программы:
2) Скачиваем саму программу для 10 линейки видеокарт:
3) Скачиваем RUFUS:
Создаем тестовую флешку для тестирования gtx1000 линейки
Берем флешку на 2 гигабайта, теоритически можно и 1.Но я пользуюсь только флешками по 2гб.
Вставляем в рабочий компьютер, открываем руфус:
а) В разделе device - будет ваша флешка.
б) Выставляем boot selection (метод загрузки) freedos
б) В разделе partition scheme (схема раздела) выставляем MBR
в) В разделе target system (целевая система) выставляем Bios или Uefi
г) Жмем старт - ждем пока процесс форматирования флешки закончится.
Далее копируем выше скачанный "скелет" для сборки теста на созданную флешку. В самый ее корень. Тот "скелет" что вы скачали уже имеет в папке mats нужную для 10 (gtx 1050, gtx1060, gtx 1070, gtx1080, gtx1080ti) линейки версию. Потому второй пункт в конкретно этом случае можно пропустить. Если бы мы тестировали видеокарту rtx2000-rtx3000 то содержимое папки mats в "скелете" нужно будет удалить и скопировать туда содержимое папки которая лежит в тесте нужной версии. Для rtx2060 она своя, для rtx3070 - своя. Ниже будет опубликован список с разными версиями mats.
Так как мы рассматриваем сейчас тест 10 линейки - пусть будет GTX1070 то ничего копировать в папку mats не нужно.
Далее нас интересует папка tiny. А в ней лежит файл commands. Этот файл создан для выполнения различных тестов и работать с настройками теста мы будем в этом простом текстовом файле. Так удобнее чем править runmatsmods как в других источниках.
Настройка тестового стенда
Для тестирования памяти нашей видеокарты нам потребуется тестовый стенд. Это работающий компьютер, удобнее когда он не в системном блоке, а фактически разложен на столе. Сперва этот стенд нужно настроить для работы с программой MATS MODS.
Нужно зайти в настройки UEFI BIOS вашей материнской платы, и выставить загрузку с устройсв в режиме Legacy. Далее - вставить созданную нами тестовую флешку с программой и добиться того чтобы наш стенд загружался с флешки. Лучше отключить все другие накопители. Выставить флешку 1-й в списке загрузок и сохранить настройки.
Так же в настройках стенда обязательно должна использоваться внешняя видеокарта, а не встроенная. Есть конечно вариант тестирования с выводом изображения из встроенного адаптера, но сейчас мы рассматриваем обычный тест сразу через дискретную видеокарту. Потому вариант вывода изображения должен быть выбран с внешней видеокарты.
Кроме того тестовый стенд должен быть не абы каким. Я знаю что тест может работать и на core 2 duo. Но я использую платформу на 5 поколении интел. А более свежие видеокарты - rtx3000 rtx4000 на 10 поколении. ОЗУ должно быть не меньше чем у тестируемой видеокарты. Особенно важно при тестах MODS. Это рекомендация, большинство карт с большинством тестов работает и на 4 гб озу.
Настройка самого теста, выбор теста и его параметры
Теперь вы должны понимать что тест Mats и тест Mods - разные тесты. На данном этапе рассмотрим именно тест mats. Он позволяет записать в каждую из микросхем определенный объем информации и считать ее. Происходит это на стоковой частоте. Просто записываем - считываем - сверяем. Если есть проблема - получаем ошибку по микросхеме памяти при записи в которую у нас возникли проблемы.
Для запуска такого теста мы должны подключить видеокарту в тестовый стенд. Прописать в файле commands строчки:
./mats -e 20
Цифру 20 можно изменить - это количество мгб информации для записи в микросхему памяти. Рекомендую много не ставить. Для простого теста хватит и 5.
poweroff
Последняя команда выключит тест по его завершении. Нам ведь нужно как то понять что можно выключать стенд, снимать видеокарту и смотреть результаты теста? И если видеокарта изображение не выводит, то определить этот момент весьма проблемматично. Потому полагаю использовать команду poweroff очень удобно.
Подключить видеокарту в стенд, и включить всю систему, дождаться автоматического выключения.
Результаты тестирования Mats
После того как будет выполнен цикл тестирования, машина выключится согласна последней команде. Извлекаем флешку, вставляем в работающий ПК. Открываем папку Mats и ищем там текстовый файл report.
Открываем его, выглядеть будет вот так, единственное что ошибки могут быть по другим микросхемам памяти:
=== MEMORY ERRORS BY SUBPARTITION ===
SUBPART READ ERRORS WRITE ERRORS UNKNOWN ERRS
------- ----------- ------------ ------------
FBIOA0 0 0 0
FBIOA1 0 0 0
FBIOB0 0 0 0
FBIOB1 0 0 0
FBIOC0 0 0 0
FBIOC1 0 560 0
FBIOD0 0 0 0
FBIOD1 0 0 0
В данном случае мы получили явную ошибку по каналу C1 - ошибка записи данных в эту микросхему.
Как определить неиспарвную микросхему имея на руках ошибки по каналу
Посмотрите на картинку ниже, Микросхемы памяти нумеруются против часовой стрелки от ключа (стрелочка) на углу ГПУ.
Кроме того нумерация идет со старшего бита. Тоесть сперва 1, затем 0. A1, A0, B1, B0, C1,C0,D1,D0.
Нагляднее всего на картинке:
У нас есть информация об ошибке записи в микросхему памяти, мы знаем кто она что дальше?
А вот это ребята не опишешь в тексте. Нужно иметь опыт в ремонте видеокарт, понимать причину дефекта.
Вы можете заменить микросхему памяти на новую и проверить ушла ли проблема. Если ушла и видеокарта работает. Можно считать что ее ремонт завершен. Но на самом деле есть несколько разных сценариев по которым проблема может вскоре вернуться.
Простой пример, проблема была в том что один из шаров под ГПУ не контактировал с площадкой, при замене памяти вы нагрели карту и временно контакт восстановлен - а дальше спустя небольшой промежуток времени вы опять получите те же проблемы.
Здесь уже только опыт решает, со временем поработав мастером лет 5-10 у вас точно получится разбираться во всех премудростях и особенностях ремонта. К сожалению нельзя написать простую инструкцию и передать ее человеку чтобы тот сразу же все понял и все мог починить. Это очень длительный и не простой процесс.
Если при замене микросхемы - все тоже самое, а поди еще хуже - и ошибок стало больше то один из вариантов дальнейшей диагностики это:
1) Снять микросхему памяти
2) Проверить каждую дифференциальную пару между ГПУ и VRAM мультиметром в режиме падения напряжения на диоде. У пар должны быть примерно одинаковые показания с небольшой погрешностью.
Понятное дело что обрывов или пробоя на землю быть не должно.
Если значение у одной линии в паре низкое - обычно проблема в ГПУ. Можете снять его, высчитать нужный пятак и првоверить падение на подложке самого ГПУ. Если значение такое же - порт контролера памяти вышел из строя. На 10-й линейки это никак не чинится. На RTX3000 - есть возможность отключить канал памяти. Но об этом мы расскажем уже в другой статье.
Если по одной из диф пар обрыв. Снимаем ГПУ и смотрим падение на самом гпу, на подошве, если обрыв и там - порт в обрыве, ГПУ неиспаравен. А вот если на подошве ГПУ этот вывод имеет одинаковое падение (с остальными парами, учитывая небольшую погрешность) то проблема либо в пайке ГПУ к плате, либо в текстолите, обрыв токоведущей дорожки.
mats для gtx1650-1660ti
400.271_1650
400.247_1660
400.179_1660TI
mats для rtx2070-2080ti
400.221.1_2070
400.221.1_2080
400.184_2080TI
mats для rtx3070-3080
455.107_SKU10_3070
455.120_3080