MetaTrader 5 Python User Group - wie man Python in Metatrader verwendet - Seite 23

 
Lyuk:


Das Traurige ist nur, dass die Zahlenrechner in den letzten 15 Jahren nur um das 12-fache schneller geworden sind, ich dachte, moderne CPUs seien schneller.

Ich habe einen alten i7-3770K, er ist sieben Jahre alt. Die heutigen CPUs sind schneller.

 
Roman:

Ich habe einen alten i7-3770K, er ist sieben Jahre alt. Moderne CPUs sind schneller.

Leider ist Ihr 3770K leicht übertaktet bis zu 4.8Ghz, auch wenn es mehr alte 2600K wäre, würden Sie das Paradies für die Übertaktung zu erreichen, ist der ganze Punkt Tendenz zur CPU-Größe, die zu Kühlproblemen führt zu reduzieren. Zum Beispiel ist der 6xxx sogar ein Problem beim Übertakten. Im Großen und Ganzen haben sich die Spezifikationen für die Nutzer nicht viel geändert, mit Ausnahme der neuesten i9, die mehr wie Xeons geworden sind. Der Vorteil von Xeons ist die Energieeffizienz im Gegensatz zu CPUs für Normalverbraucher. Ihr 3770k ist also immer noch ziemlich normal für den durchschnittlichen Benutzer

 
Es gibt einen Thread über Prozessortests, und der Autor hat eine gute Arbeit geleistet und Statistiken gesammelt.
Wenn Sie interessiert sind, können Sie Ihre Prozessoren testen.
Оцениваем ядра CPU для оптимизации
Оцениваем ядра CPU для оптимизации
  • 2019.08.09
  • www.mql5.com
Предлагаю собрать статистику по производительности разных процессоров с целью оценки их эффективности для работы тестера стратегий в режиме оптимиз...
 

Getestet auf einer virtuellen Windows7 32bit-Maschine mit 2 AMD FX-Kernen.

Bei mql5 waren es 6 Sekunden.

Bei Python waren es in einem Thread 2,5 Sekunden.

Das ist viel schneller, und sogar schneller als Sie auf I7 in einem Thread, was erstaunlich ist.

Offenbar funktioniert der JIT-Compiler besser für AMD, oder AMD ist besser für solche Aufgaben.

 
Python mit einem Jit-Compiler schlägt also C (mql) um den Faktor 2! Wenn man es auf einem modernen 8-Kern-Prozessor laufen lässt, schlägt es C um den Faktor 8, einfach weil es multi-threaded ist.

Nun, normaler Test, erlaubt Python zu stoßen genaue Einhaltung des IEEE-Standards (fastmath=true), dann müssen Sie rutschen -Ofast zu syshka zu. Und dann gibt es noch OpenMP, mit dem man Schleifen parallelisieren kann - [ein paar zusätzliche Zeilen] (https://www.ibm.com/developerworks/ru/library/au-aix-openmp-framework/index.html).

Fans von Abstraktionen... Was ist, wenn es ein weiteres Add-on zu Python gibt? Was ist, wenn es noch einen gibt? Kompilieren in den Bytecode der virtuellen Maschine virtuellen Maschine virtuellen Maschine.

 

Leider kann eine zählbare Anzahl von Algorithmen in Parallelität zerlegt werden.

Das angegebene Beispiel der Pi-Berechnung dient nur zur Demonstration eines solchen synthetischen Tests. Das Gleiche geschieht mit OpenMP in C++. In MQL5 mit OpenCL geht es noch schneller.

 

Ich habe einen solchen Parallelitätsparameter für Schleifen in Visual Studio gefunden.
Können wir eine solche Richtlinie auch in mql implementieren?
Oder sind die Schleifen in mql standardmäßig parallelisiert?

gegen

 
Roman:

Ich habe einen solchen Parallelitätsparameter für Schleifen in Visual Studio gefunden.
Können wir eine solche Richtlinie auch in mql implementieren?
Oder sind Schleifen in mql standardmäßig parallelisiert?

Ich habe es in den letzten 10 Jahren nicht geschafft, die Verwendung dieses Parameters in Visual Studio (wie auch in allen anderen Programmen) zu sehen. Auch wenn alle Flaggen der Schleifenberichterstattung eingeschaltet sind.

Es hat einfach nicht funktioniert und funktioniert auch nicht bei großen Projekten, bei denen es viele Möglichkeiten zur Parallelisierung gibt. Nur direktes OpenMP mit manueller Markierung von Schleifen funktioniert.

In MQL5 sind die Schleifen nicht parallel geschaltet.

 
Renat Fatkhullin:

Leider kann eine zählbare Anzahl von Algorithmen in Parallelität zerlegt werden.

Das angegebene Beispiel der Pi-Berechnung dient nur zur Demonstration eines solchen synthetischen Tests. Das Gleiche geschieht mit OpenMP in C++. In MQL5 mit OpenCL geht es noch schneller.

Ich habe in meinem Blog eine Berechnung veröffentlicht, die genau den gleichen Effekt hat. Leider sind die OpenCL-Informationen von einem solchen Niveau, dass sie viel mehr Kompetenz erfordern, als ich habe.

Ich würde gerne ein einfaches Beispiel (wie in diesem Blog) für eine OpenCL-Implementierung und das Ergebnis der Beschleunigung sehen.

 
fxsaber:

Ich habe in meinem Blog eine Berechnung veröffentlicht, die genau den gleichen Effekt hat. Leider sind die OpenCL-Informationen von einem solchen Niveau, dass sie viel mehr Kompetenz erfordern, als ich habe.

Ich würde gerne ein einfaches Beispiel (wie in diesem Blog) für eine OpenCL-Implementierung und das Ergebnis der Beschleunigung sehen.

Abgesehen vom Thema OpCl, aber zum Thema Python

Visuell ähnliche Fälle sind ebenfalls recht gut definiert (inkrementelle Verteilungen)

Beachten Sie die Gruppe 0-6 Stunden (nach GMT + 2)

Monate in 10 Jahren

Stunden in 10 Jahren


Grund der Beschwerde: