OpenCl ve bunun için araçlar. İncelemeler ve izlenimler.

 
Metaquotes'un GPU'nun analiz ve ticarette uygulanabilirliği konusundaki fikrini değiştirdiğini (GPU için olan yazılımın nihayet ticari programlarda kullanım için gerekli koşula ulaştığını söylemek daha doğru olacaktır) dikkate alındığında, bugün, OpenCL'yi gerçek programlamada test etmeye başlayabiliriz.
Bu haberi kaçırdıysanız, forumu ticaret yapmak, modellemek ve programlamak yerine sular altında bıraktıysanız, örneğin Metaquotes diyor ki:

................................................ . ................................................ .. ................................................... ... ....................

Finansal modelleme için GPU kullanma deneyimi

http://habrahabr.ru/blogs/hi/131983/

MetaQuotes 7 Kasım 2011, 19:27 #

OpenCL desteği yakında MQL5'e dahil edilecek - bu, dağıtılmış bir ağdaki bilgi işlem performansının birkaç kez/siparişle artırılmasına izin verecektir.

................................................ . ................................................ .. ................................................... ... ....................

Peki, OpenCL nedir?

Bu bir yazılım yaklaşımıdır, programınızın bir video kartında, yani bir GPU'da paralel yürütülmesi için bir yorumlayıcı programdır.

Ne veriyor?

İlk olarak, ölçeklenebilirlik, yani mevcut bilgi işlem gücünün basit ve ucuz ölçeklendirilmesini sağlar. Bir düzine sunucu satın almak, kurmak ve bakımını yapmak bir şeydir ve bilgisayarınıza 3-4 ek video kartı satın almak ve takmak tamamen başka bir şeydir. Hız açısından sonuç aynı olacak, ancak para ve zaman harcamak açısından - onlarca kez.

İkincisi, daha önce bilgisayarların zayıflığı nedeniyle erişilemeyen bu tür karmaşık matematiksel yöntemlerin kullanılmasına izin verir.

Üçüncüsü, eğer metaquotes şirketi OpenCL'yi yalnızca kullanıcılar için değil, aynı zamanda yerleşik test cihazı için de vidalayabilirse, o zaman garip bir şekilde tamamen zıt iki bakış açısı vardır:

(a) vakaların yarısında, basit Uzman Danışmanların bireysel optimizasyonu için CloudNetwork'e hiç ihtiyaç duyulmaz.

(b) CloudNetwork'ün kullanımı, uzmanların optimizasyonu, modelleme ve analitik, daha önce tasarlanmamış bu tür karmaşık matematiksel yöntemlerin uygulanması için çok geniş olasılıklar açacaktır.

Nereden başlamalı?

İşte AMD'den bir geliştirici için SDK yazılım paketi (CPU için bir sürücü ile) (Vista-Win7 için olduğu belirtiliyor, ancak WinXP üzerinde de çalışıyorlar. Video hızlandırıcı kartı olmadan, merkezi işlemci üzerinde başarılı bir şekilde çalışıyorlar, ve ayrıca, yalnızca AMD'den değil, Intel'den herhangi bir SSE işlemcisinde):

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

AMD-ATI SDK'nın eski sürümleri (WinXP üzerinde çalışır):

http://developer.amd.com/sdks/AMDAPPSDK/downloads/pages/AMDAPPSDKDownloadArchive.aspx

Yorumlayıcının Nvidia sürümü her modern sürücüyle birlikte gelir ve geliştirme ortamı CUDA Tools-SDK'da bulunur:

http://developer.nvidia.com/opencl

