КАТАЛОГ ТОВАРОВ

Срок доставки товара в течении 1-3 дней !!!

 

ПОЛЬЗОВАТЕЛЬ
КОРЗИНА

Как заменить видеокарту в компьютере: пошаговая инструкция. Видеокарта вместо процессора


Суперкомпьютер из видеокарты: задействуем возможности GPU для ускорения софта

Сегодня новости об использовании графических процессоров для общих вычислений можно услышать на каждом углу. Такие слова, как CUDA, Stream и OpenCL, за каких-то два года стали чуть ли не самыми цитируемыми в айтишном интернете. Однако, что значат эти слова, и что несут стоящие за ними технологии, известно далеко не каждому. А для линуксоидов, привыкших «быть в пролете», так и вообще все это видится темным лесом.

Предисловие

В этой статье мы попытаемся разобраться, зачем нужна технология GPGPU (General-purpose graphics processing units, Графический процессор общего назначения) и все связанные с ней реализации от конкретных производителей. Узнаем, почему эта технология имеет очень узкую сферу применения, в которую подавляющее большинство софта не попадает в принципе, и конечно же, попытаемся извлечь из всего этого выгоду в виде существенных приростов производительности в таких задачах, как шифрование, подбор паролей, работа с мультимедиа и архивирование.

Рождение GPGPU

Мы все привыкли думать, что единственным компонентом компа, способным выполнять любой код, который ему прикажут, является центральный процессор. Долгое время почти все массовые ПК оснащались единственным процессором, который занимался всеми мыслимыми расчетами, включая код операционной системы, всего нашего софта и вирусов.

Позже появились многоядерные процессоры и многопроцессорные системы, в которых таких компонентов было несколько. Это позволило машинам выполнять несколько задач одновременно, а общая (теоретическая) производительность системы поднялась ровно во столько раз, сколько ядер было установлено в машине. Однако оказалось, что производить и конструировать многоядерные процессоры слишком сложно и дорого. В каждом ядре приходилось размещать полноценный процессор сложной и запутанной x86-архитектуры, со своим (довольно объемным) кэшем, конвейером инструкций, блоками SSE, множеством блоков, выполняющих оптимизации и т.д. и т.п. Поэтому процесс наращивания количества ядер существенно затормозился, и белые университетские халаты, которым два или четыре ядра было явно мало, нашли способ задействовать для своих научных расчетов другие вычислительные мощности, которых было в достатке на видеокарте (в результате даже появился инструмент BrookGPU, эмулирующий дополнительный процессор с помощью вызовов функций DirectX и OpenGL).

Графические процессоры, лишенные многих недостатков центрального процессора, оказались отличной и очень быстрой счетной машинкой, и совсем скоро к наработкам ученых умов начали присматриваться сами производители GPU (а nVidia так и вообще наняла большинство исследователей на работу). В результате появилась технология nVidia CUDA, определяющая интерфейс, с помощью которого стало возможным перенести вычисление сложных алгоритмов на плечи GPU без каких-либо костылей. Позже за ней последовала ATi (AMD) с собственным вариантом технологии под названием Close to Metal (ныне Stream), а совсем скоро появилась ставшая стандартом версия от Apple, получившая имя OpenCL.

GPU — наше все?

Несмотря на все преимущества, техника GPGPU имеет несколько проблем. Первая из них заключается в очень узкой сфере применения. GPU шагнули далеко вперед центрального процессора в плане наращивания вычислительной мощности и общего количества ядер (видеокарты несут на себе вычислительный блок, состоящий из более чем сотни ядер), однако такая высокая плотность достигается за счет максимального упрощения дизайна самого чипа.

В сущности основная задача GPU сводится к математическим расчетам с помощью простых алгоритмов, получающих на вход не очень большие объемы предсказуемых данных. По этой причине ядра GPU имеют очень простой дизайн, мизерные объемы кэша и скромный набор инструкций, что в конечном счете и выливается в дешевизну их производства и возможность очень плотного размещения на чипе. GPU похожи на китайскую фабрику с тысячами рабочих. Какие-то простые вещи они делают достаточно хорошо (а главное — быстро и дешево), но если доверить им сборку самолета, то в результате получится максимум дельтаплан. Поэтому первое ограничение GPU — это ориентированность на быстрые математические расчеты, что ограничивает сферу применения графических процессоров помощью в работе мультимедийных приложений, а также любых программ, занимающихся сложной обработкой данных (например, архиваторов или систем шифрования, а также софтин, занимающихся флуоресцентной микроскопией, молекулярной динамикой, электростатикой и другими, малоинтересными для линуксоидов вещами).

Вторая проблема GPGPU в том, что адаптировать для выполнения на GPU можно далеко не каждый алгоритм. Отдельно взятые ядра графического процессора довольно медлительны, и их мощь проявляется только при работе сообща. А это значит, что алгоритм будет настолько эффективным, насколько эффективно его сможет распараллелить программист. В большинстве случаев с такой работой может справиться только хороший математик, которых среди разработчиков софта совсем немного.

И третье: графические процессоры работают с памятью, установленной на самой видеокарте, так что при каждом задействовании GPU будет происходить две дополнительных операции копирования: входные данные из оперативной памяти самого приложения и выходные данные из GRAM обратно в память приложения. Нетрудно догадаться, что это может свести на нет весь выигрыш во времени работы приложения (как и происходит в случае с инструментом FlacCL, который мы рассмотрим позже).

Но и это еще не все. Несмотря на существование общепризнанного стандарта в лице OpenCL, многие программисты до сих пор предпочитают использовать привязанные к производителю реализации техники GPGPU. Особенно популярной оказалась CUDA, которая хоть и дает более гибкий интерфейс программирования (кстати, OpenCL в драйверах nVidia реализован поверх CUDA), но намертво привязывает приложение к видеокартам одного производителя.

KGPU или ядро Linux, ускоренное GPU

Исследователи из университета Юты разработали систему KGPU, позволяющую выполнять некоторые функции ядра Linux на графическом процессоре с помощью фреймворка CUDA. Для выполнения этой задачи используется модифицированное ядро Linux и специальный демон, который работает в пространстве пользователя, слушает запросы ядра и передает их драйверу видеокарты с помощью библиотеки CUDA. Интересно, что несмотря на существенный оверхед, который создает такая архитектура, авторам KGPU удалось создать реализацию алгоритма AES, который поднимает скорость шифрования файловой системы eCryptfs в 6 раз.

Что есть сейчас?

В силу своей молодости, а также благодаря описанным выше проблемам, GPGPU так и не стала по-настоящему распространенной технологией, однако полезный софт, использующий ее возможности, существует (хоть и в мизерном количестве). Одними из первых появились крэкеры различных хэшей, алгоритмы работы которых очень легко распараллелить. Также родились мультимедийные приложения, например, кодировщик FlacCL, позволяющий перекодировать звуковую дорожку в формат FLAC. Поддержкой GPGPU обзавелись и некоторые уже существовавшие ранее приложения, самым заметным из которых стал ImageMagick, который теперь умеет перекладывать часть своей работы на графический процессор с помощью OpenCL. Также есть проекты по переводу на CUDA/OpenCL (не любят юниксоиды ATi) архиваторов данных и других систем сжатия информации. Наиболее интересные из этих проектов мы рассмотрим в следующих разделах статьи, а пока попробуем разобраться с тем, что нам нужно для того, чтобы все это завелось и стабильно работало.

GPU уже давно обогнали x86-процессоры в производительности

Во-первых, понадобится видеокарта, поддерживающая технологию CUDA или Stream. Необязательно, чтобы она была топовая, достаточно только, чтобы год ее выпуска был не менее 2009. Полный список поддерживаемых видюшек можно посмотреть в Википедии: en.wikipedia.org/wiki/CUDA и en.wikipedia.org/wiki/AMD_Stream_Processor. Также о поддержке той или иной технологии можно узнать, прочитав документацию, хотя в большинстве случаев будет достаточным взглянуть на коробку из под видеокарты или ноутбука, обычно на нее наклеены различные рекламные стикеры.

Во-вторых, в систему должны быть установлены последние проприетарные драйвера для видеокарты, они обеспечат поддержку как родных для карточки технологий GPGPU, так и открытого OpenCL.

И в-третьих, так как пока дистрибутивостроители еще не начали распространять пакеты приложений с поддержкой GPGPU, нам придется собирать приложения самостоятельно, а для этого нужны официальные SDK от производителей: CUDA Toolkit или ATI Stream SDK. Они содержат в себе необходимые для сборки приложений заголовочные файлы и библиотеки.

Ставим CUDA Toolkit

Идем по вышеприведенной ссылке и скачиваем CUDA Toolkit для Linux (выбрать можно из нескольких версий, для дистрибутивов Fedora, RHEL, Ubuntu и SUSE, есть версии как для архитектуры x86, так и для x86_64). Кроме того, там же надо скачать комплекты драйверов для разработчиков (Developer Drivers for Linux, они идут первыми в списке).

Запускаем инсталлятор SDK:

$ sudo sh cudatoolkit_4.0.17_linux_64_ubuntu10.10.run

Когда установка будет завершена, приступаем к установке драйверов. Для этого завершаем работу X-сервера:

# sudo /etc/init.d/gdm stop

Открываем консоль <Ctrl+Alt+F5> и запускаем инсталлятор драйверов:

$ sudo sh devdriver_4.0_linux_64_270.41.19.run

После окончания установки стартуем иксы:

$ startx

Чтобы приложения смогли работать с CUDA/OpenCL, прописываем путь до каталога с CUDA-библиотеками в переменную LD_LIBRARY_PATH:

$ export LD_LIBRARY_PATH=/usr/local/cuda/lib64

Или, если ты установил 32-битную версию:

$ export LD_LIBRARY_PATH=/usr/local/cuda/lib32

Также необходимо прописать путь до заголовочных файлов CUDA, чтобы компилятор их нашел на этапе сборки приложения:

$ export C_INCLUDE_PATH=/usr/local/cuda/include

Все, теперь можно приступить к сборке CUDA/OpenCL-софта.

Ставим ATI Stream SDK

Stream SDK не требует установки, поэтому скачанный с сайта AMD-архив можно просто распаковать в любой каталог (лучшим выбором будет /opt) и прописать путь до него во всю ту же переменную LD_LIBRARY_PATH:

$ wget http://goo.gl/CNCNo$ sudo tar -xzf ~/AMD-APP-SDK-v2.4-lnx64.tgz -C /opt$ export LD_LIBRARY_PATH=/opt/AMD-APP-SDK-v2.4-lnx64/lib/x86_64/$ export C_INCLUDE_PATH=/opt/AMD-APP-SDK-v2.4-lnx64/include/

Как и в случае с CUDA Toolkit, x86_64 необходимо заменить на x86 в 32-битных системах. Теперь переходим в корневой каталог и распаковываем архив icd-registration.tgz (это своего рода бесплатный лицензионный ключ):

$ sudo tar -xzf /opt/AMD-APP-SDK-v2.4-lnx64/icd-registration.tgz -С /

Проверяем правильность установки/работы пакета с помощью инструмента clinfo:

$ /opt/AMD-APP-SDK-v2.4-lnx64/bin/x86_64/clinfo

ImageMagick и OpenCL

Поддержка OpenCL появилась в ImageMagick уже достаточно давно, однако по умолчанию она не активирована ни в одном дистрибутиве. Поэтому нам придется собрать IM самостоятельно из исходников. Ничего сложного в этом нет, все необходимое уже есть в SDK, поэтому сборка не потребует установки каких-то дополнительных библиотек от nVidia или AMD. Итак, скачиваем/распаковываем архив с исходниками:

$ wget http://goo.gl/F6VYV$ tar -xjf ImageMagick-6.7.0-0.tar.bz2$ cd ImageMagick-6.7.0-0

Далее устанавливаем инструменты сборки:

$ sudo apt-get install build-essential

Запускаем конфигуратор и грепаем его вывод на предмет поддержки OpenCL:

$ LDFLAGS=-L$LD_LIBRARY_PATH ./confi gure | grep -e cl.h -e OpenCL

Правильный результат работы команды должен выглядеть примерно так:

checking CL/cl.h usability... yeschecking CL/cl.h presence... yeschecking for CL/cl.h... yeschecking OpenCL/cl.h usability... nochecking OpenCL/cl.h presence... nochecking for OpenCL/cl.h... nochecking for OpenCL library... -lOpenCL

Словом «yes» должны быть отмечены либо первые три строки, либо вторые (или оба варианта сразу). Если это не так, значит, скорее всего, была неправильно инициализирована переменная C_INCLUDE_PATH. Если же словом «no» отмечена последняя строка, значит, дело в переменной LD_LIBRARY_PATH. Если все окей, запускаем процесс сборки/установки:

$ sudo make install clean

Проверяем, что ImageMagick действительно был скомпилирован с поддержкой OpenCL:

$ /usr/local/bin/convert -version | grep FeaturesFeatures: OpenMP OpenCL

Теперь измерим полученный выигрыш в скорости. Разработчики ImageMagick рекомендуют использовать для этого фильтр convolve:

$ time /usr/bin/convert image.jpg -convolve '-1, -1, -1, -1, 9, -1, -1, -1, -1' image2.jpg$ time /usr/local/bin/convert image.jpg -convolve '-1, -1, -1, -1, 9, -1, -1, -1, -1' image2.jpg

Некоторые другие операции, такие как ресайз, теперь тоже должны работать значительно быстрее, однако надеяться на то, что ImageMagick начнет обрабатывать графику с бешеной скоростью, не стоит. Пока еще очень малая часть пакета оптимизирована с помощью OpenCL.

FlacCL (Flacuda)

FlacCL — это кодировщик звуковых файлов в формат FLAC, задействующий в своей работе возможности OpenCL. Он входит в состав пакета CUETools для Windows, но благодаря mono может быть использован и в Linux. Для получения архива с кодировщиком выполняем следующую команду:

$ mkdir flaccl && cd flaccl$ wget www.cuetools.net/install/flaccl03.rar

Далее устанавливаем unrar, mono и распаковываем архив:

$ sudo apt-get install unrar mono$ unrar x fl accl03.rar

Чтобы программа смогла найти библиотеку OpenCL, делаем символическую ссылку:

$ ln -s $LD_LIBRARY_PATH/libOpenCL.so libopencl.so

Теперь запускаем кодировщик:

$ mono CUETools.FLACCL.cmd.exe music.wav

Если на экран будет выведено сообщение об ошибке «Error: Requested compile size is bigger than the required workgroup size of 32», значит, у нас в системе слишком слабенькая видеокарта, и количество задействованных ядер следует сократить до указанного числа с помощью флага ‘—group-size XX’, где XX — нужное количество ядер.

Сразу скажу, из-за долгого времени инициализации OpenCL заметный выигрыш можно получить только на достаточно длинных дорожках. Короткие звуковые файлы FlacCL обрабатывает почти с той же скоростью, что и его традиционная версия.

oclHashcat или брутфорс по-быстрому

Как я уже говорил, одними из первых поддержку GPGPU в свои продукты добавили разработчики различных крэкеров и систем брутфорса паролей. Для них новая технология стала настоящим святым граалем, который позволил с легкостью перенести от природы легко распараллеливаемый код на плечи быстрых GPU-процессоров. Поэтому неудивительно, что сейчас существуют десятки самых разных реализаций подобных программ. Но в этой статье я расскажу только об одной из них — oclHashcat.

oclHashcat — это ломалка, которая умеет подбирать пароли по их хэшу с экстремально высокой скоростью, задействуя при этом мощности GPU с помощью OpenCL. Если верить замерам, опубликованным на сайте проекта, скорость подбора MD5-паролей на nVidia GTX580 составляет до 15800 млн комбинаций в секунду, благодаря чему oclHashcat способен найти средний по сложности восьмисимвольный пароль за какие-то 9 минут.

Программа поддерживает OpenCL и CUDA, алгоритмы MD5, md5($pass.$salt), md5(md5($pass)), vBulletin < v3.8.5, SHA1, sha1($pass.$salt), хэши MySQL, MD4, NTLM, Domain Cached Credentials, SHA256, поддерживает распределенный подбор паролей с задействованием мощности нескольких машин.

Автор не раскрывает исходники (что, в общем-то, логично), но у программы есть нормально работающая Linux-версия, которую можно получить на официальной страничке.

Далее следует распаковать архив:

$ 7z x oclHashcat-0.25.7z$ cd oclHashcat-0.25

И запустить программу (воспользуемся пробным списком хэшей и пробным словарем):

$ ./oclHashcat64.bin example.hash ?l?l?l?l example.dict

oclHashcat откроет текст пользовательского соглашения, с которым следует согласиться, набрав «YES». После этого начнется процесс перебора, прогресс которого можно узнать по нажатию <s>. Чтобы приостановить процесс, кнопаем <p>, для возобновления — <r>. Также можно использовать прямой перебор (например, от aaaaaaaa до zzzzzzzz):

$ ./oclHashcat64.bin hash.txt ?l?l?l?l ?l?l?l?l

И различные модификации словаря и метода прямого перебора, а также их комбинации (об этом можно прочитать в файле docs/examples.txt). В моем случае скорость перебора всего словаря составила 11 минут, тогда как прямой перебор (от aaaaaaaa до zzzzzzzz) длился около 40 минут. В среднем скорость работы GPU (чип RV710) составила 88,3 млн/с.

Выводы

Несмотря на множество самых разных ограничений и сложность разработки софта, GPGPU — будущее высокопроизводительных настольных компов. Но самое главное — использовать возможности этой технологии можно прямо сейчас, и это касается не только Windows-машин, но и Linux.

Info

  • Суть технологии GPGPU — произвольные вычисления на видеокартах.
  • Существует OpenCL SDK, разрабатываемый компанией Intel, но пока с его помощью можно запускать приложения только на классическом CPU.
  • FASTRA II — суперкомпьютер, построенный с использованием 13 видеокарт, мощностью 12TFLOPS.

Links

  • bzip2-cuda.github.com — реализация архиватора bzip2с использованием CUDA.
  • www.hoopoe-cloud.com — облачный сервис, позволяющий загружать и запускать софт с поддержкой CUDA и OpenCL.

xakep.ru

Альтернативное использование мощностей GPU? / Хабр

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

Многие обладатели мощного железа задумывались над тем, а нельзя ли подзаработать на мощности своей железки, пока она стоит бестолку?

Красота моя бестоковая!

Один из самых доступных способов — это Bitcoin. В связи с появлением распределенной платежной системы Bitcoin появилось такое интересное занятие — майнинг («добыча биткоинов», вычисления в пользу защиты биткоин системы, за которые система вознаграждает участника биткоинами, которые он может обменять на одну из известных валют в биткоин биржах) — занятие достаточно затратное, и не всегда прибыльное. Вернее майнинг оказался более прибыльным на FPGA-шечках, чем на Радеончиках. Поэтому обладателям последних повезло меньше, в плане майнинга, и им приходится продавать свои железки.

Майнинг ферма, я насчитал 66 видеокарт. Красотища! Взято отсюда.

Я сам пробовал недавно помайнить на GTX580 (а Нвидии плохи для майнинга, да), но понял, что 17 (семнадцать) долл. в месяц — хоть и бешеные деньги, но не совсем та зарплата, о которой я мечтал. Но не спешим впадать в спячку отчаяния! Можно попытаться спасти положение!

Итак, мощные видюшки, при правильном использовании: 1. Могут служить во благо кому-то. 2. Могут приносить больше прибыли, чем Биткоин. 3. Приносить прибыль от Биткоин во время простоя.

В чем же могут пригодиться видеокарты? 1. Вычисления общего назначения на видеокартах (англ. General Purpose Graphic Processor Unit — GPGPU). 2. Аппаратная растеризация (OpenGL, DirectX).

Начнем с GPGPU
Как задействовать видеокарты?CUDA — хороший френймворк для карточек Nvidia, и только для них. Аппаратно-зависимая платформа.Firestream — фреймворк для GPGPU вычислений на видеокартах AMD. Опять-таки аппаратно-зависимая платформа. Честно, я даже не встречал ни одного рендера на Firestream.OpenCL — аппаратно, и программно-независимая платформа для вычислений на чем попало: и CPU, и GPU, на тостерах и микроволновках. Всё прекрасно, но на личном опыте, и многочисленных тестах убедился, что платформа пока что далека от совершенства. Глюки, баги, плохая оптимизация. Может пишут на нем кривыми ручками? Не знаю, может кто-то в комментариях выскажет.HLSL — шейдерный язык DirecrX. Что такое шейдерный? На нем пишут алгоритмы закрашивания поверхностей в DirectX. Даже один товарищ сделал рендер на HLSL. Всё бы ничего, но платформа программно-зависимая. Только DirectX от Мелкомягких.DirectCompute — прикладной (к DirectX, к чему еще) язык программирования от Мелкомягких. Частенько, с помощью него на видеокарты вешают физику.GLSL — шейдерный язык OpenGL. А OpenGL, как мы знаем, поддерживает подавляющее большинство железок, работает на Windows, Linux, OSX. Так что вариант вроде бы самый выигрышный. Честно, серьезного софта я на нем не видел, но думаю, есть повод задуматься. Попробовать, а не искать оправдания, почему его не используют. В негра-фических вычислениях GLSL пользуется популярностью в WebGL приложениях. Можете сами посмотреть как работает unbiased render на WebGL, и мышкой помешать пиксели на экране.

Есть ролик, показывающий производительность кода, написанного с помощью разных фреймворков на Nvidia GeForce GTS250 и Core i5. Это видео — не абсолютный показатель. Во-первых инфа могла устареть, а вдруг, OpenCL уже быстрее всех на свете? Во-вторых, GTS250 — это же не топовая видеокарта, чтобы оценивать производительность OpenCL на тех же майнинг фермах.

На мой взгляд, наиболее подходящие платформы: 1. GLSL в виду его универсальности, стабильности и скорости. Минус — неудобство программирования. 2. OpenCL — универсален, всеяден. Задействует все поддерживаемые CPU и GPU. Минус — есть недоработки. 3. Совмещать 1 и 2.

Задач, которые нуждаются в вычислениях на GPU великое множество. Инженерных, научных, финансовых, графических. Я же сконцентрируюсь на рендеринге (о котором я расскажу чуть дальше), так как занимаюсь графикой, и мне есть что сказать на этот счет.

Аппаратная Растеризация
Первое, что приходит в голову — облачные игры (см. Onlive). Облачная отрисовка игр — это когда требовательная к ресурсам игра рисуется удаленно, на вычислительном сервере, а готовая картинка со звуком присылается пользователю. Пользуются этим, если компьютер пользователя едва тянет эту же игру на самых низких настройках, или вообще несовместим с этой игрой.

Ролик о том, как на Android планшете можно играть требовательные к железу игры:

Итак, теперь вернемся к системе облачно-распределенного рендеринга, которую я хочу предложить.

ОБЛАЧНЫЙ РЕНДЕРИНГ
Или распределенный? Вернее облачный, только облако распределенное. Облачно-распределенный рендеринг. Я бы хотел остановиться на рендеринге, но не на растеризации, а на более серьезных и глубоких алгоритмах, таких как unbiased рендеринг, о котором я уже всем уши прожужжал. Как примерно выглядит unbiased рендер на GPU — на примере Octane Render (Nvidia CUDA)

Алгоритм хорош тем, что позволяет рендерить глобальное освещение (свет, отражения света, отражения отражений, отражения отражений отражений, и т.д.) в реальном времени, пусть и с большим шумом. Но чем больше производительность железки — тем быстрее изображение прочищается от шума.

Но не бросать же в беде обладателей Радеонов! Есть рендеры, задействующие OpenCL: Это Cycles Render (opensource), IndigoRT, SmallLuxGPU (тоже opensource)

SmallLuxGPU

Вообще, думаю, время покажет, что лучше: писать свой софт, или разбираться в чужом коде.

В каком виде подавать? 1. Через плагин 3d редактора. 2. Через браузер с жаваскриптом. Кстати, можно сделать что-то вроде «кинул ссылочку — показал кому-то 3д объект».

А как использовать эту систему: за деньги, или даром для друзей или ради интересного проекта — пользователи решат сами.

Может и задачи на CPU распределим?
Как мы знаем, графические видеоадаптеры обладают достаточно высокой (по сравнению с CPU) производительностью в многопоточных вычислениях. Но вовсе не обязательно списывать CPU со счетов. Есть задачи, которые очень сложны в написании, или нецелесообразны в использовании GPU.

Хотя, в целом, мое мнение отражает вот эта картинка:Ну а пост без баяна — не пост.

Идеологическая составляющая проекта
Вычисления — лишь часть ресурсов, которые нуждаются в перераспределении. Одни нуждаются в производительном железе, у других оно стоит незадействованное. То же самое касается и других ресурсов: деньги, вода, пища, энергия, тепло. У одних избыток, не приносящий радости — у других недостаток, доставляющий дискомфорт. Человечество нуждается в взаимопомощи во всех аспектах жизни. А рендеринг и распределенные вычисления — лишь малая часть ресурсов, которыми мы можем помочь друг другу. Все-таки целесообразнее задействовать существующие простаивающие мощности, чем покупать новые железки? Это я к тому, что за распределенными вычислениями будущее! Я вовсе не утверждаю, что проект должен развиваться на голом энтузиазме, а разработчики — питаться святым духом.
ИТОГО
Если эта тема внезапно кого-то заинтересовала — предлагаю, товарищи, обсудить!

habr.com

Видеокарта вместо процессора | Computerworld Россия

Служба новостей IDG, Сан-франциско

Компания nVidia продвигает идею о том, что графический процессор (GPU) может при необходимости выполнять функции процессора центрального. В компании убеждены, что таким образом можно значительно увеличить суммарную вычислительную мощность персонального компьютера.

«Процессор подолгу не занят какой бы то ни было работой, и многим людям в голову приходит мысль: а давайте-ка вести на нем вычисления!», — заявил директор по архитектуре компании nVidia Джон Николлс на недавней конференции Microprocessor Forum 2007.

Действительно, когда графический процессор не занят обработкой графики, его можно использовать параллельно с основным процессором. Николлс заявляет, что производительность в таком случае может достигать 200 млрд. операций с плавающей запятой в секунду (Floating-Point Operations per Second, FLOPS).

В феврале nVidia выпустила бета-версию программного пакета CUDA (Compute Unified Device Architecture — «унифицированная архитектура вычислительных устройств»). Выпуск версии для общего пользования ожидается во второй половине нынешнего года. Инструментарий CUDA позволяет программистам создавать программы, которые возлагают на графический процессор некоторые из вычислительных функций, традиционно находящихся в ведении центрального процессора. Хотя идея использования графического процессора для вычислений не нова, по словам Николлса, применение CUDA должно облегчить эту задачу.

CUDA работает только на видеокартах nVidia серий GeForce 8800 и 8600 и представленных в ноябре 2006 года Quadro FX 4600 и 5600. В качестве сопроцессора можно использовать, например, графический процессор GeForce. Он снабжен собственной небольшой памятью и может выполнять одновременно 128 тыс. потоков команд, заявил Николлс. Для выполнения одной задачи можно организовывать группы потоков.

«Графический процессор покупают для работы с графикой, но большую часть времени он простаивает, — заявил Николлс. — Между тем это отличный высокопроизводительный массивно-параллельный компьютер, и мы пытаемся раскрыть его возможности». По его мнению, приложения, которым пригодится возможность работы на графических процессорах, встречаются везде, где нужна высокая вычислительная мощность — в научных исследованиях, медицине, финансах и т. д.

www.osp.ru

Как заменить видеокарту в компьютере: пошаговая инструкция

Видеокарта — компонент компьютера, который не только отвечает за вывод изображения на монитор, но еще и серьезно определяет общую производительность системы. Если ваша видеокарта устарела, ее, очевидно, нужно заменить. Как это сделать — в этой статье.

Как заменить видеокарту в компьютере пошаговая инструкция

Как заменить видеокарту в компьютере пошаговая инструкция

Узнайте подробную информацию из статьи — «Как выглядит видеокарта на компьютере и за что она отвечает».

Удаляем старые драйвера

Спорный пункт. Кто-то считает его обязательным, кто-то не верит в это и игнорирует. Мое мнение — лишним не будет, тем более что занимает пару минут. А остатки старых драйверов могут впоследствии не только замедлять работу системы, но еще и конфликтовать с новыми драйверами.

  1. Откройте «Проводник» и в адресной строке сверху наберите «Система». Нажмите Enter. В проводнике прописываем «Система»

    В проводнике прописываем «Система»

  2. Откроется окно с характеристиками компьютера. Попадаем в окно с характеристиками компьютера

    Попадаем в окно с характеристиками компьютера

  3. Нас интересует левая часть. На панели инструментов ищем строку под названием «Диспетчер устройств». Выбираем строку под названием «Диспетчер устройств»

    Выбираем строку под названием «Диспетчер устройств»

  4. Вы увидите список всего оборудования вашего компьютера в виде дерева. Выберите вашу видеокарту (в подпункте «Видеоадаптеры») и просмотрите ее свойства. Выбираем вашу видеокарту в подпункте «Видеоадаптеры»

    Выбираем вашу видеокарту в подпункте «Видеоадаптеры»

  5. В окне свойств на вкладке «Драйвер» найдите кнопку «Удалить». В окне свойств на вкладке «Драйвер» найдите кнопку «Удалить»

    В окне свойств на вкладке «Драйвер» найдите кнопку «Удалить»

    Система переспросит вас об уверенности в выполняемой операции. Отвечайте уверенным согласием. Первый пункт на этом закончен. Можете выключать компьютер.

Извлекаем старую видеокарту

Отсоедините все провода от системного блока. Подождите около минуты, пока все компоненты полностью не обесточатся — теперь можно приступать.

Важно! Прежде чем работать с электроникой, особенно такой тонкой, как компьютер, нужно снять с себя статическое напряжение. Заземлитесь — хотя бы возьмитесь за батарею, хотя этого может быть недостаточно, если на последней толстый слой краски. В общем, нужен любой массивный металлический предмет. Тогда ваши детали будут в безопасности.

  1. Снимите боковую крышку, которая расположена с противоположной стороны от коннекторов материнской платы. Для этого отверните два винта и потяните крышку назад, после чего просто уберите ее. Снимаем боковую панель

    Снимаем боковую панель

  2. Вы увидите внутренние компоненты системного блока. Внутренние компоненты системного блока

    Внутренние компоненты системного блока

  3. Найдите вашу видеокарту среди слотов расширения — обычно они располагаются перпендикулярно материнской плате. В большинстве случае видеокарта будет расположена выше всех остальных плат расширения. Находим вашу видеокарту среди слотов расширения

    Находим вашу видеокарту среди слотов расширения

  4. Обратите внимание, идет ли к вашей карте дополнительный шнур от блока питания. Обычно такие шнуры имеют коннектор из шести контактов, который и вставляется в видеокарту. Аккуратно извлеките его, прижав язычок-фиксатор к корпусу. Извлекаем дополнительный шнур от блока питания

    Извлекаем дополнительный шнур от блока питания

  5. Выкрутите крепежные винты, соединяющие корпус карты с системным блоком. Эти винты обычно находятся около задней стенки компьютера. Выкручиваем крепежные винты

    Выкручиваем крепежные винты

  6. Теперь очень аккуратно начинайте извлекать карту из ее слота. Желательно не трогать руками контакты на текстолитовой плате — вероятнее всего, ничего не произойдет, но статика, если она есть, может убить видеокарту. Лучше беритесь за торцы или систему охлаждения.
Извлекаем карту из ее слота

Извлекаем карту из ее слота

Во время извлечения карты не забывайте про язычок, который крепит ее в слоте с другой стороны от крепежного винта. Аккуратно отогните его, но так, чтобы не сломать, и тяните карту на себя, пока она не окажется в ваших руках. Готово!

Установка новой видеокарты

Примечание! Перед тем, как устанавливать новую видеокарту, обратите внимание на внутреннее состояние компьютера — чисто? Сомневаюсь. Поэтому, раз уж мы открыли системный блок, можно вооружиться баллоном со сжатым воздухом или обычным пылесосом и очистить внутренности от пыли. Можете использовать сухую мягкую кисть. Помните: все действия нужно производить аккуратно, малейшая царапина на материнской плате или любом другом компоненте — не восстановите, нужно будет новый покупать.

  1. Раз ваш компьютер теперь чист изнутри, то можно заняться установкой новой видеокарты. Извлеките из коробки пакет с ней. Извлекаем из коробки пакет с видеокартой

    Извлекаем из коробки пакет с видеокартой

    Этот пакет обладает особыми антистатическими свойствами, поэтому доставайте видеокарту из него предельно осторожно. Помните про заземление!

  2. Аккуратно установите новую плату в тот же слот, из которого вы только что извлекли старую. Делайте это предельно аккуратно: царапины на таком тонком оборудовании, как компьютерные платы, смертельно опасны. Следите за тем, чтобы карта шла перпендикулярно материнской плате и чтобы она не сломала ненароком язычок крепления. Устанавливаем новую плату в тот же слот, из которого извлекли старую

    Устанавливаем новую плату в тот же слот, из которого извлекли старую

  3. Когда карта плотно войдет в свой слот, возьмите ранее открученный крепежный винт и возвратите его на место, тем самым крепко зафиксировав свою видеокарту. Прикручиваем крепежный винт

    Прикручиваем крепежный винт

  4. Помните про провод питания? Настало время вернуть его на место. Сделайте это, стараясь не прилагать особых усилий. Подсоединяем дополнительный шнур от блока питания

    Подсоединяем дополнительный шнур от блока питания

    Если в вашей старой видеокарте не был предусмотрен коннектор дополнительного питания, то и шнур такой на блоке питания не факт, что есть.

  5. Обычно к видеокартам в комплекте идут переходники с двух MOLEX-разъемов на 6-PIN. Воспользуйтесь ими или стандартным проводом из БП, если таковой есть.Посмотрите на то, как установили видеокарту. Если она встала без перекосов, все интерфейсы видны и легко доступны со стороны задней стенки — все хорошо, можно закрывать крышку и включать компьютер.Как заменить видеокарту в компьютере: пошаговая инструкцияПоложите крышку на место со смещением примерно в полтора сантиметра. Добейтесь попадания всех фиксаторов в их пазы, а затем задвиньте крышку движением к передней панели. Закрутите фиксирующие болты. Готово!

Важно! Ни в коем случае нельзя включать компьютер при открытой крышке системного блока. Током вас не убьет, однако для компьютера это может закончиться плачевно — не выпускаем из головы статическое напряжение.Подключите к компьютеру все провода, что вытащили в начале. Запустите его.

Появилась картинка на экране? Вы все сделали правильно и теперь можете приступать к последнему пункту.

Установка новых драйверов

Система может сама установить необходимое ПО для взаимодействия с видеокартой. Однако оно не даст ей полностью проявить свои возможности. Поэтому:

  1. Найдите в коробке от видеокарты диск с программным обеспечением. Находим в коробке от видеокарты диск с программным обеспечением

    Находим в коробке от видеокарты диск с программным обеспечением

  2. Теперь вставьте его в дисковод компьютера. Вставляем диск в дисковод компьютера

    Вставляем диск в дисковод компьютера

    Откроется утилита от производителя вашей карты. Следуйте инструкциям на экране, а в конце не забудьте еще раз перезагрузить компьютер. Готово! Поздравляем вас с успешной установкой вашей новой видеокарты!

Читайте интересную информацию в новой статье — «Как подключить 2 видеокарты к компьютеру».

Видео — Как заменить видеокарту в компьютере: пошаговая инструкция

Понравилась статья? Сохраните, чтобы не потерять!

pc-consultant.ru

Видеокарта вместо процессора | Computerworld Россия

«Процессор не занят какой бы то ни было работой, и многим людям в голову приходит мысль: а давайте-ка вести на нем вычисления!», - рассказал директор по архитектуре компании nVidia Джон Николлс в среду на конференции Microprocessor Forum 2007 в Сан-Хосе (шт. Калифорния).

Действительно, когда графический процессор не занят обработкой графики, его можно использовать параллельно с основным процессором. Николлс заявляет, что производительность в таком случае может достигать 200 млрд. операций с плавающей запятой в секунду (Floating-Point Operations per Second, FLOPS).

В феврале nVidia выпустила бета-версию программного пакета CUDA (Compute Unified Device Architecture  - унифицированная архитектура вычислительных устройств). Выпуск  версии для общего пользования ожидается во второй половине этого года. Пакет CUDA позволяет программистам создавать программы, которые возлагают на графический процессор некоторые из вычислительных функций, традиционно находящихся в ведении центрального процессора. Хотя идея использования графического процессора для вычислений не нова, по словам Николлса, применение CUDA должно облегчить эту задачу.

CUDA работает только на видеокартах nVidia серий GeForce 8800 и 8600 и представленных в ноябре 2006 года Quadro FX 4600 и 5600. В качестве сопроцессора можно использовать, например, графический процессор GeForce. Он обладает собственной памятью в 16 Кбит и может выполнять одновременно 128 тыс. потоков команд, заявил Николлс. Для выполнения одной задачи можно организовывать группы потоков.

«Графический процессор покупают для работы с графикой, но большую часть времени он простаивает, - заявил Николлс. - Между тем это отличный высокопроизводительный массивно-параллельный компьютер, и мы пытаемся раскрыть его возможности». По его мнению, приложения, которым пригодится возможность работы на графических процессорах, встречаются везде, где нужна высокая вычислительная мощность - в научных исследованиях, медицине, финансах и т. д. 

Подход nVidia отличается от того, который пропагандирует компания Advanced Micro Devices. В 2006 году она приобрела компанию - производителя видеокарт ATI Technologies. А во вторник на конференции Microprocessor Forum она сообщила о начале разработки процессора, скомбинированного с графическим процессором. Он называется Fusion и должен выйти примерно в 2009 году. По мнению Николлса, это в большей степени ценовая игра, и соединение центрального и графического процессоров должно скорее снизить стоимость, чем повысить производительность.

Конференция Microprocessor Forum проходила в течение двух дней, она была организована исследовательской фирмой In-Stat.

www.osp.ru

Как заменить видеокарту, замена видеокарты в компьютере

Современные персональные компьютеры достигли такого уровня производительности, что необходимость в регулярном обновлении комплектующих практически отпала. Подавляющее большинство пользователей работают за компьютерами трех-четырех летней давности и при этом не испытывают никаких неудобств.

Единственным компонентом современного настольного ПК, который все еще нуждается в обновлении это видеокарта. Установка более современной видеокарты всегда повышает уровень комфорта в компьютерных играх. В данном материале мы расскажем о том, как заменить видеокарту в настольном ПК.

Подготовка к замене видеокарты

Первое что необходимо сделать перед разборкой ПК – это полностью обесточить системный блок. Для этого вытяните все вилки с розеток. После того как системный блок обесточен можно приступать к его разборке. Отключите все кабели на задней части системного блока, для того чтобы они не мешали вам в работе.

Для того чтобы получить доступ к внутренностям компьютера и заменить видеокарту вам необходимо снять боковую крышку системного блока. На задней части системного блока откручиваем два винта, которые крепят левую боковую крышку системного блока.

Как заменить видеокарту: снимаем боковую крышку

Замена видеокарты

После того как доступ к системному блоку открыт можно приступать к отключению старой видеокарты. Для этого откручиваем болтик, который крепит видеокарту к системному блоку.

Как заменить видеокарту: откручиваем фиксирующий болтик

Если ваша видеокарта использует дополнительное питание, то его тоже необходимо отключить. Как правило, это один или несколько кабелей от блока питания, которые подключаются к видеокарте с помощью 6-и или 8-и пиновых разъемов.

Как заменить видеокарту: отключаем дополнительное питание

После этого нужно аккуратно снять видеокарту, открыв специальную защелку на разъеме PCI Express. Сделать это довольно непросто, особенно если ваша видеокарта довольно большой толщины. Поэтому будьте готовы к тому, что с первой попытки может не получиться.

Как заменить видеокарту: открываем защелку

Защелка на разъеме PCI Express может быть разной конструкции. Но в большинстве случаев используется защелка как картинке выше. Ее нужно немного оттянуть в сторону верхней части материнской платы, после чего видеокарта освободится и ее можно будет вытащить из разъема PCI Express.

После того как вы извлекли старую видеокарту из разъема PCI Express можно приступать к установке новой. Установка видеокарты проходит намного проще.

Первое что вам необходимо сделать, это аккуратно установить в видеокарту в разъем PCI Express. При этом должен прозвучать характерный щелчок, который означает, что защелка на разъеме зафиксировала видеокарту.

Далее закручиваем болтик, который фиксирует видеокарту в системном блоке, а также подключаем дополнительное питание к видеокарте (если на новой видеокарте есть разъемы под дополнительное питание).

На этом замену видеокарты можно считать законченной. Закрывайте боковую крышку системного блока и включайте компьютер.

comp-security.net