1. Получи максимум инфопродуктов, оформи подписку всего за 295 рублей!
    Скрыть объявление

Чтиво Wargaming не любит AMD

Тема в разделе "Интернет, Компьютеры и IT-новости", создана пользователем Denzila, 28 июн 2016.

?

Как вы думаете, это честно

  1. Нет.

    100,0%
  2. Да.

    0 голосов
    0,0%
  3. Не интересует, просто прохожу мимо.

    0 голосов
    0,0%
Можно выбрать сразу несколько вариантов.
  1. Denzila

    Denzila Складчик Новички

    Сообщения:
    16
    Симпатии:
    21
    Играю в танчики часто, но компьютер на процике от AMD, танки довольно медленно идут, решил поискать и разобраться в чем дело)

    [​IMG]
    Что происходит:
    Компилятор для программного кода может выдавать несколько версий машинного
    кода, каждая из которых оптимизирована для определённого процессора и набора
    инструкций, например, SSE2, SSE3, и т.д. Система включает в себя функцию,
    которая определяет, на каком типе процессора она запущена и выбирает самую
    подходящую версию. Эта функция называется диспетчером процессора. Диспетчер
    процессора Intel проверяет не только набор инструкций, поддерживаемый
    процессором, но также идентификатор производителя процессора.
    Если идентификатор — строка «GenuineIntel», то выбирается наиболее
    оптимальный вариант кода. Но если процессор не от Intel, то в большинстве
    случаев будет выбран самый медленный из возможных вариантов, даже если
    процессор полностью совместим с лучшей версией.

    Wargaming не уважает пользователей процессоров AMD и компилирует игры под процессоры Intel, что вызывает замедление у пользователей использующих процессоры AMD.
    В частности замедление касается игр World of Tanks и World of Warships.

    Патч 0.9.15.0.1 обновился worldoftanks.exe (без изменений в лучшую сторону)
    [​IMG]

    Добавлю инструкцию используемой программы которая недолжна находить ничего если используется нормальный или пропатченный компилятор:

    Intel Compiler Patcher

    ВНИМАНИЕ! ВЫ ИСПОЛЬЗУЕТЕ ЭТУ ПРОГРАММУ НА СВОЙ СТРАХ И РИСК. АВТОР НЕ НЕСЕТ
    ОТВЕТСТВЕННОСТИ ЗА ЛЮБУЮ ВОЗМОЖНУЮ ПОРЧУ ИНФОРМАЦИИ, ВОЗНИКШУЮ В РЕЗУЛЬТАТЕ
    ИСПОЛЬЗОВАНИЯ ЭТОЙ ПРОГРАММЫ. ПОЖАЛУЙСТА ПРОЧИТАЙТЕ ФАЙЛ LICENSE.TXT ДЛЯ
    ПОДРОБНОЙ ИНФОРМАЦИИ.

    ВАЖНО! Данная программа может вносить изменения в исполняемые файлы сторонних
    разработчиков, фирм и компаний. В результате этого Вы можете нарушить условия
    лицензионного соглашения программ о «не допустимости модификации программы и
    ее частей». Пожалуйста, перед тем, как применять данную программу для
    модификации любых сторонних исполняемых файлов, ознакомьтесь с условиями
    лицензии этих программ.

    СОДЕРЖАНИЕ
    1. ОПИСАНИЕ
    2. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
    3. ПРАКТИЧЕСКАЯ ЧАСТЬ
    4. ПРИНЦИП РАБОТЫ ICP
    5. РАБОТА С ПРОГРАММОЙ
    5.1 РАБОТА С ПРОГРАММОЙ — ОПЦИИ
    5.2 РАБОТА С ПРОГРАММОЙ — СКАНИРОВАНИЕ (ПОИСК)
    5.3 РАБОТА С ПРОГРАММОЙ — ПАТЧИНГ
    6. БЛАГОДАРНОСТИ
    7. АВТОР

    1. ОПИСАНИЕ
    Программа Intel Compiler Patcher (далее ICP) предназначена для поиска
    исполняемых файлов, скомпилированных с помощью Intel C++ Compiler, с
    возможностью дальнейшего отключения «диспетчера процессора» в найденных
    файлах. ICP может повысить производительность таких программ на процессорах,
    отличных от Intel.

    2. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
    Компилятор для программного кода может выдавать несколько версий машинного
    кода, каждая из которых оптимизирована для определённого процессора и набора
    инструкций, например, SSE2, SSE3, и т.д. Система включает в себя функцию,
    которая определяет, на каком типе процессора она запущена и выбирает самую
    подходящую версию. Эта функция называется диспетчером процессора. Диспетчер
    процессора Intel проверяет не только набор инструкций, поддерживаемый
    процессором, но также идентификатор производителя процессора.
    Если идентификатор — строка «GenuineIntel», то выбирается наиболее
    оптимальный вариант кода. Но если процессор не от Intel, то в большинстве
    случаев будет выбран самый медленный из возможных вариантов, даже если
    процессор полностью совместим с лучшей версией.

    3. ПРАКТИЧЕСКАЯ ЧАСТЬ
    Часть функции диспетчера задач от компиляторов Intel представляет из себя
    код вида:

    [..skip..]
    mov eax, [ebp][-0008]
    cmp eax, 0756E6547 ;"uneG" ; Проверка на «Genu»
    jne not_intel ; если не равно, уходим на not_intel
    mov eax, [ebp][-0010]
    cmp eax, 049656E69 ;"Ieni" ; Проверка на «ineI»
    jne not_intel ; не равно — not_intel
    mov eax, [ebp][-0014]
    cmp eax, 06C65746E ;"letn" ; Проверка на «ntel»
    jne not_intel ; не равно — not_intel
    mov edx, 000000001 ; тот самый секретный байт
    jmps next
    not_intel:
    xor edx, edx ; а здесь 0, для всех не-интел процессоров
    next:
    [..skip..]

    Здесь видно, что происходят три сравнения с сигнатурами «Genu», «ineI»,
    «ntel» и если все три проверки завершились удачей, регистру EDX присваивается
    значение «1» (один) — процессор от компании Intel. В противном случае — «0»
    (ноль) — процессор от любых других производителей. Из этого следует, что
    если отключить данные проверки, или заменить их на условие, которое всегда
    будет верно, на выходе в регистре EDX будет содержатся «1» (один) не зависимо
    от типа процессора.

    4. ПРИНЦИП РАБОТЫ ICP
    ICP базируется на алгоритме оригинального патчера от M. D Mackey © 2004 на
    языке Perl: в исполняемом файле производится поиск на наличие сигнатур команд
    сравнения, например 81 fa 47 65 6e 75 (cmp edx, 0756E6547), и последующей их
    заменой на команды вида testl edx, 000000000 (f7 c2 00 00 00 00). Условие
    testl edx, 00000000 всегда будет верным, а значит в EDX будет всегда значение
    «1» (один), не зависимо от полученной ранее командой CPUID сроки. Таким
    образом программа всегда будет считать, что она выполняется на процессоре от
    фирмы Intel.
    Регистры у команд сравнения могут быть различными, в зависимости от версий
    компиляторов. ICP проверяет сигнатуры команд сравнения с регистрами: EAX, EBX,
    ECX, EDX, EBP, ESI, EDI и [EBP][offset].

    5. РАБОТА С ПРОГРАММОЙ
    Интерфейс программы состоит из главного окна, на котором располагаются кнопки
    управления программой, список найденных файлов и ниже — информация о каждом
    найденном файле. Работа с программой сводится к двум основным этапам: 1)
    непосредственно сканирование (поиск) файлов и 2) отключение диспетчера
    процессора в найденных файлах (патчинг).

    5.1 РАБОТА С ПРОГРАММОЙ — ОПЦИИ
    Кнопка «Опции» предоставляет возможность настроить параметры поиска и
    некоторые другие параметры:

    «Минимальный размер» — Минимальный размер сканируемых файлов. По умолчанию
    равен 500 байтам. Изменить в меньшую сторону параметр нельзя, поскольку
    вряд ли Вам встретится исполняемый файл в Windows меньше пятиста байт.

    «Максимальный размер» — Максимальный размер сканируемых файлов. По умолчанию
    равен 100 Mb. Уменьшение этого параметра приведет к повышению быстродействия
    сканирования, так как ICP загружает ПОЛНОСТЬЮ каждый файл в оперативную память.

    «Искать файлы с не одинаковыми регистрами» — Этот параметр следует объяснить
    подробнее. Обычно, процедура проверки типа процессора в компиляторах Intel
    состоит из трех команд сравнения сигнатур «Genu»,"ineI","ntel" с одинаковым
    регистром, то есть например только с EAX или только с EDX и тд. Однако,
    встречаются исполняемые файлы в которых проверка сигнатуры производится с
    различными регистрами, например:
    cmp eax, «Genu»; cmp ebx, «ineI»; cmp edx, «ntel». Такой алгоритм сравнения
    обычно применяется просто для идентификации процессора и не указывает на
    принадлежность программы к Intel Compiler'у. С другой стороны, в программе
    может сначала встретится обычная проверка диспетчера процессора Intel
    (сравнение с одним и тем-же регистром), а где-то в конце программы уже
    собственный алгоритм проверки типа процессора, написанный программистом. По
    умолчанию данный параметр выключен. Не рекомендуется его включение, если Вы
    не понимаете, что Вы делаете.

    «Искать файлы с нечетным количеством совпадений» — Процедура проверки в
    диспетчере процессора Intel состоит из трех команд сравнения. Так например, если
    в программе встречается только одна команда сравнения cmp eax,"Genu" это
    говорит о не принадлежности программы к Intel Compiler'у, а о собственной
    функции определения типа процессора написанной программистом. Однако, как и
    в предыдущем случае, возможен вариант, когда в начале программы встречается
    обычная проверка диспетчера процессора Intel (cmp eax, «Genu»; cmp eax, «ineI»;
    cmp eax, «ntel»), а где-то в конце программы — одинокая команда cmp ebx,"Genu".
    По умолчанию данный параметр выключен. Не рекомендуется его включение, если Вы
    не понимаете, что Вы делаете.

    «Делать бекап» — Делать резервное копирование файлов перед их изменением
    (патчем). Файл копируется в ту же директорию, где находится оригинальный файл,
    с расширением .orig По умолчанию данная функция включена.

    «Расширения файлов» — указывает, файлы с какими расширениями следует искать.
    По умолчанию ICP ищет и проверяет все файлы с расширениями «.EXE», «.DLL»,
    «.ACM», «.AX», «.CPL», «.OCX». Каждое расширение должно начинаться с точки,
    разделителем служит символ «;» (точка с запятой).

    «Язык» — Язык интерфейса программы.

    «Автоматическая прокрутка файл-листа» — Позволяет автоматически прокручивать
    в низ список файлов при сканировании. По умолчанию включена.

    «Влючить лог-файл» — Позволяет включить протоколирование действий программы.
    Лог файл имеет имя «icc_patch.log» и создается в директории, откуда запускалась
    программа ICP.

    5.2 РАБОТА С ПРОГРАММОЙ — СКАНИРОВАНИЕ (ПОИСК)
    ВНИМАНИЕ! Перед началом сканирования файлов рекомендуется отключить
    анти-вирусный резидентный сканер. Так как ICP работает с исполняемыми файлами
    (производит открытие файла и его чтение в память), то как правило,
    анти-вирусный резидентный сканер перехватывает обращения к файлам и
    предварительно сканирует их на вирусы, тем самым значительно замедляя поиск
    файлов. ICP НЕ запускает загруженный исполняемый файл на выполнение, а значит
    не может активировать вредоносный код, случайно встреченный в программах.

    Для поиска файлов, скомпилированных Intel Compiler'ом служит кнопка «Поиск».
    Вам предлагается выбрать начальный каталог, откуда начнется сканирование.
    Процесс сканирования отображается в нижней статусной строке. Найденные файлы
    помещаются в центральное окно программы. Для просмотра информации о файле и
    найденных в нем сигнатур необходимо нажать на имени файла в списке файлов.
    Можно остановить процесс сканирования кнопкой «Стоп».

    5.3 РАБОТА С ПРОГРАММОЙ — ПАТЧИНГ
    После сканирования необходимо отметить нужные файлы галочками в списке и
    нажать кнопку «Патчить».

    6. БЛАГОДАРНОСТИ
    В данном документе частично использован перевод статьи «Will Intel be
    forced to remove the „cripple AMD“ function from their compiler?» Алексея
    Романова.
    Based on Perl version © Copyright M. D Mackey 2004. e-mail: mark@swallowtail.org
    Third party library:
    TaskEx v1.4 © Alexander Alexeev
    AsyncCalls © 2006-2009 Andreas Hausladen
    RXLib port © Oleg Fedorov
     
    Gustav нравится это.
  2. skipper47

    skipper47 Складчик Новички

    Сообщения:
    94
    Симпатии:
    64
    Много текста. Очень сложна))) Но, хочу сказать, что у самого процик от AMD. Очень старый. А в танчики играю очень часто, и не замечал, цитата: "довольно медленно идут". Все летает хорошо. А кораблики, так вообще оптимизированы лучше, чем танки. Конечно, сугубо личное замечание.
     
  3. Denzila

    Denzila Складчик Новички

    Сообщения:
    16
    Симпатии:
    21
    Видео сейчас GTX 780 Ti, у друга почти аналогичная ситуация) Имелась в виду игра на максимальных( или близких к ним настройках) Тем более может пригодиться тем, у кого слабенькие ПК)
     

Загрузка...
Похожие темы Форум Дата
Чтиво Нативная реклама на 40% эффективнее других Бизнес, маркетинг и менеджмент Сегодня, в 11:22
Скачать Как сделать продающее предложение на сайте в любом бизнесе - Христосенко (2016) Бизнес, маркетинг и менеджмент Сегодня, в 11:19
Скачать 100 примеров заполнения формы 6-НДФЛ (2016) Книги, литература Сегодня, в 10:29
Скачать Пособие для бухгалтеров некоммерческой организации (2016) Книги, литература Сегодня, в 10:27
Скачать Харизма Голоса - Крянева Музыка Сегодня, в 10:24
Скачать Как получать заказы на изготовление мебели из интернета - Смирнов Ремонт и строительство Сегодня, в 08:40
Скачать Продюсирование в инфобизнесе - Зарипов (2015) Бизнес, маркетинг и менеджмент Сегодня, в 08:38