Testen des neuen MQL5-Compilers für x64-Plattformen - 2 bis 10 Mal schnellere Berechnungen! - Seite 18

 
Alexey Sarmin:

Frage: kompiliert der MT5 x64 Compiler jetzt (neueste Version) standardmäßig mit aktivierter Optimierung? (Optimieren=1)


Es scheint so.

 

Wie kann ich die Compilerzeit reduzieren, selbst auf Kosten einer geringeren Leistung des resultierenden Codes?

Ich muss eine 500-Megabyte-Datei kompilieren - ich bin das Warten leid...

 
Aleksey Vyazmikin:

Wie kann ich die Compilerzeit reduzieren, selbst auf Kosten einer geringeren Leistung des resultierenden Codes?

Ich muss eine 500-Megabyte-Datei kompilieren - ich bin das Warten leid...

Ich dachte, Sie hätten vor einiger Zeit ein Beispiel für einen ähnlichen Code gegeben... Können Sie das noch einmal machen?

 
Alexey Kozitsyn:

Ich glaube, Sie haben einmal ein Beispiel für einen ähnlichen Code gegeben... Können Sie das noch einmal machen?

Ja, hier ist ein Link zu dem EA.

Es ist zwei Tage her - die Zusammenstellung beträgt 7%...

 
Aleksey Vyazmikin:

Ja, es gibt hier einen Link zum EA.

Es ist zwei Tage her - die Zusammenstellung beträgt 7%...

Ich habe mir die Datei angeschaut... Nur ein Fall von Armageddon :-)

 
Denis Kirichenko:

Ich habe einen Blick auf die Datei geworfen... Nur eine Art von Fall-Amageddon :-)

Was zu tun ist, müssen Sie durch viele verschiedene Kombinationen von Variablen-Sets gehen.

 
Aleksey Vyazmikin:

Was ist zu tun? Es gibt viele verschiedene Kombinationen von Variablensätzen, die durchzugehen sind.

Das Ziel ist ein hehres. Aber warum solche barbarischen Mittel einsetzen? Im Standard-MetaEditor gibt es mehrere Unit-Tests. Ich habe dort keine 35-MB-Dateien gesehen. Mein Redakteur ist sogar eingefroren :-))

 
Denis Kirichenko:

Das Ziel ist edel. Aber warum solche barbarischen Mittel einsetzen? Das Standardpaket von MetaEditor enthält mehrere Unit-Tests. Ich habe dort keine 35-MB-Dateien gesehen. Mein Redakteur ist sogar eingefroren :-))

Welche anderen Tools schlagen Sie vor? Das ist die schnellste Option, die ich bisher gefunden habe.

Normalerweise wird die Datei so kompiliert, dass man nicht länger als eine Stunde warten muss... aber bei 500 Megabyte ist das schon schwierig.

In der Tat ist nicht einmal klar, was der Compiler dort macht, im Code ist alles sehr klar - es gibt sozusagen nichts zu optimieren...
 

Um die Kompilierung (Optimierungsphase) zu beschleunigen, sollten Sie die Größe der Funktionen drastisch reduzieren.

Je mehr Funktionen, die Hunderte oder Tausende von Zeilen lang sind, desto langsamer ist die zyklische Optimierung. Der Code kann mit langen Funktionen unendlich verbessert werden.

 
Renat Fatkhullin:

Um die Kompilierung (Optimierungsphase) zu beschleunigen, sollten Sie die Größe der Funktionen drastisch reduzieren.

Je mehr Funktionen, die Hunderte oder Tausende von Zeilen lang sind, desto langsamer ist die zyklische Optimierung. Sie können den Code von langen Funktionen endlos verbessern.

Ich würde diese Aufzählung, sagen wir, in eine externe CSV-Datei übertragen, aber dann entsteht ein weiteres Problem - Zeitverschwendung, um die Datei zu lesen, und außerdem, wenn ich Aufgaben an Agenten verteile, bin ich nicht in der Lage, 500 Megabyte an jeden Agenten zu senden, während EA-Code an einen Agenten gesendet wird (oder nicht?) und zwischen ihnen geteilt wird.

Eine weitere Frage, mein Code ist leicht von 7zip von 500 bis 15 Megabyte komprimiert, aber nach der Kompilierung wird die Datei um 500 sein - warum ist es so - keine Chance, primitive Kompression (auch auf 100 Megabyte) zu tun?

Grund der Beschwerde: