Evaluierung von CPU-Kernen zur Optimierung - Seite 12

 
Aleksey Vyazmikin:

Leider bin ich dumm, aber da X>=0 größer als jede andere Zahl sein kann - es gibt viele Kombinationen - ist es unmöglich, alles in den Code einzubauen, und der Code wird durch die verschiedenen Kombinationen um viele Größenordnungen wachsen.

Es gibt auch ziemlich viele Wiederholungen mit einem Wert. Aber das wird kaum helfen.

 
Ich kann einen Ryzen 3700x testen. Gehe ich recht in der Annahme, dass Sie mit jedem der drei EAs a) 16 Durchgänge mit 8 eingeschalteten Agenten b) 16 Durchgänge mit 16 eingeschalteten Agenten durchführen müssen?
 
Quantum_Logic:
Ich kann einen Ryzen 3700x testen. Verstehe ich das richtig, dass Sie mit jedem der drei EAs a) 16 Durchgänge mit 8 eingeschalteten Agenten b) 16 Durchgänge mit 16 eingeschalteten Agenten durchführen müssen?

Versuchen Sie es.

 
Aleksey Vyazmikin:

Ich schlage vor, Statistiken über die Leistung der verschiedenen Prozessoren zu erstellen, um ihre Effektivität für den Strategy Tester im Optimierungsmodus abzuschätzen.

Um objektiver zu sein, schlage ich vor, einen Expert Advisor zu verwenden, der im Modus"Mathematisches Rechnen" läuft, der es Ihnen ermöglicht, die Nutzung der Festplatte und des Computerspeichers zu minimieren. Wenn möglich, geben Sie den Namen des Prozessors, der Hauptplatine und die Frequenz des Arbeitsspeichers an.

Dies ist ein Test der CPU-Leistung bei den gegebenen Algorithmen, mehr nicht. Sie können sie anhand von Benchmarks "grob" vorhersagen: https://www.cpubenchmark.net/high_end_cpus.html

Bei mir zum Beispiel geht es hauptsächlich um Speicher und Festplatten (es gibt einfach nicht genug Speicher und alles wird ausgelagert). Und hier können die gleichen Xeons einen Vorsprung vor modernen i7-8700k für den gleichen Preis, arbeiten im 8-Kanal-Modus, zum Beispiel wie hier beschrieben: https://pikabu.ru/story/domashniy_komp_s_servernoy_nachinkoy_6442138

Aber das ist der Punkt, an dem wir von Overkill sprechen. Ich muss sowohl überschießen als auch überholen. Deshalb würde ich meine Aufmerksamkeit auf diese Tabelle richten:https://www.cpubenchmark.net/singleThread.html und speziell auf AMD 3600X - 3900X (es hängt von Ihrem Geldbeutel ab). Es stimmt, dass fast alle Desktops mit 2 Speicherkanälen ausgestattet sind. Die 4-Kanal-Server-Lösungen, Kernleistung wird teuer sein.

Außerdem denke ich, dass MQ eine gemeinsame Historie für N Threads erstellen wird und es kein Speicherproblem geben wird.

Und ich würde auch gerne die Möglichkeit geben, einen Teil des EA in CUDA zu schreiben, mit anschließender Parallelisierung auf Videokarten, denn das ist eine viel interessantere Perspektive.

 
Andrey Pogoreltsev:

Bei mir ist es zum Beispiel hauptsächlich der Speicher und die Festplatte, die alles verzögern (es gibt einfach nicht genug Speicher und alles wird ausgelagert).

Welche Art von CPU und Speicher haben Sie? SSD/HDD?

 
Andrey Pogoreltsev:

Dies ist ein Test der CPU-Leistung bei den gegebenen Algorithmen, mehr nicht. Sie können sie anhand von Benchmarks "grob" vorhersagen: https://www.cpubenchmark.net/high_end_cpus.html

Bei mir zum Beispiel geht es hauptsächlich um Arbeitsspeicher und Festplatte (ich habe einfach nicht genug Arbeitsspeicher und alles wird ausgelagert). Und hier können die gleichen Xeons einen Vorsprung vor modernen i7-8700k für den gleichen Preis, arbeiten im 8-Kanal-Modus, zum Beispiel wie hier beschrieben: https://pikabu.ru/story/domashniy_komp_s_servernoy_nachinkoy_6442138

Aber das ist der Punkt, an dem wir von Overkill sprechen. Ich muss sowohl überschießen als auch überholen. Deshalb würde ich meine Aufmerksamkeit auf diese Tabelle richten:https://www.cpubenchmark.net/singleThread.html und speziell auf AMD 3600X - 3900X (es hängt von Ihrem Geldbeutel ab). Es stimmt, dass fast alle Desktops mit 2 Speicherkanälen ausgestattet sind. Die 4-Kanal-Server-Lösungen, Kernleistung wird teuer sein.

Außerdem denke ich, dass MQ eine gemeinsame Historie für N Threads erstellen wird und es kein Speicherproblem geben wird.

Und ich würde auch gerne die Möglichkeit geben, einen Teil des EA in CUDA zu schreiben und ihn dann auf Videokarten zu parallelisieren, denn das ist eine viel interessantere Perspektive.

OpenCL ist also vorhanden, Parallelisierung auf Grafikkarten ist bereits möglich.
 
Pavel Verveyko:

Welche Art von CPU und Speicher haben Sie? SSD/HDD?

Ich habe jetzt einen Ryzen 5 2600, ich denke darüber nach, etwas Stärkeres zu bekommen.

Arbeitsspeicher: 4 x 8 GB CORSAIR Vengeance 3000

Mein Hauptlaufwerk ist eine Samsung 970 500Gb NVMe-Platte, aber ich habe eine 1Gb SSD mit SATA-3 für Multi-Thread-Tests gekauft, da mein Tester jedes Mal die Hölle aus ihr herausgeholt hat.

 
Maxim Romanov:
So ist es mit openCL, man kann es bereits auf Grafikkarten parallelisieren.

Wird sie im Strategietester parallelisiert? D.h. kann ich N Optimierungs-Threads auf OpenCL auf einem CPU-Kern laufen lassen?

 
Andrey Pogoreltsev:

Wird sie im Strategietester parallelisiert? Kann ich z. B. N Optimierungs-Threads auf OpenCL auf einem Prozessorkern ausführen?

Im Testgerät kann die interne Logik des Expert Advisors mit OpenCL parallelisiert werden, nicht aber die Verlaufspassagen.

 

OpenCL ist sicherlich eine gute Sache, aber nur, wenn es sich um spezifische Aufgaben handelt, die auf der Hardware des Entwicklers zu lösen sind, ansonsten steigen die Anforderungen an das Produkt dramatisch. Solche Aufgaben könnten sein:

  1. Zeichnen von 3D-Diagrammen/Modellen (fragwürdige Aufgabe)
  2. Berechnung des neuronalen Netzes
  3. Parallelisierung der Optimierung des Expert Advisors - das wäre sehr cool. Wenn der Expert Advisor OpenCL-Code enthalten könnte, der parallelisiert werden könnte. Dafür sollte der Strategietester aber in der Lage sein, N Instanzen des EA unabhängig von der Anzahl der Prozessorkerne auszuführen. Und natürlich muss man zuerst einen gemeinsamen Speicher mit Ticks für die Instanzen erstellen.
  4. Mining))))
PS. Übrigens ist es interessant, OpenCL-Mining auf Cloud-Maschinen laufen zu lassen und zu sehen, wie viel Rechenleistung damit erzielt werden kann)