OpenCl и инструменты для него. Отзывы и впечатления. - страница 26

 
Mathemat:
А-а, тезка, на дауншифтинг потянуло?

Ты понимаешь предмет?
 

Неа. Не водил, не вожу и не собираюсь.

Но слышал, конечно, что ВАЗ вполне может оказаться лучше в наших краях.

 

Тут кое кто похож на тех китайцев, которые попробовали прокатится на новых сверхскоростных поездах. Вам понравилось? - "Неа, черзцур бисро - низя рясьматреть пизязя!".

Mathemat:

Это, наверно, лучше у joo спросить. Он нервосетки любит обучать в реальном времени.

Я тут выкладывал тесты производительности невросеток с использованием разных компиляторов. Надеюсь уже скоро, выложу ещё один тестовый пример - расчеты на GPU.

Mathemat:
Ну попробуйте теперь сказать joo, что он "сваливает в НС всякую чушь"...

Можно и чушь сваливать. Намного быстрее получится понять, что чушь, а что не чушь, ведь во многих случаях, а особенно когда экспериментируешь, нельзя знать это заранее. Кроме того, с ростом скорости расчетов сетки появляется возможность увеличивать размерность входных сигналов - а это "сизам" к дверям мультивалютного анализа.

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


Ну и насчет обучения в реальном времени невросеток. Можно будет организовать "живую" популяцию, которая на самом деле живет, развивается - пересчитывать дообучение на каждом баре... ну может быть и не на каждом баре, а через несколько, но всё равно требуются огромные затраты на расчеты.


Тут есть ещё кое какая проблема - объем информации, который может быть обработан видеокартой за раз. Но думаю, в скором будущем и эта проблема сойдет на нет.

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

MT5+CUDA

Suggestions, MetaTrader 5 MQL, Закрыта, Начата: 2010.12.28 08:11, #29755


Тогда я делал акцент именно на CUDA. Но потом стало совершенно понятно, что OpenCL более перспективен, так как железонезависем, и разработчики MQ сделали правильный выбор.

И вот, наконец то, заявка выполнена!

Выдержка из заявки, примеры облостей применения:

Сегодня все знают, от новичков в программировании до профессионалов, что за параллельными вычислениями будущее программного обеспечения. И я знаю, что компания MetaQuotes Software Corp делает очень много для своих продуктов в этом направлении - это и многопоточность программ MQL5, и принцип удаленных агентов для распределённых вычислений при оптимизации.

Но существует и ещё одна возможность колоссально ускорить вычисления - это расчеты на GPU. Года 1.5-3 назад, расчеты на GPU использовались только для отрисовки графики в играх и мультимедийных приложениях, но сейчас положение в индустрии поменялось кардинально, расчеты на GPU используются везде, от молекулярного моделирования до тяжелейших инженерных расчетов в газо- и гидродинамики.

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

Оборона (на англ)

RealityServer
Ikena: Imagery Analysis and Video Forensics
Signal Processing Library: GPU VSIPL
IDL and MATLAB Acceleration: GPULib
GIS: Manifold
MATLAB GPU Computing: MathWorks
MATLAB Plugin: Accelereyes

Молекулярная динамика, вычислительная химия (на англ)

OpenMM library for accelerating molecular dynamics on GPUs
GROMACS using OpenMM
NAMD molecular dynamics
VMD visualization of molecular dynamics
HOOMD molecular dynamics
Acellera: ACEMD bio-molecular dynamics package
BigDFT: DFT (Density functional theory) electronic structure code
MDGPU
GPUGrid.net
MATLAB GPU Computing: MathWorks
MATLAB plugin: Accelereyes

Естественные науки, био-информатика (на англ)

GPU HMMER
DNA Sequence alignment: MUMmerGPU
LISSOM: model of human neocortex using CUDA
Silicon Informatics: AutoDock
MATLAB plugin: Accelereyes

Электродинамика и электромагнетизм (на англ)

Реализация FDTD алгоритмов от Acceleware
Решения в области электромагнетизма от Acceleware
Remcom XStream FDTD
SPEAG Semcad X
CST Microwave Studio
Quantum electrodynamics library
GPMAD : Particle beam dynamics simulator

Визуализация в медицине, компьютерная томография (на англ)

RealityServer
GPULib:IDL acceleration
Acceleware: решения для работы с изображениями
Digisens: SnapCT tomographic reconstruction software
Techniscan: Whole Breast Ultrasound Imaging System
NVPP: NVIDIA Performance Primitives (early access)
MATLAB GPU Computing: MathWorks
MATLAB plugin: Accelereyes

Нефть и газ (на англ)

RealityServer
Acceleware: Kirchoff and Reverse Time Migration
SeismicCity: 3D seismic imaging for prestack depth migration
OpenGeoSolutions: Spectral decomposition and inversion
Mercury Computer systems: 3D data visualization
ffA: 3D Seismic processing software
Headwave: Prestack data processing
GIS: Manifold
MATLAB GPU Computing: MathWorks
MATLAB plugin: Accelereyes

Финансовые вычисления и котировки акций (на англ)

SciComp: derivatives pricing
Hanweck: options pricing
Exegy: Risk Analysis
Aqumin: 3D Visualization of market data
Level 3 Finance
OnEye (Australia): Accelerated Trading Solutions
Arbitragis Trading
Enabling GPU Computing in the R Statistical Environment
MATLAB GPU Computing: MathWorks
MATLAB plugin: Accelereyes

MATLAB, LabVIEW, Mathematica, ANSYS.


CUDA-ускорение для MATLAB

    -
Accelereyes: Jacket engine for MATLAB
- GPULib: mathematical functions for IDL and MATLAB
- Integrating Simulink with CUDA using S-functions
Enabling GPU Computing in the R Statistical Environment
Mathematica plug-in for CUDA
Using NVIDIA GPUs with National Instruments LabView
Автоматизация электронного дизайна (на англ)

Agilent EESof: ADS SPICE simulator
Synopsys: Sentaraus TCAD
Gauda: Optical proximity correction (OPC)

Моделирование погоды и океана (на англ)

CUDA-accelerated WRF code

Приложения для работы с видео, изображениями и компьютерным видением
Axxon Intellect Enterprise Video Surveillance Software
Pflow CUDA Plugin for Autodesk 3ds Max
RUINS Shatter CUDA Plug-in for Maya
Bullet 3D Multi-Physics Library with CUDA Support
CUDA Voxel Rendering Engine
NVPP: NVIDIA Performance Primitives (early access) Volume Rendering with CUDA for VTK / Slicer3
Furryball: Direct3D GPU Rendering Plugin for Maya
For consumer CUDA applications, visit NZone

 
joo: И вот, наконец то, заявка выполнена!

Выдержка из заявки, примеры облостей применения:

Да, Андрей, серьезно ты подготовился, респект! Респект MetaQuotes за рано пойманный тренд!

 
Mathemat:

Да, Андрей, серьезно ты подготовился, респект! Респект MetaQuotes за рано пойманный тренд!

Спасибо, Алексей, но мне, собственно, не за что.

А вот MetaQuotes'ам действительно Респект! - мы являемся свидетелями рождения первой в мире торговой платформы, поддерживающей вычисления на GPU!

 

Скопирую с пятерочного форума, пожалуй:

Mathemat:


Процессор - Pentium G840 @ 2.8 GHz.

Дискретной видеокарты нет вообще! (Нет-нет, не вру, т.к. системник сам собрал.) Другими словами, GPU - Intel HD Graphics, даже не HD Graphics 2000.

Из чего вытекает следующее:

1. Встроенная графика CPU Sandy Bridge таки поддерживает OpenCL. А я почему-то думал, что поддержка OpenCL в интегрированной графике появится у Intel только вместе с Ivy Bridge...

2. И не такая уж она и слабенькая - на уровне GeForce GT 440 именно на этой задаче...

Дополнительные сведения:

1. Материнка - MSI H61M-P21. Бюджетная, в конце января брал по 1600 рублей. Память - 2 x 4 GB DDRIII 1333. Больше ничего.

2. Качал SDK от AMD по ссылке в первом посте этой ветки. А качал потому, что утилита OpenCL-Z не хотела ничего видеть. Может, тогда и встал OpenCL.

AlexEro: Вот тут программный комплекс SDK (с драйвером для CPU) для разработчика от AMD (заявлено, что для Vista-Win7, но работают и на WinXP. Без видео-карты-ускорителя успешно работают на центральном процессоре, и причём на любом SSE процессоре от Intel, а не только от AMD):

http://developer.amd.com/sdks/AMDAPPSDK/downloads/Pages/default.aspx

Значит, это софтовая реализация для CPU. Ну неплохо она пашет - особенно учитывая "немощность" интегридео от Intel... Ай маладца AMD, такие хорошие драйвера для камней своего конкурента делает!

______________________________________________________________

Загляните сюда, начиная с поста MetaDriver'a (там и скрипт лежит). Тесты дискретных монстров показывают ускорение на этой задаче до 200 раз. Но и 25 неплохо, да?

 

Mathemat:

...

Загляните сюда, начиная с поста MetaDriver'a (там и скрипт лежит). Тесты дискретных монстров показывают ускорение на этой задаче до 200 раз. Но и 25 неплохо, да?

У меня в 12 раз. Но что-то там у меня буксует скорее всего, надо разбираться...
 

А почему так

2012.03.05 10:29:16     Terminal        GPU: NVIDIA Corporation GeForce GT 525M with OpenCL 1.0 (2 units, 1200 MHz, 993 Mb, version 265.94)

И

2012.03.05 11:34:20     ParallelTester_00-01x (USDJPY,H1)       OpenCL not found.

Из за версии драйвера ?

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

Коллеги, у Вас с OpenCL будет МНОГО непонятностей и затыков. Не ждите лёгкого результата.

О некоторые из них ужЕ обожглись на форуме mql5.

Вариантов затыков много, поскольку OpenCL - это программная технология, которая навешивается на видео-драйвер. Фактически видеодрайвер превращается в небольшую операционную систему. И всё что висит по ходу дела на нём: UltraVNC, MSI afterbufner, Agnitum OutPost web-control interactive, и ещё тысяча программ - все они могут мешать нормальной работе OpenCL.

При этом даже если удаётся заставить работать OpenCL для несложных потоковых вычислений, остаётся ещё одно непреодолимое препятствие, а именно : для сложных расчётов - технологически-конструктивной (32 бита частичной поддержки IEEE ) и эксплуатационной (потеря точности при разгоне игровой карты) точностЕЙ GPU пока ещё недостаточно для серъёзных научных расчётов. К тому же, если на GPU от nVidia есть обработка double precision 64-бита почти на всех современных видеокартах, то на видеокартах AMD - она есть только на некоторых топовых сериях: 79хх, 69хх, 59хх, 48хх. У nVidia тоже есть бзик, но другой - они в одной банде с Микрософт и поэтому их пресловутая CUDA (и OpenCL) фактически не работают например на Server 2003, но при этом прекрасно работают на Server 2008 и даже на старой Win XP - чисто по маркетинговым соображениям Микрософт. К тому же в nVidia разумеется знают о проблемах отказов видеокарт, отказов графической памяти, потери точности при нагреве (которая не есть проблема в играх, но проблема в финансах и научных вычислениях), и поэтому они за свои НАСТОЯЩИЕ расчётные карты серий Tesla с надёжной ECC - памятью и способностью работать 24 часа в сутки в режиме "production" - лупят 4-кратную цену.

OpenCL - это для быстрых потоковых неточных 32-битных вычислений типа свёртки, фильтрации или рендеринга.

Причина обращения: