Tengo que construir un simulador con C#. Este simulador debería poder ejecutar un segundo subproceso con velocidad de CPU configurable y tamaño de RAM limitado, p. 144MHz y 50 MB.
Por supuesto que sé que un simulador nunca puede ser tan preciso como el hardware real. Pero trato de obtener un rendimiento casi similar.
Por el momento estoy pensando en crear un hilo que detendré/dormir de vez en cuando. Dependiendo de la velocidad de CPU deseada, el simulador debe ajustar el tiempo de inactividad de este hilo y, por lo tanto, simular una frecuencia de CPU diferente. Para medir la velocidad alcanzada, pensé en usar PerformanceCounters. Pero con este enfoque tengo el problema de que no sé cómo limitar el tamaño de la RAM que podría usar el subproceso.
¿Tiene alguna idea de cómo realizar un simulador de este tipo?
Cómo simular diferentes frecuencias de CPU y limitar RAM
Gracias de antemano!
+1 como me gustaría saber la respuesta. Pero me temo que estás en aguas muy profundas –
Mira asignadores de arena para limitar la memoria a un total específico. – WhirlWind
tenga en cuenta que la velocidad de reloj no es realmente una buena medida de rendimiento. En un núcleo de mi Core2Duo desclasificado a 1GHz obtengo un rendimiento significativamente mejor que en un Pentium de 2.5 GHz. Si estás tratando de descubrir cómo funcionaría tu software en un dispositivo específico, deberías tratar de obtener un emulador del real. chip. – back2dos