Frage an Entwickler - Nutzung aller Rechenkerne während der Optimierung - Seite 7

 
Boris Egorov:

zweiten Tag zählt es nichts, alle Kerne in der Anzahl von 12 lokalen und etwa 30 Netzwerkkerne sind im Leerlauf, ich berühre es nicht mit Absicht ... Ich weiß nicht, was es denkt, wahrscheinlich sucht es nach dem Sinn des Lebens oder nach einem Mittel gegen den Coronovirus :-)

Ich denke, wir sollten den Optimierer wegen seiner Inoperabilität und Langsamkeit aufgeben

und die jüngsten Entscheidungen von MT, wie z.B. die Beschränkung auf physische Kerne, die beharrliche und dumme Verteilung eines Bündels von Aufgaben nur auf bestimmte Kerne und nicht auf jeden Kern - eine Aufgabe - zeigen einen völligen Mangel an Verständnis der Entwickler für Hochleistungsberechnungen

Warum zeigen Sie nicht einen vollständigen Screenshot der Agentenliste und nicht nur einen Teil davon?

Prüfprotokolle.

Ressourcen-Monitor.

Es sieht so aus, als hätten Sie nicht nur Ihren Computer überlastet (was die logischen und physischen Kerne angeht), sondern auch die Farm

 
Slava:

Warum zeigen Sie nicht einen vollständigen Screenshot der Agentenliste und nicht nur einen Teil davon?

Prüfprotokolle.

Ressourcenüberwachung.

Sieht so aus, als hätten Sie nicht nur Ihren Computer überlastet (was die logischen und physischen Kerne betrifft), sondern auch die Farm

kein Problem

Aber es ist dasselbe... verfügbar und im Leerlauf.

Ich sehe in den Protokollen nichts, worüber ich mich beschweren könnte.

Ich habe es nicht falsch verstanden ... Lesen Sie den obigen Beitrag

 

Übrigens, es gibt noch eine andere traurige Geschichte über Holzstämme

Oft wurden die Entwickler gebeten, sie abzuschalten oder ihre Größe zu begrenzen - und das Ergebnis ist gleich null.

Dies hat zur Folge, dass die Protokolle den gesamten Speicherplatz belegen .... mit allem, was dies mit sich bringt.

Ich lösche Protokolle episodisch ... Ich brauche keine Protokolldateien als Klasse, und wenn es Fehler gibt, sind sie sofort im Protokollfenster sichtbar

 

hier nur eine Kleinigkeit von gestern


 
bestätigte Speicherüberlastung .... Obwohl es seltsam ist, gibt es Swap immer noch, und ich denke, die Entwickler sollten dies berücksichtigen.
 
Boris Egorov:
bestätigte Informationen über Speicherüberlastung .... Obwohl es seltsam ist, dass niemand den Tausch annulliert hat, denke ich, dass die Entwickler dies berücksichtigen müssen.

Vielleicht haben Sie es gezeigt, ich habe nicht nachgeschaut - nur für den Fall, werde ich sagen, dass 1Gb Speicher pro Kern empfohlen wird (mit mehr Kernen können Sie 0,5Gb versuchen). Und ich empfehle, die Auslagerungsdatei auf die doppelte Speichergröße einzustellen, nicht auf die Hälfte, wie normalerweise empfohlen. Das habe ich in der Praxis bewiesen.

 

>1 GB Arbeitsspeicher pro Kern wird empfohlen

wird berücksichtigt

 

Es ist möglich, entweder durch die Verwendung eines benutzerdefinierten Task-Managers für Agenten (ich habe das getan), oder durch die Änderung des Algorithmus des regulären Optimierers (die Korrekturen sind nicht signifikant, nebenbei bemerkt), aber die Entwickler sind nicht bereit, auf meine Vorschläge zu hören, leider.

Ich habe einen benutzerdefinierten Aufgabenmanager für Agenten für meinen italienischen Kunden implementiert. Er nutzt gemietete, leistungsstarke Server mit mehreren hundert Agenten und litt ständig unter unvollständiger Auslastung der Server, weil die Agenten im Leerlauf waren. Jetzt sind alle Agenten vollständig ausgelastet, unabhängig davon, welcher Agent die Aufgabe zuerst erledigt (unabhängig von der Zeit für die Aufgabenerledigung bei jedem Agenten).

 
Andrey Dik:

Ich habe einen benutzerdefinierten Aufgabenmanager für Agenten für meinen italienischen Kunden implementiert. Er verwendet gemietete, leistungsstarke Server mit mehreren hundert Agenten und litt ständig unter einer Unterauslastung der Server, weil die Agenten im Leerlauf waren. jetzt sind alle Agenten voll ausgelastet, egal welcher Agent die Aufgabe zuerst erledigt (egal wie lange jeder Agent für die Aufgabe braucht).

Es ist nicht nett, zu prahlen)

Worauf stützt sich der Manager? Wie sind die Aufgaben verteilt?

 
Andrey Khatimlianskii:

Prahlerei ist nicht gut )

Worauf stützt sich der Manager? Wie werden die Aufgaben verteilt?

Prahlerei? - Nee, ich komme nicht annähernd an die Qualität und den Funktionsumfang von MT5 heran, wenn ich eine analytische Handelsplattform für mich selbst schreiben will, es ist einfacher, Entwickler mit Ideen zu stimulieren ...))

In einem optimierten EA wird ein zusätzlicher Eingabeparameter-Zähler hinzugefügt, der vom MT5-Optimierer im vollen Suchmodus durchsucht wird. Sie können bis zu 100 Mio. Schritte einstellen, damit der Optimierer nicht auf Genetik umschaltet. Der Manager hängt in Form eines EA am Chart im Terminal und schreibt Aufgaben in den Agentenordner, und der optimierte EA im Optimierer liest Aufgaben und schreibt Ergebnisse nach Abschluss des Durchlaufs. Im Modus der vollständigen Suche lädt der Optimierer MT5 Agenten sehr gleichmäßig, und die Aufgabe des Managers ist es, die Agenten mit Eingabeparametern zu füttern.

Das Problem war nur, ein ha in den Manager zu schreiben, das mit Individuen in der Population im Streaming-Modus arbeiten konnte, ohne die Notwendigkeit, die Population vollständig zu füllen, bevor eine neue Epoche gestartet wird. ich habe das gelöst. im Wesentlichen habe ich das Konzept der "Epoche" abgeschafft, die Individuen werden geboren und sterben von selbst. ich habe den Entwicklern den gleichen Mechanismus vorgeschlagen, und ein solcher Laifhack kann nicht nur mit ha. sondern auch mit anderen ADs, Ameise, Partikelschwarm und anderen, jeder verwendet werden.