Es gibt viele Themen über OpenCL, aber die zitierten Aufgaben sind zu weit vom Handel entfernt.
Was kann OpenCL den Händlern also bieten?
Was man nehmen kann, das gibt er auch.
Ja, ich habe OpenCL noch nicht studiert und möchte die wichtigsten Punkte lernen und klären:
Ich werde heute eine Ausnahme machen (ich bin gut gelaunt), aber da es in der Anfangsphase offensichtlich sehr rutschig ist, werde ich "Babysprache" wahrscheinlich ignorieren und nur spezifische Programmierfragen beantworten, sofern sie nicht zu dumm sind.
1. Es handelt sich um ein separates Programm, das Eingaben empfängt und Daten ausgibt, nicht wahr? Es gibt also überhaupt keine Interaktion von MQL?
Während der Kernel-Operation gibt es keine Interaktion. Die Interaktion ist ähnlich wie bei einem Funktionsaufruf. 1: 1. Anfangsparameter einstellen, 2. Berechnung durchführen, 3. das Ergebnis übernehmen
2. Lohnt es sich überhaupt, die Array-Suche in OpenCL zu integrieren, wenn Sie nur eine Bestätigung erhalten wollen, dass eine Übereinstimmung besteht?
Ich weiß es nicht. Es hängt von der jeweiligen Aufgabe ab. Vielleicht müssen Sie das auch gar nicht. Oder vielleicht solltest du das tun. Weißt du, wo der Telepathenclub ist? :)
3. Während der Optimierung muss jeder Thread seine eigene OpenCL-Initialisierung durchführen und es gibt keine Möglichkeit, sich mit dem aktiven Thread zu verbinden?
Ich habe nicht versucht, es in einem Optimierer laufen zu lassen, aber wenn sich mehrere Aufrufe überschneiden (ich habe damit mehrere OpenCL-Indikatoren und Expert Advisors gleichzeitig gestartet), wird es natürlich langsamer.
// Es werden keine Mittel von der Decke genommen, oder?
Wenn der Speicher der Grafikkarte überlastet ist (z.B. wenn mehrere Prozesse parallel versuchen, Arrays in den Videospeicher zu laden, die dessen Speicherkapazität überschreiten), dann kann es zu einem "Treiberabsturz" kommen - es kommt zu einem vollständigen Neustart (Reset) von Grafikkarte und Treiber, gefolgt von einer Meldung über einen Treiberabsturz. Zumindest ist dies bei meiner Karte/Treiber wiederholt passiert. Dies führt zwar nicht zu irreversiblen Schäden, aber Programme, die den Absturz verursachen, hängen in der Regel (sie müssen neu gestartet werden). Es gab schon früher Fälle von terminalem Aufhängen, aber nicht in letzter Zeit.
// Allerdings habe ich den Fahrer schon lange nicht mehr mit unbescheidenen Speicherabfragen "gerissen", ich habe ungefähr "Grenzen des Luxus" gefunden. :)
Es ist ganz einfach: Sie nehmen eine Aufgabe, die dem Handel nahe kommt (z. B. die Analyse des Kursverlaufs) und versuchen, sie mit OpenCL zu lösen. Nach ein paar erfolglosen Versuchen, weiterem Lesen der Literatur und neuen Versuchen wird es funktionieren, das garantiere ich. Aber nur unter der Bedingung, dass Sie in der Lage sind, die englischsprachige Literatur zu verdauen und ein bisschen Ausdauer sowie ein Mindestmaß an Grips mitbringen.
OpenCL-Treiber sind bereits recht gut optimiert, sowohl für Grafikkarten als auch für die Emulation auf Prozessoren (im letzteren Fall sind Intel-Prozessoren wahrscheinlich viel stärker). Man muss sich also sehr anstrengen, um am Ende überhaupt keine positiven Ergebnisse zu erzielen.
Was kann OpenCL den Händlern also bieten?
Leute, wer zaubert denn da? Ist es möglich, die Lösung eines linearen Gleichungssystems auf OpenCL zu übertragen? Die Größe des Systems kann sehr groß sein und es gibt noch andere Nuancen.
Dies ist eine gute pdf-Datei, die Ihre Frage beantwortet.
Nikolai, ich danke Ihnen für Ihr Entgegenkommen. Es gibt kein CUDA und keinen Code.
Oh, ich habe vergessen, eine weitere Sache zu erwähnen - die Konstruktion der Matrix braucht mehr Zeit als ihre Lösung :) also müssen Sie die Konstruktion möglicherweise parallelisieren.
Nikolai, ich danke Ihnen für Ihr Entgegenkommen. Es gibt kein CUDA und keinen Code.
Oh, ich habe noch eine Sache vergessen zu erwähnen - die Konstruktion der Matrix braucht mehr Zeit als ihre Lösung :) also muss ich sie vielleicht parallelisieren.
Was sind die Quelldaten? // Format, Datenstruktur
Ich meine, woraus bauen wir die Matrix auf? Aus einem Bündel von Puffern oder einem Baum? Von [...] ?

- www.mql5.com
Nikolai, ich danke Ihnen für Ihr Entgegenkommen. Es gibt kein CUDA und keinen Code.
Oh, ich habe noch etwas vergessen - die Matrix braucht mehr Zeit zum Bauen als zum Lösen :), daher kann es notwendig sein, den Bau zu parallelisieren.
Ich meinte den Plan, nicht die Umsetzung. Natürlich ist CUDA anders, aber das allgemeine Schema ist das gleiche.
Ich stimme Vladimir zu, Sie geben nicht genug Informationen, um Ihnen zu helfen.
Ich glaube nicht, dass sich noch jemand anschließen wird. Wenn Sie es also nicht öffentlich machen wollen, können Sie einen der Moderatoren unter vier Augen fragen.
Ich meine, woraus bauen wir die Matrix auf? Aus einer Reihe von Puffern? Aus einem Baum? Von [...] ?
Grob gesagt, gibt es einen Raum von großer Dimensionalität (10 - 1000 und mehr), für den wir das MNC-Problem lösen müssen.
Die Lösung des ANM-Problems läuft auf folgende Punkte hinaus
(1) Gleichungen von Ableitungen aufstellen
(2) durch Lösen eines Gleichungssystems aus (1)
Nun nimmt (1) den größten Teil der Lösungszeit in Anspruch. Je größer die Dimensionalität ist, desto größer ist der Bruch.
Parallele Algorithmen haben nur zwei Eigenschaften, die ihnen einen Vorteil gegenüber sequenziellen Algorithmen verschaffen.
Es handelt sich um den Kämmalgorithmus, bei dem jeder Zahn seinen Faden nimmt und über die gesamte Länge zieht.
Und die Pyramide rollen/abrollen. Das Abwickeln ist weniger häufig, meist ist es ein Locken.
Wenn die Problemstellung keines dieser Merkmale enthält, bringt der parallele Löser keinen Vorteil und ist aufgrund der Kosten für das Laden des Speichers oft langsamer.

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Es gibt viele Themen über OpenCL, aber die zitierten Aufgaben sind zu weit vom Handel entfernt.
Was also kann OpenCL den Händlern bieten?
Ja, ich habe OpenCL noch nicht studiert und möchte die wichtigsten Punkte lernen und klären: