Содержание
Установка драйверов Catalyst 13.1 без Catalyst Control Center |
При обновлении драйверов видеокарт Radeon HD каждый пользователь сталкивается с тем, что их невозможно скачать отдельно, с официального сайта программы. Они поставляются только в комплекте с монструозным приложением Catalyst Control Center. Если вы хотите установить только драйвера видеокарты AMD, читайте наши инструкции. Первым делом необходимо скачать последнюю версию драйверов Catalyst 13.1. Прямые ссылки на загрузку драйверов для всех актуальных версий Windows (32 и можно найти здесь. Обращаем внимание — если вы являетесь пользователем видеокарты одной из следующих серий: HD 2000, 3000 и 4000, необходимо установить специальные драйвера Catalyst 13.1 Legacy. Размер установочного файла для Windows составляет 94.8 MB. Владельцам ОС Windows 7 и Windows 8 придется загружать файл размером 146.5 MB. Сервера AMD отдают файл со скоростью Пользовательская установка Catalyst 13.1После запуска установочного файла, программа предложит распаковать файлы. Не все знают, но, после установки драйверов, папку с распакованными файлами можно смело удалять из системы. По умолчанию они распаковываются по следующему адресу: C:AMDSupport13-1_vista_win7_win8_64_dd_ccc_whql, однако, вы вольны выбирать любое другое местоположение, нажав кнопку Browse.
После распаковки файлов необходимых для установки Catalyst Driver, автоматически запустится диалог инсталлятора. После выбора языка, откроется диалоговое окно, в котором необходимо выбрать «Устанавливать». В следующем окне, в разделе «Быстрая или выборочная установка» обязательно выберите пункт «Пользовательское» и нажмите «Далее».
Инсталлятор проведет анализ системы и видеоплаты, после чего предложит выбрать устанавливаемые компоненты. Именно здесь можно запретить установку Catalyst Control Center. Просто снимите отметку с пункта «Catalyst Control Center». Рекомендуем так же отключить установку AMD APP SDK Runtime — этот компонент необходим только разработчикам приложений. В остальных случаях он лишь захламляет систему. А вот «Драйвер дисплея AMD» и «Аудиодрайвер HDMI» — как раз то что нам нужно.
После нажатия на кнопку «Далее» начнется процесс установки выбранных драйверов и компонентов. В процессе установки экран компьютера может несколько раз отключаться, так же иногда наблюдается сброс разрешения на 800×600. После завершения инсталляции все настройки изображения вернутся в норму. Драйвера Catalyst 13.1 и CCC предназначены для видеокарт: HD 7970, HD 7950, HD 7870, HD 7850, HD 7770 и HD 7750 | HD 6990, HD 6970, HD 6950, HD 6870 и HD 6850 | HD 5970, 5870 Eyefinity 6 Edition, HD 5870, HD 5850, HD 5830, HD 5770, HD 5750 и HD 5670. Драйвера Catalyst Legacy 13.1 и CCC предназначены для видеокарт серий: HD 2000, 3000 и 4000 (такие как: HD 4870 X2, HD 4890, HD 4870, HD 4850, HD 4830, HD 4770, HD 3800, HD 3600, HD 3400 и др.). ОписаниеС помощью платформы разработки Accelerated Parallel Processing, сокращённо AMD APP SDK появляется возможность внедрить современные решения APP в те продукты, к которым пользователи проявляют активный интерес. Платформа нужна, чтобы запустить процесс майнинга на своём CPU для процессоров марки AMD, который без неё часто не будет работать на процессорах этой фирмы. Раньше эта платформа была известна под названием ATI Stream SDK, однако со временем в неё добавили абсолютно новый язык программирования и в новом варианте, Brook+ заменили на гораздо более продвинутый язык OpenCL, позволяющий находить лучшие решения в связке с GPGPU. Стоит отметить, что OpenCL – прямой конкурент NVIDIA, Оба производителя являюется конкурентами между собой и соперниками AMD на рынке, производя графические чипы. Однако, на этот раз конкуренты объединили усилия. Не стоит углубляться в отличия технологий, но необходимо рассмотреть явные плюсы от использования AMD APP SDK. Так, особо подчеркнуть следует встроенный компонент CMake, представляющий мультиплатформенный автоматизированный сборщик проектов. Он формирует Makefil, используемый потом другими сборщиками. Решение это достаточно узкоспециализированное, рассчитывалось на тех, кто работает в области портирования или оптимизации компьютерных игр, но так уж получилось, что для майнинга эта платформа также весьма интересна. Она подойдёт тем, кто добывает крипту через свои графические адаптеры Radeon. Совершенно не каждую программу — майнер можно заставить адекватно работать на компьютере без запуска этой программки. Конечно, за добычу отвечают только несколько фрагментов пакета, но по отдельности их нигде ненайти, поэтому, придётся ставить полную версию, стоит также изучить её дополнительные возможности, могут пригодиться. Кроме того, вместо неё можно поставить драйвера AMD Catalyst экспериментальных версий, но они идут не на каждой операционной системе, так, XP они не поддерживаются, как и в некоторых других операционках. Введение2x при использовании связки CAL/IL
* означает, что язык хоть и похож на ассемблер, он все же оптимизируется компилятором и преобразовывается в разный код для разных GPU За счет чего же можно получить такой выигрыш в производительности? Особенности архитектуры AMD GPUТаким образом, за одну (почти за одну) операцию AMD GPU может изменить вплоть до 4-х n-битных регистров, а Nvidia GPU — только один n-битный регистр (имеется в виду в пределах одного GPU-потока). Но ведь OpenCL также позволяет объявлять многокомпонентные вектора и работать с ними! Тогда в чем отличие и зачем вообще нужен этот IL ? Отличие от OpenCLА все отличия заключаются банально в том, что разработчикам AMD APP SDK было либо сложно, либо технически невозможно создать компилятор, переводящий код, написанный по спецификации OpenCL, в код, написанный на AMD IL . Отсюда и возникли ограничения по поддержке стандарта OpenCL:
При этом стоит отметить, что AMD IL позволяет использовать для GPGPU-вычислений некоторые карточки из Radeon HD 3000 Series и даже из Radeon HD 2000 Series! (если быть совсем точным, то это GPU на чипах R600, RV610, RV630 и RV670) Прежде чем перейти к объяснению принципов написания кода на AMD IL , я бы хотел заострить ваше внимание на Особенности работы с памятьюКак я уже упоминал, AMD GPU работает с 4-х компонентыми векторами n-битных регистров, где n=32 (о том, как работать с 64-битными регистрами, далее). Это накладывает основное ограничение на память: выделять память можно только объемом, кратным 16 байтам. При этом нужно помнить, что при загрузке дынных из памяти минимальным объемом передачи являются опять же эти 16 байт. То есть совершенно неважно, укажите вы, что ваша память состоит из 4-х компонентых векторов по 1 байту (char4), что из 4-х компонентых векторов по 4 байта (int4), результат будет один — из памяти за одну операцию обмена загрузятся 16 байт. Далее, в отличие от Nvidia GPU, AMD GPU выделяет локальную память в глобальной области (а это означает очень медленную скорость обмена данных), так что забудьте про локальную память. Используйте регистры и глобальную память. И на последок: опять же в отличие от Nvidia GPU, есть только одна глобальная память, работающая на чтение-запись (далее это будет «g[]»), и много различных источников текстурной памяти (далее это будет «i0», «i1» и т.д.) и константной памяти (далее это будет «cb0», «cb1» и т.д.), работающих только на чтение. А теперь приступим к самому интересному: Структура кода для AMD ILРабота с регистрамиСперва небольшое пояснение, как происходит обмен между регистрами в операциях. ШейдерыКод для AMD GPU оформляется в виде шейдеров. Есть возможность запускать как компьютерный шейдер (Compute Shader, CS), так и пиксельный шейдер (Pixel Shader, PS). Однако CS поддерживается, начиная только с Radeon HD 4000 Series. При этом скорость их работы почти одинаковая. Известно, что количество одновременно запускаемых потоков на GPU определяется параметрами запуска: количество блоков, количество потоков на блок. Каждый мультипроцессор (от 8 штук) GPU берет на исполнение один блок. Затем делит запрошенное количество потоков на блок на куски (warp, кратно 32) и отдает каждому своему поточному процессору на исполнение один warp. Таким образом, реальное количество одновременно работающих потоков равно: Именно поэтому для наиболее быстрой работы требуется, чтобы в рамках одного warp’a потоки выполняли одну и ту же операцию, без ветвлений. Тогда эта операция выполнится за один раз. Для того чтобы не рассматривать сферического коня в вакууме, рассмотрим простую задачу: каждый поток вычисляет свой локальный идентификатор в пределах блока (32 бита), глобальный идентификатор (32 бита), считывает константы (64 бита) из памяти команд и из памяти данных, считывает элемент из текстуры (128 бит). Все это он записывает в выходную память, каждому потоку для этого потребуется 256 бит. Pixel ShaderCompute ShaderВсе отличие будет заключаться только в вычислении идентификаторов потока, остальное все то же самое. Различия шейдеровКроме поддержки на разных карточках, основное отличие шейдеров заключается в месте хранения количества запускаемых потоков на блок. Для PS это значение можно хранить в памяти, для CS это значение нужно пробивать в коде. Кроме того, для CS проще вычислять идентификаторы потока. |