OpenCL: interne Implementierungstests in MQL5 - Seite 53

 
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79


Die Hilfe hat es, das Skript nicht.


Und wann wird dieses Durcheinander mit den Identifikatoren ein Ende haben?

 
Mathemat:
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79

in der 630 build funktioniert.
 
joo: Ich habe ein mysteriöses Gerät 1 in meinem Computer mit Professor Tychkovs Methode entdeckt und es funktioniert schneller als CL_USE_ANY und sogar schneller als CL_USE_GPU_ONLY.

Was ist das? :O

Führen Sie GPU Caps aus, es wird eine Fülle von Informationen geben:

Sie haben wahrscheinlich zwei Geräte. 0 ist der Host, d.h. die CPU, und 1 ist Ihre diskrete Karte.

Der Zeitunterschied zwischen 125 ms und 78 ms ist nicht so groß, dass er nicht als GetTicksCount()-Fehler angesehen werden sollte.

CL_USE_ANY und CL_USE_GPU_ONLY sind nur "Masken" für die Auswahl von Geräten, nicht von einzelnen Geräten.

 
Mathemat:

Führen Sie GPU Caps aus, es wird eine Fülle von Informationen geben:

Sie haben wahrscheinlich zwei Geräte. 0 ist der Host, d.h. die CPU, und 1 ist Ihre diskrete Karte.

Wo zeigt das Dienstprogramm dies an?
 
joo:
Wo kann man es vom Dienstprogramm aus sehen?

Siehe hier:

Erweitern Sie die Liste auf der rechten Seite und sehen Sie, welche Geräte Sie haben.

Der Host sollte immer Null sein, das ist es, was ein Host ist...

 
Mathemat:

Und Sie haben wahrscheinlich zwei Geräte. 0 ist der Host, d.h. die CPU, und 1 ist Ihre diskrete Karte.

Mathemat:

Siehe hier:

Erweitern Sie die Liste auf der rechten Seite und sehen Sie, welche Geräte Sie haben.

Das geht nicht auf:


 

Wie auch immer... es ist nicht seltsam. Sie müssen mindestens zwei Geräte haben, daran führt kein Weg vorbei. Es gibt sie, nur auf unterschiedlichen Plattformen.

Und MT5 kann sie unabhängig von der Plattform erkennen. Was sagt Ihnen CLGetInfoInteger(0, CL_DEVICE_COUNT)? Es ist 2, richtig?

 
Mathemat:

Und MT5 kann sie unabhängig von der Plattform erkennen. Was sagt Ihnen CLGetInfoInteger(0, CL_DEVICE_COUNT)? Es ist 2, richtig?

Also 2, na und? Woher wissen Sie, ob Gerät 0 die Grafikkarte und 1 die CPU ist? Genau das ist der Punkt: Sie können es nicht.

Natürlich können Sie ein OpenCL-Programm erstellen und intern alle erforderlichen Informationen abrufen, welches Gerät welche Nummer hat. Aber Sie können es nicht außerhalb von MQL5 tun.

 
joo:

Also 2, na und? Woher wissen Sie, ob Gerät 0 die Grafikkarte und 1 die CPU ist? Genau das ist der Punkt: Sie können es nicht.

Natürlich können Sie OpenCL verwenden und alle benötigten Informationen intern abrufen, indem Sie die Seriennummer des Geräts beschreiben. Aber Sie können es nicht außerhalb von MQL5 tun.

In Kürze wird die Sprache um OpenCL-Funktionen erweitert. Es wird also die Möglichkeit geben, herauszufinden, wer wer ist.
 
joo: Also 2, na und? Woher wissen Sie, ob Gerät 0 die Grafikkarte und 1 die CPU ist?
Du bist 0 für Video?! Das ist erstaunlich.