Aux conspirationnistes du monde entier et aux paranoïaques complets, ou simplement à ceux qui aiment contrôler le prix, vous êtes les bienvenus ! ;) - page 7

 
Mathemat:
Oui, tu te vantes de tes calculs GPGPU. Une accélération ?

D'où vient l'accélération de l'ordinateur portable ? Il faut plus de temps pour copier dans la mémoire tampon que pour calculer.

C'est juste un essai. Il y aura une accélération lorsque le calcul est relativement lourd.

J'ajoute juste un script pour calculer la corrélation avec un ensemble donné de motifs (512 motifs en parallèle) pour tout l'historique, et il y aura un gain centuplé (je pense). L'autopsie montrera ce qu'il en est réellement.

 

Et de toute façon, je ne me vante pas, je vulgarise OpenCL. Là-bas ! :)

C'est aussi amusant.

 
Mathemat:

Comment ça se passe - une accélération ?

C'est de la part de Yazzy ! !!

2012.03.02 01:15:10     Tester-512_Test_001 (EURUSD,M1) СPU time = 7223 ms
2012.03.02 01:15:10     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.01871 at 49 pass
2012.03.02 01:15:03     Tester-512_Test_001 (EURUSD,M1) GPU time = 312 ms
2012.03.02 01:15:03     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.01871 at 49 pass
2012.03.02 01:15:02     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!

Le résultat est le même (contrôle de validité), mais le temps est très différent. Dans ce cas, 23 fois la différence. Bref, ça valait le coup.

J'ai fait passer un perceptron à une seule couche par un historique de 144000 barres, 512 passages en une seule fois. J'ai aimé. ;)

 
MetaDriver: Dans ce cas, 23 fois la différence. Bref, ça valait le coup.
C'est génial !
 
Mathemat:
C'est plutôt cool.

Il s'avère que les temps habituels sont même légèrement meilleurs. Voici un aperçu des reprises :

2012.03.02 01:26:59     Tester-512_Test_001 (EURUSD,M1) СPU time = 7238 ms
2012.03.02 01:26:59     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.80004 at 320 pass
2012.03.02 01:26:51     Tester-512_Test_001 (EURUSD,M1) GPU time = 281 ms
2012.03.02 01:26:51     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.80004 at 320 pass
2012.03.02 01:26:51     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!
2012.03.02 01:26:48     Tester-512_Test_001 (EURUSD,M1) СPU time = 7270 ms
2012.03.02 01:26:48     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.48404 at 207 pass
2012.03.02 01:26:41     Tester-512_Test_001 (EURUSD,M1) GPU time = 281 ms
2012.03.02 01:26:41     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.48404 at 207 pass
2012.03.02 01:26:41     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!

Plus de 25 fois. Même très aha. :)

C'était un neurone à 8 entrées. Maintenant, regardez celle à 16 entrées :

2012.03.02 01:32:32     Tester-512_Test_001 (EURUSD,M1) СPU time = 14618 ms
2012.03.02 01:32:32     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.22936 at 78 pass
2012.03.02 01:32:18     Tester-512_Test_001 (EURUSD,M1) GPU time = 327 ms
2012.03.02 01:32:18     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.22936 at 78 pass
2012.03.02 01:32:17     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!
2012.03.02 01:32:01     Tester-512_Test_001 (EURUSD,M1) СPU time = 14618 ms
2012.03.02 01:32:01     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.21085 at 143 pass
2012.03.02 01:31:46     Tester-512_Test_001 (EURUSD,M1) GPU time = 327 ms
2012.03.02 01:31:46     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.21085 at 143 pass
2012.03.02 01:31:46     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!

C'est 45 fois la différence.

En effet, plus le calcul est lourd, moins les frais généraux constants (envoi de tableaux dans les deux sens) sont élevés.

 

Et c'est 1024 passes en parallèle :

2012.03.02 01:45:04     Tester-512_Test_001 (EURUSD,M1) СPU time = 29282 ms
2012.03.02 01:45:04     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==0.73802 at 802 pass
2012.03.02 01:44:35     Tester-512_Test_001 (EURUSD,M1) GPU time = 327 ms
2012.03.02 01:44:35     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==0.73802 at 802 pass
2012.03.02 01:46:36     Tester-512_Test_001 (EURUSD,M1) СPU time = 29265 ms
2012.03.02 01:46:36     Tester-512_Test_001 (EURUSD,M1) Result on Cpu МахResult==1.58618 at 821 pass
2012.03.02 01:46:06     Tester-512_Test_001 (EURUSD,M1) GPU time = 328 ms
2012.03.02 01:46:06     Tester-512_Test_001 (EURUSD,M1) Result on Gpu МахResult==1.58618 at 821 pass
2012.03.02 01:46:06     Tester-512_Test_001 (EURUSD,M1) OpenCL init OK!

Remarque - sur le GPU, il n'y a aucune différence (il y a 1280 cœurs, c'est-à-dire que la tâche entière tient en une seule passe).

La vérification de l'unité centrale, bien sûr, se fait de manière séquentielle.

Ainsi, le centuple requis est pratiquement atteint : la différence est de 89,5474 fois ( !).

 

Oui, les calculs lourds en boucle sont les meilleurs pour OpenCL.

N'avez-vous pas, ou quelqu'un que vous connaissez, un ordinateur basé sur l'A8-3850 qui traîne ? Il possède 400 pipelines graphiques (intégrés), soit dit en passant !

 
Mathemat:

N'avez-vous pas, ou quelqu'un que vous connaissez, un ordinateur basé sur l'A8-3850 ? Il possède 400 GPU (intégrés), d'ailleurs !

Y a-t-il une confusion ? Voici http://kazan.kompiko.info/priceshop.php?desc_id=111255

Il semble qu'il n'y ait rien de spécial, quatre cœurs seulement, pas un mot sur le convoyeur.

 

Vous pouvez lire la description de la roche ici. Je doute fortement que cette roche (ou plutôt sa partie GPU) ne supporte pas OpenCL.

Du point de vue de l'unité centrale, la pierre n'est pas très bonne. Mais il dispose d'une vidéo intégrée décente et dans les "bons" cas, vous pouvez compter sur une accélération de plusieurs dizaines de fois sans utiliser de monstres vidéo discrets. N'est-ce pas un superordinateur économique, hein ?

Et "cinq" est tel, et il s'avère que la puissance de la pierre multicore est presque inutile. Sans compter, bien sûr, l'optimisation : quelle différence cela fait-il pour vous de savoir combien de cœurs vous avez, 4 ou 6, si l'optimisation doit fonctionner 24 heures sur 24 ? D'ailleurs, faites tourner Cloud même sur un honnête Celeron G530 à double cœur pas si rapide...

P.S. Je ne suis pas un fan d'AMD. J'essaie juste de calculer où tout ce bazar de l'AMD va finir par mener.

 

Volodya, veuillez exécuter ce script et rapporter les résultats.

Merci à MQL5 pour son aide.

Dossiers :