OpenCl e i relativi strumenti. Recensioni e impressioni. - pagina 26

 
Mathemat:
Ah, omonimo, ora sei in discesa, vero?

Hai capito il soggetto?
 

No. Non ho guidato, non guido e non intendo farlo.

Ma ho sentito, naturalmente, che VAZ potrebbe essere migliore nelle nostre parti del mondo.

 

Qualcuno qui assomiglia al cinese che ha provato un giro sui nuovi treni ad alta velocità. Ti è piaciuto? - "Nah, chez zur bisro - non c'è modo di guardarlo!"

Mathemat:

Probabilmente è qualcosa che dovresti chiedere a Joo . Gli piace insegnare i nervi in tempo reale.

Ho postato dei test di performance di neurocellule usando diversi compilatori. Spero che presto posterò un altro caso di test - calcoli GPU.

Matematica:
Ora prova a dire a Joo che sta "scaricando merda nel NS"...

È anche possibile scaricare le sciocchezze. Molto più veloce per capire cosa è senza senso e cosa no, perché in molti casi, e soprattutto quando si sperimenta, non si può sapere in anticipo. Inoltre, con l'aumento della velocità dei calcoli della griglia, aumenta anche la capacità di aumentare la dimensionalità dei segnali di input - e questo è un "sis" alla porta dell'analisi multicurrency.

Inoltre, chiunque faccia trading di opzioni sa quanto siano necessari ampi calcoli per analizzare più opzioni e selezionare la più promettente tra esse. Anche qui ci sarà un "sisam".


E poi c'è l'allenamento in tempo reale delle neurocellule. Sarebbe possibile organizzare una popolazione "live" che vive realmente, si evolve - ricalcolare il preapprendimento su ogni barra... Beh, forse non in ogni bar, ma in alcuni, ma richiede comunque un costo enorme da calcolare.


C'è un altro problema qui - la quantità di informazioni che può essere elaborata da una scheda grafica alla volta. Ma penso che anche questo problema sparirà nel prossimo futuro.

L'uomo, in un momento in cui "le astronavi stanno navigando attraverso il ... Grande Teatro" ci sono persone che si oppongono al progresso e non capiscono perché tutti i produttori di chip per processori sono così preoccupati del multithreading. Infatti, anche due anni fa non era evidente e impercettibile, presto saranno solo 2 anni dalla mia domanda a servicedesk, datata

MT5+CUDA

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


A quel tempo stavo enfatizzando specificamente CUDA. Ma poi è diventato abbastanza chiaro che OpenCL è più promettente come indipendente dal ferro, e gli sviluppatori di MQ hanno fatto la scelta giusta.

E così, finalmente, l'applicazione è fatta!

Estratto della domanda, esempi di applicazioni:

Сегодня все знают, от новичков в программировании до профессионалов, что за параллельными вычислениями будущее программного обеспечения. И я знаю, что компания 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: E così, finalmente, la domanda è stata soddisfatta!

Estratto della domanda, esempi di applicazioni:

Sì, Andrei, sei seriamente preparato, complimenti! Complimenti a MetaQuotes per aver colto in anticipo la tendenza!

 
Mathemat:

Sì, Andrei, sei seriamente preparato, complimenti! Complimenti a MetaQuotes per aver colto in anticipo la tendenza!

Grazie, Alexey, ma non ho davvero nulla per cui ringraziarti.

Ma rispetto a MetaQuotes! - Stiamo assistendo alla nascita della prima piattaforma di trading al mondo che supporta il GPU Computing!

 

Lo copierò dal forum a cinque nuclei, credo:

Mathemat:


Processore - Pentium G840 @ 2.8 GHz.

Nessuna scheda video discreta! (No, no, non sto mentendo perché ho costruito io stesso il sistema). In altre parole, la GPU è Intel HD Graphics, nemmeno HD Graphics 2000.

Il che implica quanto segue:

1. la grafica integrata sulle CPU Sandy Bridge supporta OpenCL. Per qualche ragione pensavo che Intel avrebbe introdotto il supporto OpenCL per la grafica integrata solo con Ivy Bridge...

2. E non è così debole - al livello di una GeForce GT 440 su questo particolare compito...

Più informazioni:

1. Scheda madre MSI H61M-P21. Budget, alla fine di gennaio l'ho comprato per 1600 rubli. Memoria - 2 x 4 GB DDRIII 1333. Non molto altro.

2. Ho scaricato l'SDK da AMD seguendo il link nel primo post di questo thread. L'ho fatto perché lo strumento OpenCL-Z non voleva vedere nulla. Forse è stato allora che OpenCL si è alzato.

AlexEro: Qui c'è il software SDK (con il driver della CPU) per lo sviluppatore AMD (annunciato per Vista-Win7 ma funziona anche su WinXP. Senza scheda video funzionano con successo sulla CPU, e su qualsiasi processore SSE di Intel, non solo AMD):

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

Quindi è un'implementazione software per la CPU. Beh, funziona abbastanza bene - soprattutto tenendo conto della "debolezza" dell'integrazione Intel... Ben fatto AMD, un così buon pilota per le pietre del suo concorrente!

______________________________________________________________

Controllate qui, a partire dal post di MetaDriver(potete trovare lo script anche lì). I test sui mostri discreti mostrano un'accelerazione fino a 200x su questo compito. Ma anche 25 non è male, eh?

 

Mathemat:

...

Controllate qui, a partire dal post di MetaDriver(lo script è anche lì). I test dei mostri discreti mostrano un'accelerazione fino a 200x su questo compito. Ma anche 25 non è male, eh?

Sono arrivato a 12 volte. Ma probabilmente c'è qualcosa lì dentro su cui sono bloccato, quindi dovrò dare un'occhiata...
 

E perché?

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

И

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

A causa della versione del driver?

 
Date un'occhiata al thread sul forum delle cinque auto. Qualcuno lì sembra aver avuto problemi simili.
 

Colleghi, avrete molta confusione e balbuzie con OpenCL. Non aspettatevi risultati facili.

Alcuni di loro sono già stati bruciati nel forum mql5.

Ci sono molti intoppi perché OpenCL è una tecnologia software sovrapposta al driver video. In effetti, il driver video diventa un piccolo sistema operativo. Tutto ciò che si blocca lungo la strada: UltraVNC, MSI afterbufner, Agnitum OutPost web-control interattivo e mille altri programmi possono ostacolare il normale funzionamento di OpenCL.

Detto questo, anche se si riesce a far funzionare OpenCL per semplici calcoli threaded, c'è ancora un altro ostacolo insormontabile da superare, e cioè: per i calcoli complessi - la precisione tecnologica (supporto IEEE parziale a 32 bit) e operativa(perdita di precisione quando si overclocca una scheda di gioco) della GPU non è ancora sufficiente per i calcoli scientifici seri. Inoltre, mentre le GPU nVidia hanno l'elaborazione a doppia precisione a 64 bit su quasi tutte le schede video moderne, le schede video AMD ce l'hanno solo su alcune serie top di gamma: 79xx, 69xx, 59xx, 48xx. nVidia ha anche un altro bug - sono in una banda con Microsoft e quindi il loro famigerato CUDA (e OpenCL) in realtà non funzionano ad esempio su Server 2003, ma funzionano bene su Server 2008 e persino sul vecchio Win XP - puramente per considerazioni di marketing di Microsoft. Anche nVidia è ovviamente consapevole dei problemi con i fallimenti delle schede grafiche, i fallimenti della memoria grafica, l'imprecisione del calore (che non è un problema nei giochi ma un problema nella finanza e nel calcolo scientifico), ecco perché fanno pagare 4 volte il prezzo per le loro REALI schede di calcolo della serie Tesla con una memoria ECC affidabile e una modalità "produzione" di 24 ore.

OpenCL è per lo streaming veloce di calcoli imprecisi a 32 bit come la convoluzione, il filtraggio o il rendering.

Motivazione: