Una vez más, sobre el multihilo - página 9

 
Maxim Romanov:
En el probador todo va en 1 hilo, pero en la vida real sí funciona.

y ¿los beneficios son patentes o están en torno al margen de error?

 
Igor Zakharov:

y ¿los beneficios son patentes o están en torno al margen de error?

Si los indicadores son duros, hay una ventaja. En un probador, sí, no tiene sentido.
 

Tenemos previsto añadir ThreadXXX y funciones de intercambio para ejecutar tareas individuales.

Estos no son hilos del programa principal, sino scripts separados (con manejadores OnStart) que se ejecutarán de forma independiente en un modo oculto similar a los servicios.

Podrá consultar y gestionar las listas de programas. Al iniciar un "hilo", su archivo ex5 se especificará desde un archivo en el disco o su propio recurso. De esta manera, es posible tener un único archivo ex5 que puede ejecutar fácilmente múltiples hilos de sus recursos e intercambiar datos con ellos.

Los hilos no funcionarán en el probador.
 
Renat Fatkhullin:

Tenemos previsto añadir ThreadXXX y funciones de intercambio para ejecutar tareas individuales.

Estos no son hilos del programa principal, sino scripts separados (con manejadores OnStart) que se ejecutarán de forma independiente en modo oculto similar a los servicios.

Será posible consultar y gestionar las listas de programas. Cuando se inicia un "hilo", su archivo ex5 se especificará desde un archivo en el disco o su propio recurso. Así, será posible tener un único archivo ex5, que desde sus recursos lance fácilmente varios hilos e intercambie datos con ellos.

Los hilos no se ejecutarán en el probador.

Es una buena noticia :) .

 
dd:
No he ofrecido ni un solo consejo bueno sobre los términos del problema... Buenas noches a ti también...

Lo era, pero él no es un lector, es un escritor.


dd:
querida, sunshine, ¿has leído el problema? está claramente descrito allí - en un bucle, un montón de otras tareas tienen que hacerse en un segundo, por ejemplo, para cerrar 500 000 órdenes o no cerrar - comprobar ... 0,1 lote, 50 000 de depósito, ¿eres bueno con las matemáticas? Y sí, es sintético. Pero tu consejo no vale nada.

Zajinka, ¡descubre tu código de mierda, y todo volará!

O, si la tarea estaba tan mal formulada y realmente necesitas acelerar una sola prueba, nada más que OpenCL servirá. Pero esto es una tontería, lo más probable es que el planteamiento fuera erróneo desde el principio. Pero no tiene sentido adivinar sin el código o una descripción más detallada.

Para agilizar las pruebas, puedes leer los posts de fxsaber, él ha tratado este problema ampliamente. Puede utilizar Virtual o cortar las garrapatas. Pero, de nuevo, lo más probable es que el problema esté en el planteamiento inicial del problema o en un código subóptimo.

 

para cerrar 500.000 pedidos por segundo y contar un pase durante 5 días... Sí.

Perdónenme los administradores, pero si quieren usar HFT, tienen que pagar ~20K por una licencia de software especial para HFT.

O más de 100.000 dólares: te lo redactarán bien.

 
Aleksey Mavrin:

para cerrar 500.000 pedidos por segundo y contar un pase durante 5 días... Sí.

Perdónenme los administradores, pero si quieren usar HFT, tienen que pagar ~20K por una licencia de software especial de HFT.

O 100+k$ - ellos lo escribirán por ti.

Sospecho que la gente que se aficiona a la HFT compra al menos una licencia de servidor de una vez.

El terminal es una entidad superflua cuando se habla de fracciones de segundos

 

No sé cómo se organizan los hilos, pero MT5 utiliza sólo un núcleo del procesador, si el núcleo del procesador está cargado al máximo, el terminal falla.

No hay que paralelizar hilos, sino paralizar tareas a otros procesadores (núcleos).

 
Sergey Chalyshev:

No sé cómo están configurados los hilos, pero MT5 sólo utiliza un núcleo de la CPU, si el núcleo de la CPU está cargado al máximo, el terminal falla.

No es así.

Sólo los indicadores de una herramienta funcionan en un hilo y se "colgará" si son pesados y un núcleo no puede manejarlos.


Sergey Chalyshev:

No hay que paralelizar los hilos sino paralizar las tareas a otros procesadores (núcleos).

Esto es lo que hace Windows.

 
Andrey Khatimlianskii:

Este no es el caso.

Sólo los indicadores trabajan en un hilo por herramienta, y tendrán un "glitch" si son pesados y un núcleo no puede soportarlo.


Esto es lo que hace Windows.

Windows no tiene nada que ver, sé que casi cualquier tarea puede ser paralela a todos los núcleos

Razón de la queja: