Ситуация такая: скучно мне стало трейдингом заниматься,
новых идей пока не приходит в голову,
да и слегка бессмысленное это времяпрепровождение.
Решил тряхнуть стариной и поудовлетворять свое любопытство
(за свой счет) в области которой когда-то занимался,
а именно сворачивание белков (мол. биология).
Ученый из меня не вышел, а любопытство осталось,
да и задача считается до сих пор нерешенной.
Вот ученые они удовлетворяют свое любознательность либо за счет бюджета,
либо за счет грантодателей. А я вот за счет рынка, хехе.
Короче, решил переписать часть алгоритмов на CUDA,
чтобы считать на видеокарте некоторые места быстрее.
И выходит у меня, что на видеокарте ускорение примерно в 100 раз (т.е. два порядка)
по сравнению с обычным 4.0 ГГц Core i7-4790K (8 ядер).
На двухпроцессорной станции с зионам ситуация не лучше, видеокарта рвет даже зионы.
В алгоритме много матричных операций, что очень удобно для видеокарт и не очень для
универсальных процессоров.
Причем видеокарта у меня старовата уже, GTX 580.
Хочется купить GTX 1080, но оно от 40 до 60тр нынче.
А теслу за 350тр я как то пока еще не готов покупать.
Вот я в сомнениях, так уж ли много я получу от апгрейда?
Если скажем, там прирост еще в два-три раза, то я, понятное дело, понесусь в магазин.
А если 10-15% прирост — то не особо и нужно. Правильно?
Есть ли на смартлабе камрады, которые готовы запустить мою тестовую программу,
которая поработает 2 секунды и скажет сколько времени занял расчет.
раза в 4 медленней )
market.yandex.ru/catalog/55314/list?srnum=15128&hid=91031&text=geforce%20gtx%201080&glfilter=2142604855%3A1834797964&deliveryincluded=0&onstock=0&how=aprice
Если нужно считать именно даблы то лучше будет титан без х.
В вики все расписано
en.wikipedia.org/wiki/GeForce_10_series
попробуй в администрацию президента пойти… там как раз наоборот люди в " ученые " ушли… )))
В зависимости от задачи еще надо выбирать между AMD и Nvidia. Например, биткоины майнили только на АМД, поскольку они намного быстрее выполняли расчет хешей.
Если вы не определились с железом, то посмотрите в сторону облачных вычислений — можно напрокат взять столько, сколько нужно на любое время.
Погоняйте бесплатно https://aws.amazon.com/ru/free/?sc_ichannel=ha&sc_icampaign=free-tier&sc_icontent=2234
Тупо сравнивая, прирост в 4 раза
gpu.userbenchmark.com/Compare/Nvidia-GTX-1080-vs-Nvidia-GTX-580/3603vs3150
http://www.tomshardware.de/geforce-gtx-780-performance-review,testberichte-241287-26.html
Раньше тоже баловался распараллеливанием оптимизации на Матлабе — действительно работает, но грааль так и не откопал)
Вот с этого и надо было начинать :) Желания нужно удовлетворять.
Прошу прощения.
если да (честно да) на все три вопроса — то GTX 1080 стоит копейки по сравнению с тем, что дает первый пункт ;)
у меня только одна тема ушла на GPGPU, основная масса всего крутится на обычном кластере.
В данной работе рассмотрена аппаратная реализация расчета деполимеризации белковой микротрубочки методом броуновской динамики на кристалле программируемой логической интегральной схемы (FPGA) Xilinx Virtex-7 с использованием высокоуровневого транслятора с языка Си Vivado HLS.
habrahabr.ru/post/314296/
Полистал статью, понял, что для меня это уже магия, а не наука.
Впервые нарвался на пост, где некомпетентен во всем, хотя обладаю нехилым кругозором и навыками)))
Деполимеризация белковых микротрубок… мда
Да еще так хитро, через ресурсы видео-карты на CUDA.
А любой виндовский процесс можно распоточить и послать в видюху на обсчет?
Это сложно?
Как я понял, железо адаптируется под нужды, а не наоборот.
Естественно, от этого выигрыш в эффективности.
И комментарии там весьма позновательны.
или брали что-то по-настоящему быстрое типа BLAS?
я в своё время BLAS приспособил для обсчёта нейросетей и успокоился, мне хватило. правда потом я и нейросети практически забросил. тем более что они у меня были простенькие уж слишком.
нагуглил вот чувачок сравнивает перемножение матриц (dgemm)
devtalk.nvidia.com/default/topic/484564/cpu-gpu-dgemm/
CPU vs CPU + GPU
прирост получается в два раза. я бы сказал всего в два. т.е. не прям чтобы ах для пакетных операций, хотя для онлайна существенно.
я просто свой сервер за 30 тыс ₽ в 14 году собрал i7-4770K, без видеокарты. а тут предлагают за 45 видеокарту купить, интересно для каких случаев оно того стоит.
А хотите за адекватные деньги быстрый GPGPU с двойной точностью — велкам в мир радеонов, как говорится, и OpenCL.
а попробуйте ради интереса через ATLAS матрицы погонять, сколько будет?
тут вот http://mikiobraun.github.io/jblas/ товарищ показывает разницу в 10-15 раз с обычной программой. это конечно не 100..:(
всего 48тр где то (±)
перед тратой денег, лучше вообще понимать, есть ли выгода
slickdeals.net/forums/forumdisplay.php?f=9
Не парьтесь зря потратите время.
но всё-таки увеличение скорости в два раза при использовании GPU это круто. я просто хотел показать, что даже на CPU если взять хорошую матричную библиотеку, желательно оптимизированную под именно этот CPU (а у меня даже не было такой) — то будет уже очень круто.
Да, там интел свою многоядерную плюшку запустил подобного толка. Интересно, кто-нибудь сравнивал производительность их решений с nVidia и Ati в отношении больших, средних и малых матриц, например?
я пользовался atlas/lapack через обёртку для java http://mikiobraun.github.io/jblas/
получилось очень быстро. притом что там оптимизация только для 32bit по-моему. если собрать нормально ATLAS для i7 то наверное летать будет ещё быстрее.
кстати на новом уровне знаний, я теперь думаю что можно попробовать это сделать, довольно быстро с помощью docker&windows. а то возиться раньше было не охота.
gcdart.blogspot.ru/2013/06/fast-matrix-multiply-and-ml.html
разница вроде не драматичная как интел показывает (тесты старые, не важно)
Андрей К, так CUDA под другое заточено. Основная идея в SIMD. И в куче мух, которые запинывают слона.
[DllImport(«mycuda64.dll»)]
publicstaticexternint GetDeviceCount();
в DLL передаются массивы, которые обсчитываются на CUDA и обратно. Можно и через Managed Cuda сделать взаимодействие с ядром CUDA.
пока склоняюсь к вот такой карте https://market.yandex.ru/product/13932333/offers?hid=91031&track=tabs&how=aprice
и частота ядра прилична 1750, и памяти 10500 по сравнению с другими 1080
1070 в 1,5 дешевле 1080 и примерно на 1/8 слабее. А кое в чем сильнее в разы
Палит воняет и горит )))
Брать гигу, Асус, Мси.
Если для него 30 и 50 тысяч — одно и то же, пусть берет 1080.
Как вариант рассматриваю также вот этот гигабайт https://market.yandex.ru/product/14115896/offers?hid=91031&track=tabs&deliveryincluded=1&cpa=real&how=aprice
и частота памяти (10400) и ядра (1780) отличные. Цена только не очень… 54тр.
Мы тут уже проверили GTX 1060, по факту оказалось медленнее чем старенькая GTX 580.
Медленнее конкретно в моем случае, а он и есть критерий.