MT5 y la velocidad en acción - página 15

 
Correcto, lo tengo, gracias, era una pregunta tonta. Algo se me quedó en la cabeza.
 
fxsaber:
b2579.

¿Cuál es la carga de la CPU al ejecutar esta prueba?

 
Anton:

¿Cuál es la carga de la CPU al ejecutar esta prueba?

0-2%, teniendo en cuenta otras tareas que siguen en marcha. ¿No es reproducible?

 
fxsaber:

0-2%, teniendo en cuenta otras tareas que siguen en marcha. ¿No juegas?

Cerró todas las aplicaciones, dejando sólo Terminal con tres cartas. Vio que se producían picos.

Fue hasta el 20%.

 
fxsaber:

Cerró todas las aplicaciones, dejando sólo la Terminal con tres gráficos. Vi que había picos.

Llegó a ser del 20%.

Tengo la sensación de que mis lags se deben a la insuficiente potencia de la CPU (i5-4670). Pedí un Xeon de 12 núcleos (e5-2678v3) a los chinos, en un par de semanas reconstruiré mi servidor y compararé la latencia media e informaré de mis resultados.

 
Dmi3:

Tengo la sensación de que mis lags se deben a la insuficiente potencia de la CPU (i5-4670). Pedí un Xeon de 12 núcleos (e5-2678v3) a los chinos, llegará en un par de semanas, reconstruiré el servidor, podré comparar los retrasos medios de ejecución, escribiré sobre los resultados.

La latencia se debe a la excesiva carga de la CPU por parte de MT5. No estoy seguro de si los núcleos múltiples me ayudarán en este caso. Será interesante ver los resultados.

 
fxsaber:

La latencia se debe a una carga excesiva de la CPU por parte de la MT5. No estoy seguro de que los núcleos múltiples ayuden en este caso. Será interesante ver los resultados.

Y no estoy seguro, pero es lo más fácil que puedo hacer. Y, en principio, ya era hora de una actualización.

 
Dmi3:

Tengo la sensación de que mis lags se deben a la insuficiente potencia de la CPU (i5-4670). Pedí 12 core Xeon (e5-2678v3) de los chinos, en un par de semanas voy a reconstruir el servidor, comparar la latencia media de ejecución, voy a escribir sobre los resultados.

Ambos son Haswell, Xeon tiene una frecuencia de funcionamiento mucho más baja, habrá una degradación del rendimiento en tiempo de ejecución y en pruebas individuales, sólo en la optimización multihilo será una ventaja. El i3 de los últimos modelos debería ser mucho más rápido de ejecutar

pregunte a los desarrolladores sobre el efecto del nivel de caché en la velocidad y, en general, la velocidad de Zen2 y los últimos Intel


añadir

Ryzen 3700x que tengo, puedes hacer pruebas con Intel

por ejemplo con este script MQL5\Scripts\UnitTests\Stat\TestBenchmark.mq5

hacer un bucle varias veces con un temporizador

 

Para reproducir los frenos, es necesario ejecutar el script en múltiples gráficos de un carácter - hacer que OnTick sea llamado al mismo tiempo. Entonces, las alertas se activarán en cada tic.

El gráfico de carga de la CPU muestra que terminal64.exe carga hasta el 30% de los ocho núcleos lógicos. Son sólo cuatro gráficos de EURUSD con el script en funcionamiento. Puedes ver claramente cuánto se carga cada gráfico a la vez.

¿Adónde van a parar tantos recursos?

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.
 

Fijar una prioridad máxima no ayuda, por supuesto.


Las pruebas se hicieron en b2582.

Sería interesante comparar el mismo script con otras plataformas de trading.
Razón de la queja: