MT5 et la vitesse en action - page 15

 
C'est bon, je l'ai, merci, c'était une question boiteuse. Quelque chose est resté dans ma tête.
 
fxsaber:
b2579.

Quelle est la charge du processeur lors de l'exécution de ce test ?

 
Anton:

Quelle est la charge du processeur lors de l'exécution de ce test ?

0-2%, en tenant compte des autres tâches encore en cours. Non reproductible ?

 
fxsaber:

0-2%, en tenant compte des autres tâches encore en cours. Vous ne jouez pas ?

Fermé toutes les applications, laissant seulement le Terminal avec trois cartes. J'ai vu que des pics se produisaient.

C'était jusqu'à 20%.

 
fxsaber:

Fermé toutes les applications, ne laissant que le terminal avec trois cartes. J'ai vu qu'il y avait des pics.

C'était jusqu'à 20%.

J'ai le sentiment que mes décalages sont dus à une puissance insuffisante du processeur (i5-4670). J'ai commandé des Xeon 12 cœurs (e5-2678v3) auprès de Chinois. Dans quelques semaines, je vais reconstruire mon serveur et comparer la latence moyenne et rapporter mes résultats.

 
Dmi3:

J'ai le sentiment que mes décalages sont dus à une puissance insuffisante du processeur (i5-4670). J'ai commandé un Xeon 12 cœurs (e5-2678v3) aux Chinois, il arrivera dans quelques semaines, je reconstruirai le serveur, je pourrai comparer les délais d'exécution moyens et j'écrirai sur les résultats.

La latence est due à une charge excessive du CPU de MT5. Je ne suis pas sûr que le multi-core m'aidera ici. Il sera intéressant de voir les résultats.

 
fxsaber:

La latence est due à une charge excessive du CPU du MT5. Je ne suis pas sûr que le multi-cœur soit utile ici. Il sera intéressant de voir les résultats.

Et je ne suis pas sûr, mais c'est la chose la plus facile que je puisse faire. Et en principe, il était temps de procéder à une mise à niveau.

 
Dmi3:

J'ai le sentiment que mes décalages sont dus à une puissance insuffisante du processeur (i5-4670). J'ai commandé des Xeon 12 cœurs (e5-2678v3) en Chine. Dans quelques semaines, je reconstruirai le serveur, je comparerai la latence moyenne d'exécution et j'écrirai les résultats.

Ils sont tous deux Haswell, Xeon a une fréquence de fonctionnement beaucoup plus faible, il y aura une dégradation des performances dans les tests de performance et simple, seulement dans l'optimisation multi-fil sera un avantage. Le i3 des derniers modèles devrait être beaucoup plus rapide à faire fonctionner

Demandez aux développeurs l'effet du niveau de cache sur la vitesse et, en général, la vitesse du Zen2 et des derniers intel.


ajouter

Ryzen 3700x que j'ai, vous pouvez faire des tests avec Intel

par exemple avec ce script MQL5\Scripts\UnitTests\Stat\TestStatBenchmark.mq5

le faire tourner en boucle plusieurs fois avec une minuterie

 

Pour reproduire les freins, vous devez exécuter le script sur plusieurs caractères du caractère UN - faire en sorte que OnTick soit appelé en même temps. Ensuite, les alertes seront envoyées à chaque tick.

Le graphique de la charge CPU montre que terminal64.exe charge jusqu'à 30 % des huit cœurs logiques. Il s'agit seulement de quatre graphiques EURUSD avec le script en cours d'exécution. Vous pouvez clairement voir combien chaque graphique est chargé à la fois.

Où vont tant de ressources ?

2020.08.27 12:57:19.299 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 36 ms.
2020.08.27 12:57:19.300 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 33 ms.
2020.08.27 12:57:19.314 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 5 ms.
2020.08.27 12:57:20.073 Alert: Time[Test6.mq5 22: HistorySelect(Tick.time,INT_MAX)] = 1 ms.
2020.08.27 12:57:20.080 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 1 ms.
2020.08.27 12:57:24.742 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 4 ms.
2020.08.27 12:57:24.748 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 6 ms.
2020.08.27 12:57:24.749 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 2 ms.
2020.08.27 12:57:27.836 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 9 ms.
2020.08.27 12:57:33.275 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 6 ms.
2020.08.27 12:57:33.292 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 2 ms.
2020.08.27 12:57:33.292 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 16 ms.
2020.08.27 12:57:33.306 Alert: Time[Test6.mq5 17: CopyTicks(Symb,Ticks,COPY_TICKS_ALL,0,1)] = 3 ms.
 

La définition d'une priorité maximale n'aide pas, bien sûr.


Les tests ont été faits sur B2582.

Il serait intéressant de comparer le même script avec d'autres plateformes de trading.