Pregunta para los desarrolladores: uso de todos los núcleos de cálculo durante la optimización - página 7

 
Boris Egorov:

segundo día no cuenta nada, todos los núcleos en el número de 12 locales y unos 30 núcleos de red están inactivos, no lo toco a propósito ... No sé en qué está pensando, probablemente en buscar el sentido de la vida o una cura para el coronovirus :-)

Creo que deberíamos abandonar el optimizador por su inoperancia y lentitud

y las recientes decisiones tomadas por MT como limitar sólo los núcleos físicos, distribuir persistente y estúpidamente un montón de tareas sólo a ciertos núcleos y no a cada núcleo - una tarea - indica una total falta de comprensión por parte de los desarrolladores de los cálculos de alto rendimiento

¿Por qué no muestra una captura de pantalla completa de la lista de agentes en lugar de una parte de ella?

Registros del probador.

Monitor de recursos.

Parece que has sobrecargado no sólo tu ordenador (en el tema de los núcleos lógicos y físicos), sino también la granja

 
Slava:

¿Por qué no muestra una captura de pantalla completa de la lista de agentes en lugar de una parte de ella?

Registros del probador.

Monitor de recursos.

Parece que has sobrecargado no sólo tu ordenador (hablando de núcleos lógicos y físicos) sino también la granja

no hay problema

Sólo que es lo mismo... disponibles y en reposo.

No veo nada en los registros para quejarse

No me equivoqué... leer el post anterior

 

Por cierto, hay una triste historia aparte sobre los troncos

Muchas veces se pidió a los desarrolladores que las desactivaran o limitaran su tamaño, y el resultado es cero.

como resultado, los registros se comen todo el espacio del disco .... con todo lo que ello implica.

Borro los registros de forma episódica... No necesito archivos de registro como una clase y si hay algún error, son inmediatamente visibles en la ventana de registro

 

aquí hay algo de ayer


 
sobrecarga de memoria confirmada .... aunque es extraño, el intercambio sigue existiendo, de nuevo creo que los desarrolladores deben tenerlo en cuenta
 
Boris Egorov:
información confirmada sobre la sobrecarga de memoria .... Aunque es extraño, nadie canceló el intercambio, de nuevo, creo que los desarrolladores deben tenerlo en cuenta

Tal vez lo hayas mostrado, no he mirado - por si acaso, diré que se recomienda 1Gb de memoria por núcleo (con más núcleos puedes probar con 0,5Gb). Y recomiendo el archivo de página al doble de tamaño de memoria, no a la mitad, como se suele recomendar. Lo he comprobado en la práctica.

 

>Se recomienda 1 GB de memoria por núcleo

tendrá en cuenta

 

Es posible, ya sea utilizando un gestor de tareas personalizado para los agentes (yo lo hice), o cambiando el algoritmo del optimizador regular (las correcciones no son significativas, por cierto), pero los desarrolladores no están dispuestos a escuchar mis sugerencias, por desgracia.

He implementado un gestor de tareas personalizado para los agentes para mi cliente italiano, que utiliza servidores potentes alquilados con varios cientos de agentes y sufría constantemente de carga incompleta de los servidores, porque los agentes estaban inactivos. ahora todos los agentes están completamente cargados independientemente de qué agente complete la tarea primero (independientemente del tiempo de finalización de la tarea en cada agente).

 
Andrey Dik:

He implementado un gestor de tareas personalizado para agentes para mi cliente italiano, que utiliza servidores potentes alquilados con varios cientos de agentes y sufría constantemente de infrautilización de los servidores, porque los agentes estaban inactivos. ahora todos los agentes están completamente cargados sin importar qué agente completa la tarea primero (independientemente del tiempo de finalización de la tarea de cada agente individual).

No es bueno presumir )

¿En qué se basa el gestor? ¿Cómo se distribuyen las tareas?

 
Andrey Khatimlianskii:

Presumir no es bueno )

¿En qué se basa el gestor? ¿Cómo se asignan las tareas?

¿presumir? - No, no puedo acercarme a la calidad y funcionalidad de MT5 si quiero escribir una plataforma de trading analítica para mí, es más fácil estimular a los desarrolladores con ideas...)

En un EA optimizado, se añade un contador adicional de parámetros de entrada, que es buscado por el optimizador de MT5 en modo de búsqueda completa, se puede establecer hasta 100 millones de pasos, por lo que el optimizador no cambia a la genética. El gestor se cuelga en forma de EA en el gráfico del terminal y escribe las tareas en la carpeta de agentes, y el EA optimizado en el optimizador lee las tareas y escribe los resultados al finalizar la pasada. En el modo de búsqueda completa el optimizador MT5 carga los agentes de forma muy uniforme, y la tarea del gestor es alimentar los agentes con parámetros de entrada.

El problema era sólo escribir una ha en el gestor que pudiera trabajar con los individuos de la población en modo streaming sin necesidad de llenar la población completamente antes de empezar una nueva época. lo resolví. en esencia suprimí el concepto de "época", los individuos nacen y mueren por sí mismos. sugerí el mismo mecanismo a los desarrolladores, y tal laifhack puede ser usado no sólo con ha. sino también con otros aDs, hormiga, enjambre de partículas y otros, cualquiera.