Intel SDK sürümü (yalnızca Vista-Win7'de çalışır):

http://software.intel.com/en-us/articles/download-intel-opencl-sdk/

Not: MetaTrader 4 veya 5 ile normal çalışma için, güvenli iş parçacığı desteği yalnızca 1.1 sürümünden itibaren etkinleştirildiğinden, 1.0'a değil, OpenCL sürüm 1.1 veya daha yüksek bir sürüme ihtiyacımız var. MetaTrader 4-5 içindeki threadler her Expert Advisor için dinamik ve ayrı ayrı oluşturulur ve yok edilir. Bu nedenle, Uzman Danışmanlardan farklı döviz çiftlerinde asılı GPU'yu kullanmak için tam olarak güvenli iş parçacığına ihtiyacınız var.

Pratikte bu, ATI Catalyst sürücülerinin yalnızca 10.10 ve üzeri sürümlerini veya yalnızca Nvidia'nın 280.00 üzeri sürümlerini kullanmak anlamına gelir. AMD-ATI'nin sürücüleri her sürümde daha iyi ve daha hızlı hale geliyor ve nVidia'dan gelen dalgıç daha da kötüleşiyor ve yavaşlıyor. Nvidia sürüm 1.1'den OpenCL, sürüm 1.0'dan %30-40 daha yavaş, yani aslında AMD'den OpenCL 1.1'den 2 kat ve daha hızlı değil.

OpenCL nasıl kontrol edilir?

AIDA by FinalWire, Ekran bölümünde GPU seçeneklerini ve OpenCL sürümünü gösterir.

OpenCL hızı nasıl test edilir?

Luxmark programı:

http://www.luxrender.net/wiki/LuxMark

Farklı CPU ve GPU'ların yaklaşık karşılaştırmalı sonuçları:

http://www.luxrender.net/wiki/LuxMark_Results

CPU-Native'den ayrı bir CPU-OpenCL testi için bazen render.cfg dosyasını manuel olarak düzenlemeniz gerekir.

Üst düzey bir Phenom II X6 CPU için hız = yaklaşık 2300 , AYNI PROGRAM, ancak yalnızca 8 adet Nvidia GTX580 canavarında 70000 , yani 30 kat daha fazla. Aynı zamanda, böylesine canavarca bir canavarca 8 adet GTX580 seti bile birincil maliyetlerde 30'a ve elektrik tüketimi açısından, çift kayan nokta hızına eşdeğer 30 sunucudan yaklaşık 40 kat daha az maliyetli olacaktır. Ayrıca, program örneklerini 30 sunucuda senkronize etmek çok çaba gerektirir ve OpenCL'de hepsi programın aynı örneğinde tek bir bilgisayarda çalışır.

Diğer LuxMark sonuçları:

http://www.xtremesystems.org/forums/showthread.php?267385-LuxMark-The-OpenCL-CPU-amp-GPU-benchmark

OpenCL'yi test etmek için başka bir program:

gpcbenchmarkocl

Çinli yazarların web sitesinde geri çekildi (muhtemelen stratejik bir ürün), ancak Web'de bulunabilir. (İçinde, Görüntü İşleme bölümündeki bazı testler yalnızca DirectX sürüm 10 ve üzeri ile çalışır, yani bazı testler WinXP altında çalışmaz.)

OpenCL'nin bir özelliği daha var: Üzerinde programlama, sizi düzgün programlamada benimsenen olağan matematiksel soyutlamalardan uzaklaşmaya ve programı donanım için optimize etmeye zorlar, ki bu doğru değildir.

OpenCL hakkında, uygulanmasıyla ilgili yaklaşık zorluklar hakkında bir makale:

http://habrahabr.ru/blogs/hi/125398/

AMD'den OpenCL'ye giriş video kursu:

http://developer.amd.com/documentation/videos/OpenCLTechnicalOverviewVideoSeries/Pages/default.aspx

Genel olarak, AMD yazılım paketini kullanıyorsanız, SSE'ye sahip HERHANGİ bir bilgisayar OpenCL programlarını geliştirmek ve hatalarını ayıklamak için uygundur. Ayrıca, CUDA'ya sahip olduğu için Nvidia'nın herhangi bir GTS450....GTX580 sistemini önerebiliriz, ancak gerçek hızlı çalışma için AMD-ATI kartları ve programları hala daha uygundur, daha iyi ölçeklenirler ve Çoklu GPU'da daha kararlıdırlar konfigürasyonlar.

Çoklu GPU için Donanım OpenCL ayrı bir iş parçacığı için bir konudur.

 
AlexEro :

Çoklu GPU için Donanım OpenCL ayrı bir iş parçacığı için bir konudur.

Bu arada, konu oldukça yakından inceleniyor ve kartların karşılaştırmalı özellikleri var. Kötü şöhretli kripto para birimi bitcoin (başlangıçta) ve diğer kripto para birimleri (daha sonra) madencileri tarafından incelenmiştir.

Elbette, karşılaştırma belirli görevlere dayanmaktadır, ancak yapılandırma ve bütçeye göre kolayca gezinebilirsiniz.

Ve evet, şimdi güçlü kullanılmış video kartlarını almayın :)

 
TheXpert :

Bu arada, konu oldukça yakından inceleniyor ve kartların karşılaştırmalı özellikleri var. Kötü şöhretli kripto para birimi bitcoin (başlangıçta) ve diğer kripto para birimleri (daha sonra) madencileri tarafından incelenmiştir.

Elbette, karşılaştırma belirli görevlere dayanmaktadır, ancak yapılandırma ve bütçeye göre kolayca gezinebilirsiniz.

Ve evet, şimdi güçlü kullanılmış video kartlarını almayın :)

Evet, okuyucuyu bu canavarlarla hemen korkutmak ve daha önemli şeyden, programlamadan uzaklaştırmak istemedim. Katılıyorum, ancak nihai sonuç, yani gerçek ölçekleme hızının ne kadar beklenebileceği ve nasıl göründüğü gösterilmelidir. Ürün yelpazesi geniştir - bira kasasından raflara kadar:


 

OpenCL bugünün geleceğidir.

Soru: MT5 desteği yaklaşık olarak ne zaman uygulanacak?

OpenCL'nin paralel iş yüklerini programlamak için standart olacağından %100'den fazla eminim.

 
Microsoft, C++ AMP'yi tanıttı
shapovalovts tarafından Perş, 06/16/2011 - 10:07 tarihinde eklendi
AMD Fusion 11 Developer Summit'te Herb Sutter, heterojen C++ uygulamaları geliştirmek için C++ Accelerated Massive Parallelism (AMP) adlı yeni bir teknoloji duyurdu. Microsoft geliştiricilerine göre bu teknoloji, CPU'da paralel kod yürütme ve GPU'da kod yürütme olanaklarının kullanılmasına izin verecek.

C++ AMP'nin ana rakipleri OpenCL ve CUDA gibi teknolojiler olacaktır. Ayrıca Sutter, konuşmasında bulut bilişimde C++ AMP kullanma olasılıklarını vurguladı.

https://www.mql5.com/ru/forum/132431

 
Eh, yine tescilli AMP'nin genç açık kaynaklı kardeşi anlamına gelecektir)
 
Görünüşe göre AMP çok zor zamanlar geçirecek. OpenCL zaten tam kullanımda.
 
Fikir eksikliğini, hızlı bir şekilde sıralamanıza veya bir balonla sıralamanıza veya alıntılar üzerinden "entelektüel sapkınlıklardan" elde edilen başka bir saçmalık ile sıralamanıza izin verecek bilgi işlem gücüyle değiştirmek zordur)))
 
artikul :
Fikir eksikliğini, hızlı bir şekilde sıralamanıza veya bir balonla sıralamanıza veya alıntılar üzerinden "entelektüel sapkınlıklardan" elde edilen başka bir saçmalık ile sıralamanıza izin verecek bilgi işlem gücüyle değiştirmek zordur)))

Muhtemelen, bu tür kapasiteleri değerli fikirlerle yüklerseniz, gezegenimizin Güneş'in etrafında ters yönde dönmesini sağlayabilirsiniz. ))
 

makale , bu kadar kategorik olmaya gerek yok. Dünya durmuyor. Mantığınıza dayanan modern canavar video kartları, görüntü işlemedeki fikir eksikliğinin bir sonucu olarak da tanınmalı mı?

Kendimi bazen hızlandırmaktan memnunum - sadece kodda hata ayıklarken ağır hesaplamaların sonunu beklememek için, hepsini init () (yaklaşık 10 saniye) ile bağladım. Ve "anında" gerçekleşen diğer tüm hesaplamalar gerçekten çok hızlı bir şekilde gerçekleştirilir, bu nedenle burada çoklu kullanım gerekli değildir.

 
artikul :
Fikir eksikliğini, hızlı bir şekilde sıralamanıza veya bir balonla sıralamanıza veya alıntılar üzerinden "entelektüel sapkınlıklardan" elde edilen başka bir saçmalık ile sıralamanıza izin verecek bilgi işlem gücüyle değiştirmek zordur)))

Çok doğru bir şekilde not edildi.Ve sonra yoldaşlar, özellikle sapkın bir biçimde 6. noktayı ele alma beklentisiyle aktif olarak ısınıyorlar. =)

Neden: