gpu usage что это

Скачет загрузка графического процессора! (Нагрузка видеокарты скачет во всех играх)?

чужой скрин с просторов сети

НИЖЕ ВСЕ НАЧАЛИ ПИСАТЬ ДА ЛАДНО ЧЕЛ ЭТО НОРМАЛЬНО.
НЕТ.
ВОТ НОРМАЛЬНО!

А вот это отклонение

fx6300 (Да! очень древний очень конченный я в курсе мы не об этом)
8 Гб озу
Блок питания корсар 550 W с двумя 8 пиновыми кабелями питания видеокарты. так что видеокарта запитана от блока питания без переходников
У меня видяха торчит в pci-e 2.0

Во время игр сильно скачет загрузка ГП от 0% до 100%.
График питания видеокарты тоже плавает от 90 до 125.

СРАЗУ ХОЧУ ОТМЕТИТЬ ПРИ ОБРЕЛОСЬ 2 экземпляра этой видеокарты.
У меня и у друга. Одинаковые. Проблемы тоже одинаковые. Системы в остальном абсолютно разные
У меня амд у него интел
У меня 8 гиг озу у него 16 гиг озу.
И ещё очень важный момент у меня pci-e 2.0 у него pci-e 3.0

В интернете людей с такой проблемой тысячи. Толковых решений нет.
Кто-то говорит что дело в MSI Afterbuner. НЕТ НЕ В НЁМ. Проверял через FPS Monitor и через родной драйвер alt+R.
Даже через родной драйвер показывает пики 0-100%.
В разных играх интенсивность пиков различается. В DIVISION2 много резких частых дерзких. В MetroEx чуть получше не такие густые пики.

В FURMARk всё идеально. ВОТ ВСЁ ИДЕАЛЬНО ПОКАЗЫВАЕТ. Ровная нагрузка. Ровное питание видеокарты. Ровный FPS.

Как это отражается на играх? ну сложно сказать. не так очевидно.
WOT

Зашёл в WOT. Загрузилась карта идёт отсчёт до начала боя 10 сек. 120fps. начинается бой. я на светляке летаю в центре карты. 90-105 в зависимости куда смотришь. не чувствуется бешеных скачков.

На ультра 40-50 fps. фпс скачет 5-7 фпс почти постоянно. но рывков вроде бы не заметил. вроде как плавно(но это не точно)
Питание видеокарты держится больше чем в DIVISION 2 в районе 115-125 вт.

Сама игра ну 45-50 фпс тоже скакал. очевидных рывков визуально не наблюдал

Final Fantasy 15 benchMark

Всё те же рывки в графическом процессоре. Но ещё странность ОЗУ жрало 4 гига хотя у меня 8.
У кента 16 стоит и во время теста жрало 6. наверно скорее с объёмом связано чем с данной проблемой

В всё том же msi aftbur есть пресловутая галочка Unified GPU usage/// использовать универсальный что-то там.
Если её поставить ДА! в msi пики визуально пропадают а загрузка GP граф. проц. становиться 60 % НО. НО!
Вроде бы начинает врать по загруженности видеопамяти. Проверю ещё раз уточню.
Но в FPS Monitor нет такой галочки. В родном оверлее от драйвера amd нет такой галочки.

чужой скрин с просторов сети

Ну и мои скрины для затравки

Источник

Что такое GPU и в чём разница между видеокартой

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

Что такое GPU

Что такое GPU в компьютере и для чего он используется

GPU это вспомогательный микрочип, который берёт часть вычислительных операций на себя вместо процессора. И за счёт специализированной архитектуры, GPU лучше подходит для проведения расчётов с плавающей точкой, тогда как CPU больше ориентирован на работу в многопоточном режиме.

То есть видеокарта GPU способна быстро проводить расчёты, где используется одна или схожая формула (например, вычисление точки затенения графики при попадании тени на текстуру). Центральный процессор же ориентирован на проведение расчётов сразу в несколько потоков, когда пользователь работает одновременно с большим количеством приложений.

Графический процессор и видеокарта одно и то же

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

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

То есть GPU — это часть видеокарты. С технической стороны, видеоадаптер — это мини-компьютер. Ведь у него есть собственный процессор (графический), ОЗУ, шина данных.

Что такое интегрированный графический процессор

Видеокарты вплоть до 2005 года выпускались в форме отдельной платы, подключаемой к материнской плате компьютера или ноутбука. Но затем графические процессоры (GPU) начали интегрировать в CPU, такие кристаллы принято обозначать как iGPU.

У них нет собственной оперативной памяти или кэша. Соответственно, при отрисовке графики они резервируют часть имеющейся в компьютере ОЗУ.

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

Что такое графический процессор(GPU), интегрированный в CPU с технической точки зрения? Это отдельный кремниевый микрочип, который находится на одной плате («подложке») с центральным процессором. То есть он работает отдельно, хоть и использует ту же самую линию питания, что и CPU.

Как узнать какой GPU в компьютере

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

Есть нюанс: во многих современных ноутбуках устанавливается одновременно и интегрированная, и дискретная видеокарта. По умолчанию используется iGPU. А дискретный GPU задействуется в тех ситуациях, когда производительности iGPU недостаточно (например, при запуске видеоигры, приложения для видеомонтажа).

Графический процессор GPU при выполнении расчётов довольно сильно нагревается. Это специфика кремниевых кристаллов.

Температура свыше 100 градусов существенно ускоряет деградацию кремниевого кристалла. И именно перегрев — одна из самых распространённых причин выхода из строя видеокарт.

А для тестирования можно воспользоваться бесплатной утилитой Furmark.

Что делать, если температура в нагрузке CPU слишком высокая? Подробно описано здесь

Что такое дискретный графический процессор

Дискретный графический процессор — это тот, который устанавливается отдельно от CPU. Поставляется в форме платы, чаще всего — с портом PCI Express для подключения к материнской плате.

Читайте также:  ftn official что это

Недостатки встроенного GPU в компьютере

Ключевые недостатки интегрированных графических процессоров (iGPU):

Но есть у iGPU и весомое преимущество. Это малое энергопотребление.

Для сравнения, видеокарта GPU Nvidia Geforce последнего поколения потребляет порядка 300 Вт в нагрузке. Интегрированный графический процессор — порядка 3 – 10 Вт (в зависимости от модели видеокарты). Также следует упомянуть, что в игровых приставках последних поколений (XBOX, PlayStation), а также в портативной игровой консоли Steam Deck используются именно iGPU.

Аналитики вообще считают, что в ближайшие 10 – 20 лет дискретные видеокарты вообще станут невостребованными и их производство вовсе прекратят.

Итого, в каждом ПК или ноутбуке устанавливается два процессора, один из которых — графический( GPU). Интегрированные iGPU отлично подходят для «офисных» ПК, тогда как с дискретными GPU — для игровых компьютеров или так называемых «графических станций». А какая видеокарта установлена в вашем ПК или ноутбуке? Расскажите об этом в комментариях.

Источник

GPU нагрузка 100% и жуткие тормоза, как исправить?

Пару дней назад, решил почистить пк(от пыли) ничего особенно, просто всё протер да и заменил термопасту, сбросил биос, настроился и благополучно запустил. После использования ПК буквально 5-10 минут, заметил трескание в музыки, своего роза звуковые артефакты. Понял, что-то не так, начал копать обнаружил что грузится SSD на 100%, по танцевав с бубнами понял, что проблема в GPU. Тормоза начинаются именно тогда, когда грузится GPU. Но вот проблема, буквально до очистки ПК, не было никаких проблем, да и в целом никогда не было проблем со звуком и такими тормозами. Что заметил, gpu грузит почти под 100% почти при любом обращении к нему, допустим запускаю фотошоп, начинает прогружатся интерфейс и ВУАЛЯ тормоза дикие. Но бывает и то, что всё нормально работает, хотя через какое-то время опять тормоза. Доходили в плоть до полной остановки системы, то есть не звука, не мышкой по дергать, спасает только перезагрузка кнопкой.

Как я понял, что проблема в GPU: Я решил переключится на встроенную видюху Intel HD 2500 и там уже, всё работало отлично. Одновременно были запущенны Ps и Ai, делал проект но, даже так нагрузка на GPU не превышала 60-70% когда на внешней видюхи, просто при запуски фотошопа нагрузка было 100%. Использовал встроенную карту примерно пару часов, никаких тормозов (За исключением нормальных, когда просто не хватает памяти но, мышка не дергается и звук не трещит)

Что было проделано: Проверка на вирусы (Dr.web), обновления Bios. Внешний осмотр видеокарты, не показал ничего, запаха нет, обгораний тоже.

Вопрос: Что мне делать? Как можно продиагностировать видео карту, либо возможно есть какие-то аналогичные проблемы с которыми вы сталкивались и можете дать совет?

P.S: Есть подозрения, что видео карта доживает своё но, по моему опыту, должны быть хотя-бы артефакты, такие ощущение что, проблема как будто на уровне ПО, а не системна. Так-как ну очень странно она работает, то может работать в состоянии 100% нагрузки без тормозов и лагов, то при 80-100% жутко, очень жутко лагает.

ИТОГ: Сходил я к мастеру, он меня сказал выкинь свою карту, почему? Потому что накрылся чип, из-за того что начинается нагрузка он не справляется, вот тебе и лаги. Починить можно но смысла нету. Всем спасибо за внимание!

Источник

990x.top

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

GPU Speed что это такое?

Привет ребята. Сегодня мы будем говорить про GPU Speed — я расскажу простыми словами что это. Ну для начала разберем само название, GPU это графический процессор или по-простому видеокарта ваша, кстати расшифровывается как Graphics Processing Unit. Второе слово это Speed и оно означает скорость. Какой вывод? GPU Speed означает скорость видеокарты.

Но что означает скорость видеокарты? Вот и я подумал.. скорость, как бы такого понятия нет. Есть частота видюхи, то есть графического процессора. И чем выше эта частота, тем соответственно быстрее работает видюха.

Я пошел в интернет чтобы немного прояснить эту ситуацию и.. вот что узнал, смотрите, вот нашел такую картинку:

На картинке фирменная прога от Asus, это GPU Tweak II. И я так понимаю что прога позволяет переключать режимы видюхи. И вот смотрите, на картинке написано 122%, верно? Что это означает? А означает то, что видюха работает на 22% производительнее чем обычно. То есть некий такой разгончик себе. И справа сразу мы видим температуру, чтобы смотреть как там дела, ведь при разгоне температура повышается все таки.

То есть первый реальный случай где может быть GPU Speed — это фирменная прога по настройке видюхи, обычно в ней идут всякие режимы, там игровой, офисный, тихий режим, и может еще какие-то. И вроде даже можно создать собственный режим.

Вот я нашел еще одну картинку, тут все таже прога, но уже 137% стоит:

И вверху видите выбран режим Gaming Mode, то есть игровой режим.

GPU Speed 100 — это нормально?

Значит ребята, в интернете видел сообщения некоторых, они спрашивают GPU Speed 100 это нормально или нет? Ну тут вопрос не совсем ясный мне, да и должен признаться я не особо разбираюсь в видеокартах.. Но есть серьезная причина, по которой я решил написать.

Значит смотрите, при простое видеокарта также может скидывать частоту как это умеет делать процессор? Я посмотрел в интернете — вроде умеет. Но что это значит, когда видеокарта в простое загружена на все 100 процентов? А тут ребята не все так просто. Я могу ошибаться, но не так много есть программ, которые нагружают именно видеокарту, а не как обычно процессор. То есть если проге нужна мощь, то обычно она берет себе процессор, верно? Но не видеокарту, я конечно не имею ввиду игры.. если игра грузит видюху, то я думаю это нормально как бэ. Но знаете к чему я клоню? Да вот к тому, что может быть это.. майнер. Есть такие вирусы, которые используют мощь видюхи в своих целях. Некоторые это делают нагло и поэтому это сразу заметно, а некоторые используют чучуть только производительности и делают так, чтобы это было незаметно..

Читайте также:  какой камень подходит для дорожек на даче

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

В общем если видеокарта загружена на 100 процентов в простое, то первым делом я бы проверил комп на вирусы. Для этого я советую вам использовать утилиту Dr.Web CureIt!, ее скачать можно вот тут (это офф сайт):

Кстати вот я могу ошибаться.. но смотрите на картинку:

Видите, там где GPU Speed, то там 100%, а вот там где VRAM Usage, то там 1%. Повторюсь, что я не особо понимаю в видеокартах, но мне кажется что это странная ситуация, когда графический процессор нагружен на все 100%, а вот видеопамять (это VRAM Usage) вообще не используется.. Вот это ситуация как мне кажется подозрительная.

Fan Speed GPU это что?

Fan Speed означает скорость вентилятора, это относится к охлаждению. И если в Fan Speed GPU показываются проценты, то это означает на сколько работает система охлаждения видеокарты. Просто могут быть не проценты а RPM — это количество оборотов вентилятора. Вот например прога от AMD Radeon Settings и тут есть такой вот показатель, правда просто Fan Speed, без GPU, в общем смотрите:

А вот прога снова GPU Tweak II и тут есть Fan Speed и как я понимаю можно регулировать в процентах:

Вот такие дела ребята, надеюсь что инфа была вам полезна, ну а если что не так, то извините! Удачи вам и пусть у вас все будет хорошо!

Источник

Как GPU-вычисления буквально спасли меня на работе. Пример на Python

Сегодня мы затрагиваем актуальнейшую тему — Python для работы с GPU. Автор рассматривает пример, тривиальный в своей монструозности, и демонстрирует решение, сопровождая его обширными листингами. Приятного чтения!

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

В следующих разделах я детально опишу эту задачу. Также мы обсудим, как и когда использовать GPU для решения любых подобных задач. Итак, читаем внимательно – поверьте, вы не пожалеете. Сначала мы вникнем в детали задачи, затем освоимся с GPU и, наконец, воспользуемся GPU для решения этой задачи. Я буду пользоваться библиотекой Python Numba и графическим процессором Nvidia Volta V100 16GB GPU.

1. Подробное описание задачи

В сфере розничной торговли часто приходится искать похожие или наиболее близкие объекты. Мне дали список позиций, каждая из которых была представлена k латентными атрибутами. Итак, мне было поручено найти топ-3 наиболее схожих позиций к каждой из позиций списка. Метрикой схожести в данной задаче было выбрано косинусное сходство. Вот как выглядели мои данные.

Список позиций данных с 64-латентными признаками

Мне дали список, в котором было около 10⁵ позиций. Поиск 3 наиболее схожих позиций для каждой из них потребовал бы проверить косинусное сходство с каждым без исключения элементов в списке. Получалось бы n * k операций, где n – количество позиций, а k – атрибуты на каждую позицию. Потребовалось бы получить скалярное произведение данной позиции с каждой из остальных позиций в списке.

Код для нахождения трех позиций, максимально подобных заданной

Теперь, при нахождении топ-3 схожих для всех позиций в списке, сложность умножается еще на n. Окончательная сложность оказывается равна O(n*n*k) = O(n²k).

Код для нахождения трех наиболее схожих позиций для каждой позиции в списке

Тестовый прогон и оценка времени

Я запустил код, попробовав найти 3 наиболее похожие позиции из подмножества, содержащего n = 10³ позиций с k = 64. На выполнение этой задачи при помощи Python потребовалось около 17 секунд со средней скоростью 3.7 *10⁶ операций в секунду. Код был хорошо оптимизирован с применением операций и массивов Numpy. Отмечу, что все эти операции последовательно выполняются на CPU.

Прогон для n = 10³ позиций

Вывод: время, потребовавшееся для n = 10³ позиций

Далее я увеличил тестовое подмножество до n =10⁴ позиций. Поскольку сложность равна O(n²k), длительность выполнения возросла в 100 раз (поскольку n возросла в 10 раз). На выполнение кода ушло 1700 секунд = 28,33 минуты.

Вывод: время, потребовавшееся на обработку n = 10⁴ позиций

Далее подходим к самому важному: оценке времени, которое потребуется на обработку полноценного списка из 10⁵ позиций. Посчитав, увидим, что временная сложность вновь возрастет в 100 раз, поскольку временная сложность алгоритма равна O(n²k).
Ориентировочное время = 1700 * 100 секунд = 2834 минуты = 47,2 часа

О, Господи! Так долго.

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

2. Сравнение CPU и GPU

Центральный процессор (CPU), в сущности, является мозгом любого вычислительного устройства: он выполняет записанные в программе инструкции, осуществляя управляющие, логические операции, а также операции ввода/вывода.

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

Читайте также:  чем делают контур бровей перед окрашиванием

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

У GPU больше арифметических логических устройств (ALU), чем у типичного CPU, поэтому повышена способность параллельной обработки простых операций

Рисунок: сравнение CPU и GPU

3. Когда использовать вычисления на GPU

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

Представление об операциях с точки зрения GPU: возьмем, к примеру, операцию поиска слова в документе. Ее можно выполнить последовательно, перебрав одно за другим все слова в документе, либо параллельно, то есть, построчно, либо с поиском по конкретному слову.

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

4. Кратко о CUDA

CUDA – это платформа для параллельных вычислений и модель API, созданная компанией Nvidia. С помощью этого API можно использовать процессор с поддержкой CUDA-графики для широкого спектра вычислений. Такой подход получил название GPGPU (неспециализированные вычисления на графических процессорах). Здесь о них рассказано подробнеe.

Numba – это свободно распространяемый JIT-компилятор, транслирующий подмножество Python и NumPy в быстрый машинный код при помощи LLVM, это делается средствами пакета llvmlite на Python. В этом пакете предлагается ряд вариантов по распараллеливанию кода на Python для CPU и GPU, в самом коде при этом зачастую достаточно минимальных изменений. См. подробнеe.
Работая с процессором Nvidia Volta V100 16GB GPU, я пользовался библиотекой Numba.

потоки, блоки и гриды

CUDA организует параллельные вычисления при помощи таких абстракций как потоки, блоки и гриды.

Поток: поток CUDA – это назначенная цепочка инструкций, поступающих/текущих в ядро CUDA (на самом деле, это просто конвейер). На лету на одном и том же ядре CUDA может существовать до 32 потоков (в таком случае заполняются все звенья этого конвейера). Это выполнение ядра с заданным индексом. Каждый поток использует свой индекс для доступа элементов в массиве таким образом, что вся совокупность имеющихся потоков совместно обрабатывает все множество данных.

Грид: Это группа блоков. Между блоками отсутствует всякая синхронизация.

CUDA: потоки, блоки, гриды

Но где же именно выполняются потоки, блоки и гриды? В случае архитектуры G80 GPU от Nvidia, вычисления, по-видимому, распределены следующим образом:

Грид → GPU: Весь грид обрабатывается единственным GPU-процессором.
Блок → МП: Процессор GPU организован как коллекция мультипроцессоров, где каждый мультипроцессор отвечает за обработку одного или более блоков в гриде. Один блок никогда не делится между несколькими МП.
Поток → ПП: Каждый МП далее подразделяется на процессоры потоков (ПП), и каждый ПП обрабатывает один или более потоков в блоке.

Я позаимствовал некоторый материал из этой отлично написанной статьи. Рекомендую почитать ее внимательно.

5. Простая программа для сложения массивов на Python, использующая GPU

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

Допустим, у нас есть два массива, ‘a’ и ‘b’ размера ‘n’. Мы хотим сгенерировать массив ‘c’, такой, чтобы каждый элемент массива c являлся суммой элементов с теми же индексами из массивов ‘a’ и ‘b’. Но в данном случае для решения задачи мы применим не последовательные вычисления, а параллельные, которые делаются при помощи GPU.

Мы запустим n потоков/ядер. Индекс, под которым работает каждый конкретный поток, можно вывести из следующей формулы:

index = cuda.blockIdx.x * cuda.blockDim.x + cuda.threadIdx.x

В случае с двумерной матрицей в индексе присутствует два компонента, означающих строку и столбец, которые можно вывести следующим образом:

row = cuda.blockIdx.x * cuda.blockDim.x + cuda.threadIdx.x
col = cuda.blockIdx.x * cuda.blockDim.x + cuda.threadIdx.x

Также нам придется определить количество потоков на блок, скажем, tpb и блоков на грид, допустим bpg. Воспользуемся стандартными числами для них.

Ниже приведены реализации данного решения как для CPU, так и для GPU. Посмотрите оба листинга, чтобы уловить разницу.

Последовательная реализация для CPU.

Параллельная реализация для GPU

6. Нахождение 3 наиболее похожих позиций для каждой позиции в списке при помощи GPU

Хорошенько вникнув в теорию и практику, возвращаемся к исходно поставленной задаче: найти топ-3 похожих позиции для каждой позиции в списке при помощи вычислений на GPU.
В данном случае основная идея заключается в том, что у нас n позиций, и мы запустим n потоков. Каждый поток будет работать параллельно с остальными и независимо от них, вычисляя по 3 наиболее похожие позиции для каждой позиции в списке. За каждую позицию будет отвечать один поток.

Реализация для GPU

Код для нахождения 3 позиций, наиболее похожих на данную

Общее время, затраченное GPU для нахождения топ-3 схожих позиций для каждой позиции в списке, составило 481 мс (0,5 секунд). Еще 20 секунд потребовалось для копирования данных с устройства на хост и с хоста на устройство.

7. Вывод

Задача, решение которой на CPU потребовало бы около 2 дней, на GPU была решена за 20,5 секунд. Это оказалось возможно только благодаря природе задачи. Поиск 3 наиболее похожих позиций для ‘A’ не зависит от поиска 3 наиболее похожих позиций для ‘B’. Мы воспользовались этим фактом и применили параллелизм, предоставляемый GPU, для ускорения процесса. Также пример иллюстрирует, задачи какого типа удобнее всего решать при помощи могучего GPU.

Источник

Сказочный портал