1. Гость, Нет времени набирать посты, чтобы открыть HIDE ? Теперь есть решение, станьте Членом Клуба!
  2. Новые покупки

    09.12.2016: [Convert Monster] Яндекс.Директ 2016 (VIP)

    07.12.2016: Эффективный маркетинг (П р я д у х и н К.)

    07.12.2016: [Courson] SMM с нуля: практическое руководство по магии в социальных медиа

    07.12.2016: Набор курсов от проекта Обнаженный бизнес

    07.12.2016: Бизнес за 21 день

    07.12.2016: Биржа. Легко не будет. (Артем Звёздин) VIP Курс

    06.12.2016: Денис Борисов - Мои биологически активные добавки (БАДы)

    06.12.2016: Курс по уверенности от тренера по харизме и межличностным коммуникациям из Вегаса

    06.12.2016: Практические методы диагностики и самодиагностики

    06.12.2016: Convert Monster - Идеальный landing page 3.0

    06.12.2016: Горячий миллион (пакет "Эксперт")

    06.12.2016: (Реалити) Создание и раскрутка Ютуб канала с нуля от А до Я

    05.12.2016: Доступ к базе коммерческих фото Shutterstock

    03.12.2016: Интим перед вебкамерой [Sex Workout]

    03.12.2016: [Синергия] SYNERGY SERVICE FORUM 2016 - Международный форум по сервисным стратегиям

    03.12.2016: [Синергия] Synergy Global Forum 2016 - глобальный форум для глобального прорыва

    03.12.2016: [Синергия] Роман Масленников. Взрывной пиар

    03.12.2016: Бизнес Молодость - МЗС Storage. Подписка на год

    02.12.2016: Бизнес Молодость - Соль цеха

    02.12.2016: Управляем Zennoposter через крутой веб-интерфейс

  3. Нужен организатор

    07.12.2016: Эффективный маркетинг (П р я д у х и н К.)

    07.12.2016: [Courson] SMM с нуля: практическое руководство по магии в социальных медиа

    07.12.2016: Набор курсов от проекта Обнаженный бизнес

    07.12.2016: Бизнес за 21 день

    07.12.2016: Биржа. Легко не будет. (Артем Звёздин) VIP Курс

    06.12.2016: Денис Борисов - Мои биологически активные добавки (БАДы)

    06.12.2016: Курс по уверенности от тренера по харизме и межличностным коммуникациям из Вегаса

    06.12.2016: Практические методы диагностики и самодиагностики

    06.12.2016: Convert Monster - Идеальный landing page 3.0

    06.12.2016: Горячий миллион (пакет "Эксперт")

    06.12.2016: (Реалити) Создание и раскрутка Ютуб канала с нуля от А до Я

    05.12.2016: Доступ к базе коммерческих фото Shutterstock

    03.12.2016: Интим перед вебкамерой [Sex Workout]

    03.12.2016: [Синергия] SYNERGY SERVICE FORUM 2016 - Международный форум по сервисным стратегиям

    03.12.2016: [Синергия] Synergy Global Forum 2016 - глобальный форум для глобального прорыва

    03.12.2016: [Синергия] Роман Масленников. Взрывной пиар

    03.12.2016: Бизнес Молодость - МЗС Storage. Подписка на год

    02.12.2016: Бизнес Молодость - Соль цеха

    02.12.2016: Управляем Zennoposter через крутой веб-интерфейс

    01.12.2016: Как написать хорошую книгу. Групповой коучинг с Филиппом Богачевым

Wargaming не любит AMD

Тема в разделе "Флудилка", создана пользователем allnulled, 29 июн 2016.

  1. allnulled

    allnulled Администраторы Команда форума Администраторы

    Регистрация:
    2 фев 2015
    Сообщения:
    16.010
    Симпатии:
    1.092
    Играю в танчики часто, но компьютер на процике от AMD, танки довольно медленно идут, решил поискать и разобраться в чем дело)

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

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

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

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

    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
     
  2. Загрузка...

    Похожие темы Форум Дата
    Жалоба: Сообщение из темы "VIP+ - Книга «Биржа. Будет не легко»" Восстановление битых ссылок Сегодня, в 13:08
    Новинка Таргетированная реклама: привлечение трафика из социальных медиа - Нетология (2016) SEO и Раскрутка сайтов Сегодня, в 12:26
    Энергетический ремонт - Молчанов (2016) Саморазвитие и психология Сегодня, в 12:24
    Запуск проекта в интернет: от А до Я - Хизова (2016) Бизнес Сегодня, в 11:36
    Продюсирование в инфобизнесе - Зарипов (2015) Бизнес Сегодня, в 11:35

Пользователи, которые прочитали эту тему (Всего: 0)