Distributed Computing team of Ukraine | Ukraine - Українська Команда Розподілених Обчислень | Ukraine - Украинская Команда Распределённых Вычислений - Описи проектів

https://distributed.org.ua/index.php?go=Pages&in=view&id=158
Распечатать

Folding@Home силами видеокарт NVIDIA



Версія українською

сбор информации - nikelong, Timedemo, Vorchun


 

 

Проект Folding@Home силами видеокарт NVIDIA

 


16 июня 2008-го года NVIDIA официально представила видеокарты GeForce GTX 260 и 280. Об особенностях новой архитектуры чипов можно прочесть в этой статье.

Кроме профильных достоинств (производительность в играх) компанией подчеркивались дополнительные возможности видеокарт. В частности - возможность поиска лекарств, производя научные вычисления в проекте Folding@Home.




Научная ценность расчетов:

Ожидается, что новые карты серии GeForce GTX 200, смогут моделировать около 650 нс поведения исследуемых белков за день работы, что существенно выше по сравнению с остальными результатами. Так, мощности Radeon HD 3870 достаточно для моделирования 170 нс, процессора Cell (клиент PlayStation3) — 100 нс, а четырехъядерного процессора — всего 4 нс поведения исследуемых белков за день работы.
Грубо говоря - "докторам" в руки попалась мощная числодробилка, на которой можно быстрее моделировать процессы фолдинга белков.

Спортивная составляющая:
Конечно, при таком преимуществе в расчетах, вполне прогнозируемо и увеличение ППД (очков в сутки) с одной видеокарты.
На сегодняшний день имеем примерно такой расклад сил:

 GTX280
~ 7500ppd.
 9800GTX
~ 6500ppd.
 8800GTX~ 5900ppd.
 8800GTS 512Mb ~ 5900ppd.
 8800GTS 320Mb~ 4500ppd.
 9600GSO ~ 4300ppd.
 9600GT
~ 3300ppd.
 8600GT~ 1500ppd.
 8400GS~ 650ppd.

Глядя на эту таблицу понятно что покупка видеокарты даст больше выхлопа по очкам нежели покупка нового четырехъядерника.
Также хочу отметить, что по соотношению цена-ППД лидирует карточка 9600GSO.
Да и вообще, ключевое влияние на ППД вносит количество шейдеров и частота шейдерного домена. Частота GPU, RAM, ширина шини PCI-E - это скорее второстепенные параметры.

Если у Вас есть желание посмотреть статистику по видеокартам поподробнее - посмотрите на этот слайд.

Формула расчета очков:
Задание выполняется на эталонной системе какое-то время. Потом по формуле

Points = 1500 * (DaysPerWU)

вычисляется, во сколько будет оценено задание.
Эталонная система - ATI Radeon 3850 GPU (512 MB, 320 Stream Processors), Dell Inspiron 531, with a 2.16 GHz dual core AMD 64 X2 4000+.
Т.е. принимается, что ATI Radeon 3850 дает 1500 очков в день.

Во сколько
очков оценивают одно задание, можно посмотреть здесь.

Видно что задания короткие и считаются менее часа (а то и 30 минут).
Учитывая что траффик на одно задание (прием и отправка) составляет около 2-х мегабайт, сразу прикидываем, сколько GPU2 клиент сгенерирует траффика за сутки (50...150 Мб), и сопоставляем это со своим тарифным планом на доступ в интернет.

Из вышесказанного получается, что на одном компьютере, в котором есть разогнанный 4-х ядерник с двумя SMP-клиентами и несколько приличных видеокарт можно добиться круглой цифры - 10000 ППД с компьютера. Пока-что зафиксирован один результат в нашей команде: 14115 ППД с одного компьютера (Vorchun, 12.07.2008).

Для сравнения, не так и давно, в феврале 2007-го года в редакции журнала ДПК был поставлен рекорд СНГ - 3000 ППД с одной машинки (Core 2 Extreme QX6700 с видеокартой Sapphire Radeon X1950 XTX).



Системные требования
Совместимые ОС:

Совместимые видеокарты:
Все, которые поддерживают CUDA (подробнее о CUDA). Из "домашних" это поколение 8х00, 9х00, G2x0 и выше. Так-же совместимы проффесиональные Quadro, и "экзотика" вроде Tesla.
С полным списком совместимых видеокарт можно ознакомится здесь.

Требование к PCI-E слоту:
Заоблачных требований нет. Вполне себе будет работать в слоте шириной 4х.

Необходимые драйвера:
Драйвера с поддержкой CUDA - ForceWare 174.55 и выше.
В данный момент особо рекомендуется ставить ForceWare 177.35 как наиболее быстрый и стабильный. Только нужно качать International драйвер для GT200, а не какой-либо локализированый.

Загрузить можно с сайта nvidia:
Если при установке драйвера он начнет ругаться на то что ваше железо "неподдерживается" - то ему нужно будет подсунуть эту dll-ку. Как подсунуть? Открываем архив. Там 4-ре файла, нужный Вам переименовываем на nv4_disp.inf и кладем в тот каталог, куда распаковались дрова. По умолчанию это C: -->NVIDIA-->Win2kXP|WinVista-->177.35


Установка клиента
Для начала разбираемся с драйвером. Нам нужна версия 177.35. Это важный момент: в системе уже должны быть установлены драйвера с поддержкой CUDA до установки клиента GPU, иначе будет возня с подсовыванием файла cudart.dll.


Грузим клиент:
Идем на страницу загрузок и выбираем графическую или консольную версию клиента.

Графическая: Windows XP/2003/Vista GPU System tray client 6.20
Консольная (для тех кто привык к консолям) под XP: Windows XP/2003 GPU Console
Консольная под Vista: Windows Vista GPU Console 6.20


Установка консольного GPU клиента:
Создаём папку, например D:FAH_GPU_1. Если две видеокарты, ещё одну - D:FAH_GPU_2. Распаковываем содержимое архива в созданную папку (папки). Запускаем Folding@home-Win32-GPU.exe.


Клиент по умолчанию ставится на диск "C:". Избегайте  русских букв в названии папок!

Запустили клиент. Если все работает - гуд!

Если выскочила жалоба на нехватку файла cudart.dll, то:
Windows XP:
Идем в C>Documents and Settings> <your_windows_username>> Application Data>Folding@home-gpu и ищем cudart.dll
Потом копируем его в две папки:
C>Program Files>Folding@home Folding@home-gpu
C>Windows>system32

Windows vista:
Идем в C>Users> <your_windows_username> >AppData>Roaming>Folding@home-gpu и ищем cudart.dll
Потом копируем его в две папки:
C>Program Files>х86 Folding@home>Folding@home-gpu
C>Windows>system32

Если у себя его не нашли - тогда можете скачать cudart.dll здесь.
Если и это не помогло - то возможно Вас спасет переустановка клиента.
Только клиент удаляем через "установка и удаление программ", и удаляем папки, указанные парой строчек выше (в зависимости от Вашей ОС).
Переустанавливаем клиент.


Настройка клиента:

Особо не отличается от настройки обычного консольного клиента.

Важных моментов два:

Конфигурация (главное):
User name [Anonymous]? - Пишем свой ник в FAH
Team Number [0]? - Номер нашей команды 2164
Change advanced options (yes/no) [no]? - Пишем yes
Core Priority (idle/low) [idle]? - Пишем low
Machine ID (1-16) [2]? – Если клиентов под FAH несколько, раздаём им разные ID.
Launch automatically, install as a service in this directory (yes/no) [no]? – Под XP, клиент может работать сервисом.
Additional client parameters. Use space to clear. []? – Здесь можно прописывать флаги (-gpu 0, -gpu 1, -verbosity 9, -forcegpu nvidia_g80, -forcegpu ati_r600, -forcegpu ati_r700 и др.).
Если у Вас одна видеокарта, то достаточно прописать -verbosity 9, если две, то для первого клиента -gpu 0 -verbosity 9, для второго -gpu 1 -verbosity 9.

Создаём ярлык (ярлыки) для Folding@home-Win32-GPU.exe.






Особенности работы:

Запуск двух GPU на одной машине:

Ниже рассматривается ситуация, когда на одной машине работали 8800GTS и 8400GS под управлением 32x WinXP SP2.
Пока, из-за особенностей связки драйвер-расчётное ядро, более мощную
видеокарту следует устанавливать во второстепенный слот PCI-E. Идеальным
будет вариант использования двух (трёх) одинаковых видеокарт.


Порядок действий:
1. Добавить папку C> Documents and Settings> User_name> Application Data> Folding@home-gpu_2
(для Висты: C> Users> <your_windows_
username>> AppData> Roaming> Folding@home-gpu_2)

2. Скопировать туда client.cfg (поменять в нём machineid ), все dll,
FahCore_11.exe (версия ядра 1.07), из папки C> Documents and
Settings> User_name> Application Data> Folding@home-gpu
(для Висты:
C:> Users> <your_windows_
username>> AppData> Roaming> Folding@home-gpu)

3. Создать для каждого клиента ярлык (в Автозагрузке лежит ярлык, который
создаётся при установке ГПУ-клиента, его лучше удалить, или заблокировать
Starter-ом (или msconfig)).
В поле объект пишем:
%ProgramFiles%Folding@home
Folding@home-gpuFolding@home.exe -verbosity 9
-gpu 0" (для второго клиента -gpu 1);
в поле рабочая папка:
%AppData%Folding@home-gpu,
для второго клиента: %AppData%Folding@home-gpu_2
(для Висты - объект: "C:Program Files
(x86)Folding@homeFolding@
home-gpuFolding@home.exe" -verbosity 9 -gpu 0
(для второго -gpu 1)
рабочая папка:
"C:Users<your_windows_
username>AppDataRoaming Folding@home-gpu")

4. Расширить рабочий стол на второй монитор (для XP иметь дополнительный монитор и тыкать кабель во вторую видяху совсем необязательно). Но на висте если не расширить, то клиент сразу
выдаст "mdrun_gpu returned -1". Также, работая под вистой, ко второй видеокарте обязательно необходимо что-то подключить. Если под рукой нет ни монитора с двумя входами, ни телевизора - то возьмите переходник DVI-VGA и напаяйте в него резисторов, как показано в этой инструкции.

Запуск двух SMP и двух GPU на одной машине:
Ниже рассматривается оптимальная формула настроек для ситуации, когда в системе присутствует 4-х ядерный процессор и две видеокарты.
Процессы SMP-клиентов привязываются к соответствующим парам ядер при помощи программы FAH SMP Affinity Changer.
Все это работает под управлением
32x WinXP SP2.


Для GPU переменную лучше не создавать, ядро первого GPU-клиента  привязавается само на четвёртое ядро процессора, второго
GPU-клиента - на третье.
ППД на
SMP падает на 12-15%.
Параметры
GPU : priority=100, cpuusage=100


Для двухъядерника и одной видеокарты логичнее использовать 1
GPU и 1 SMP.
Создаем переменную NV_FAH_CPU_AFFINITY со значением 0, тогда FahCore_11.exe будет привязываться к обоим ядрам процессора. Для
SMP использовать FAH SMP Affinity Changer.

Работа с прокси:
  1. Заходим в настройки клиента и на вкладке Connection включаем прокси сервер, вводим его IP-адрес и порт и, при необходимости, имя пользователя и пароль.
  2. Клиент имеет баг с "автоотключением" прокси-сервера при любом последующем заходе в настройки. Чтобы побороть проблему, каждый раз, когда заходите в настройки, поставьте вручную галочку для включения прокси-сервера, даже если вы ничего не меняли.
Ошибки:

Полезный софт:

Ссылки:


Публикации в прессе:
overclockers.ru

ixbt.com


3dnews.ru

| 20.06.2008 01:02