Jump to content

FSX y el HyperThreading. ¿Posible solución?


Dumpcore

Recommended Posts

FSX y el HyperThreading (en adelante HT) siempre se han llevado mal. Primero porque FSX no soporta esta característica, y segundo porque si no tocamos nada por defecto, FSX trata los hilos del HT como procesadores nativos, enviando instrucciones a los mismos que nunca se ejecutan (hilos muertos). El resultado final suele ser un rendimiento inferior en lo referente a tasa de frames, stutters y blurries.

 

Tradicionalmente la solución a este problema ha pasado por dos opciones:

 

1) Desactivar el HT en las BIOS del ordenador. Una solución válida pero ineficiente, porque estamos eliminando una importante característica que beneficia de forma notable al rendimiento del propio SO, otras aplicaciones y juegos (y como no, simuladores).

 

2) Jugar con el parámetro "AffinityMask" dentro del fichero fsx.cfg. Es la opción más empleada, y la recomendada por el propio "Bojote".

 

Tratándose de la segunda opción, los valores que hasta ahora han funcionado para la mayoría de usuarios han sido (tratándose de procesadores de cuatro núcleos con HT):

 

14: Sólo se utilizan los tres últimos núcleos, dejando el primero para tareas internas de FSX. Es la opción más utilizada, y quizá la que mejor rendimiento ofrece.

15: Se utilizan los cuatro núcleos disponibles. En la práctica ocasiona más problemas que beneficios, optando mejor por no poner nada o por la primera opción (14).

 

Hasta ahora todo bien. El problema es que utilizar sólo tres núcleos (un valor de 14) tiene un serio inconveniente: los blurries. FSX utiliza todos los cores disponibles para cargar las texturas, y en ese sentido desde luego es mejor tener disponibles cuatro núcleos que tres, aunque perdamos un poco de rendimiento. De nada sirve tener una alta tasa de frames si los escenarios siempre se ven borrosos. Tiene más sentido perder unos frames a cambio de verlo casi todo nítido.

 

Entonces... ¿cómo conseguimos utilizar los cuatro cores en un procesador con el HT activado sin perder demasiado rendimiento? Creo que la solución es bastante sencilla, pero como no lo he visto posteado en ningún sitio lo pongo a continuación:

 

Es tan fácil como cargar el FSX con una afinidad específica. Ojo, que no vale cargar el FSX y despues cambiar la afinidad a través del administrador de tareas (esto no provoca sino un comportamiento anormal, con bajo rendimiento y stutters). Sólo vale iniciar el simulador con la afinidad previamente configurada.

 

¿Cómo conseguimos esto último? En Windows Vista/7 las aplicaciones se puedan lanzar a través de la línea de comandos con una afinidad preestablecida, pero hay soluciones más fáciles. Podemos descargar gratuitamente la aplicación "StartAffinity" del siguiente enlace:

 

http://www.adsciengi.../StartAffinity/

 

A partir de ahora sólo tenemos que poner en la línea de comandos:

 

StartAffinity FSX.exe 0 1 2 3

 

Con ese comando estamos lanzando FSX para que sólo utilice los cuatro cores disponibles, pasando por alto el HT. Funciona perfectamente, y el comportamiento de FSX es normal, como si el HT estuviera desactivado en la BIOS. Las ventajas son evidentes: tenemos un core adicional para cargar texturas, y la pérdida de rendimiento es reducida.

 

Si utilizamos esta opción deberemos desactivar la línea "AffinityMask" en el fichero fsx.cfg, para que FSX utilice los cuatro cores disponibles sin un comportamiento anómalo.

 

¿Qué ocurre si utilizamos algún otro lanzador, como un limitador externo de frames? Pues tampoco hay problema. Lo único que hay que hacer es poner todos los comandos en un fichero BAT, y lanzar el script con el comando StartAffinity:

 

StartAffinity Fichero.bat 0 1 2 3

 

No olvidéis que todo lo que se ejecute en ese script sólo utilizará los cores que hayáis especificado.

 

Todavía estoy de pruebas, pero por ahora creo que tengo menos blurries, y el cambio ha sido positivo. Os invito a que probéis esta nueva configuración y comentéis que tal os va, más que nada para contrastar mis resultados con los vuestros.

 

 

Saludines.

Link to comment
Share on other sites

Hola,

 

Pues he probado a activar el HT en la BIOS, he lanzado el FSX (desactivando el AffinittyMask del fsx.cfg) con ayuda de StartAffinity y cuando le digo de volar, tras cargar todo el vuelo, justo antes de que aparezca la VC, lo que obtengo es un reset total del PC. No un CTD o un pantallazo azul. Es una caída del sistema como si hubiese desconectado la alimentación. Tengo un i7-975 a 4.0 Ghz con W7 64 y 8 Gbytes de RAM.

 

La verdad es que a mí el FSX me va de lujo, pero siempre se agradece un intento de mejora, aunque no haya sido esta la ocasión.

 

Salu2

M.

Link to comment
Share on other sites

Hola , me suena a un problema de overclock , es cierto que con el HT activado en Bios siempre para llegar al ser estable el procesador hay que aplicar mayor voltaje que sin el HT activado,

En mi caso I7 920@4000 a 1,32v sin HT perfectamente estable

Con el HT activado no consigo establilidad ni a 1,4v , demasiado esfuerzo del procesador para no ganar beneficio .

Ademas el rendimiento con HT activado en juegos es mínimo lo que ganas y a veces la tasa de frames disminuye. para mi no merece la pena.

Hay muchos foros que hablan del tema .

He probado el startaffinity que recomiendas, pero no he tenido tiempo suficiente para valorarlo , usado además con el limitador externo, muchas gracias por el consejo. ya te comentare ,

He dejado el AffinityMask en 15

Un saludo

Angel

Edited by angelvilla
Link to comment
Share on other sites

Hola,

 

Pues he probado a activar el HT en la BIOS, he lanzado el FSX (desactivando el AffinittyMask del fsx.cfg) con ayuda de StartAffinity y cuando le digo de volar, tras cargar todo el vuelo, justo antes de que aparezca la VC, lo que obtengo es un reset total del PC. No un CTD o un pantallazo azul. Es una caída del sistema como si hubiese desconectado la alimentación. Tengo un i7-975 a 4.0 Ghz con W7 64 y 8 Gbytes de RAM.

 

La verdad es que a mí el FSX me va de lujo, pero siempre se agradece un intento de mejora, aunque no haya sido esta la ocasión.

 

Salu2

M.

 

A mí también me parece muy raro ese cuelgue. Como ya ha dicho algelvilla, me da que tienes un problema de overclock.

Link to comment
Share on other sites

Hola , me suena a un problema de overclock , es cierto que con el HT activado en Bios siempre para llegar al ser estable el procesador hay que aplicar mayor voltaje que sin el HT activado,

En mi caso I7 920@4000 a 1,32v sin HT perfectamente estable

Con el HT activado no consigo establilidad ni a 1,4v , demasiado esfuerzo del procesador para no ganar beneficio .

Ademas el rendimiento con HT activado en juegos es mínimo lo que ganas y a veces la tasa de frames disminuye. para mi no merece la pena.

Hay muchos foros que hablan del tema .

He probado el startaffinity que recomiendas, pero no he tenido tiempo suficiente para valorarlo , usado además con el limitador externo, muchas gracias por el consejo. ya te comentare ,

He dejado el AffinityMask en 15

Un saludo

Angel

 

Evidentemente esta solución es para los que quieren mantener el HT activado. En caso contrario no te aportaría nada nuevo.

 

Te aconsejo que elimines la línea del AffinityMask para hacer la prueba, porque creo que te va a ir mejor que si lo dejas en 15.

 

Por lo demás tampoco hay que esperar mucho con este cambio. Lo principal a valorar es si mejora el tema de los blurries, porque el rendmiento no va a mejorar para nada, si acaso incluso empeorar un poco.

 

Si no aprecias ninguna mejoría evidente, vuelves a la configuración anterir y listo.

 

Un saludo.

Link to comment
Share on other sites

Buenas, probadoel StartAffinity el cambio es considerable, sobre todo el efecto borroso , muchas gracias por el descubrimiento por que estaba cansado de ver escenarios a lo lejos borrosos , hasta mareaba, el rendimiento en general parecido al que tenia ,

probé sin poner el AffinityMask pero me iba con pequeños tirones, con el puesto a 15 todo perfecto ,

Gracias por el invento, habrá que seguir investigando mejoras.

Un saludo

Angel

Link to comment
Share on other sites

Buenas, probadoel StartAffinity el cambio es considerable, sobre todo el efecto borroso , muchas gracias por el descubrimiento por que estaba cansado de ver escenarios a lo lejos borrosos , hasta mareaba, el rendimiento en general parecido al que tenia ,

probé sin poner el AffinityMask pero me iba con pequeños tirones, con el puesto a 15 todo perfecto ,

Gracias por el invento, habrá que seguir investigando mejoras.

Un saludo

Angel

 

Vaya, pues menos mal, ya empezaba a pensar que esto había sido una mala idea.... :heat:

 

Lo del AffinityMask es muy curioso. Suponiendo que estamos usando el FSX SP2, a unos les va bien poniendo 15 y a otros dejándolo en blanco.

Link to comment
Share on other sites

  • 2 weeks later...

Después de varias pruebas adicionales he llegado a la conclusión de que usar el comando StartAffinity parece que mejora el uso de los cores por parte de FSX.

 

He tomado estas dos instantáneas, la primera sin cambiar la afinidad, y la segunda usando el StartAffinity. La configuración de la opción AffinityMask es de 14 (sólo tres cores, dejando el primero para tareas internas de FSX):

 

 

Sin tocar la afinidad:

 

noaffinity.jpg

 

 

El uso de los cores es el habitual. El primero se utiliza muy poco, para tareas de sincronización interna de FSX. Los tres restantes se utilizan para mover el simulador. Supuestamente los hilos del HT no deberían usarse, pero muestran cierta actividad (no sé si esta actividad procede de FSX o del propio SO).

 

 

Ahora usamos el comando "StartAffinity", y vemos como FSX se carga con la afinidad modificada desde el principio:

 

 

afinidad.jpg

 

 

 

Sin embargo, lo que destaca especialmente es el uso de los cuatro cores disponibles. Podemos ver que cuando la carga es alta se utilizan los cuatro núcleos al 100%, aún usando un valor de 14 en la opción AffinityMask del fsx.cfg:

 

 

saffinity.jpg

 

 

Los hilos del HT aún se utilizan ligeramente (sigo sin saber de dónde procede esa actividad).

 

 

A raíz de estos gráficos queda claro que el comando StartAffinity modifica claramente la forma en que FSX utiliza el procesador. No sabría decir si para mejor o para peor, pero yo al menos he notado que:

 

1) El rendimiento no disminuye. Es exactamente igual, y depende de la configuración que usemos en FSX.

2) Cuando se acumulan muchas texturas (blurries) los cuatro cores se utilizan al 100%, mientras que antes sólo se utilizaban tres. Aún así la mejora con respecto a los blurries es discreta y difícil de predecir.

 

Con todo ello, creo que el comando StartAffinity permite compatibilizar claramente el uso de FSX con el HT, sin pérdidas de rendimiento ni configuraciones adicionales. En mi opinión sólo aporta ventajas y ningún perjuicio.

 

Si alguien quiere hacer la prueba, sería muy útil ver los resultados de otros equipos.

 

 

Saludines.

Link to comment
Share on other sites

Después de varias pruebas adicionales he llegado a la conclusión de que usar el comando StartAffinity parece que mejora el uso de los cores por parte de FSX.

 

He tomado estas dos instantáneas, la primera sin cambiar la afinidad, y la segunda usando el StartAffinity. La configuración de la opción AffinityMask es de 14 (sólo tres cores, dejando el primero para tareas internas de FSX):

 

 

Sin tocar la afinidad:

 

noaffinity.jpg

 

 

El uso de los cores es el habitual. El primero se utiliza muy poco, para tareas de sincronización interna de FSX. Los tres restantes se utilizan para mover el simulador. Supuestamente los hilos del HT no deberían usarse, pero muestran cierta actividad (no sé si esta actividad procede de FSX o del propio SO).

 

 

Ahora usamos el comando "StartAffinity", y vemos como FSX se carga con la afinidad modificada desde el principio:

 

 

afinidad.jpg

 

 

 

Sin embargo, lo que destaca especialmente es el uso de los cuatro cores disponibles. Podemos ver que cuando la carga es alta se utilizan los cuatro núcleos al 100%, aún usando un valor de 14 en la opción AffinityMask del fsx.cfg:

 

 

saffinity.jpg

 

 

Los hilos del HT aún se utilizan ligeramente (sigo sin saber de dónde procede esa actividad).

 

 

A raíz de estos gráficos queda claro que el comando StartAffinity modifica claramente la forma en que FSX utiliza el procesador. No sabría decir si para mejor o para peor, pero yo al menos he notado que:

 

1) El rendimiento no disminuye. Es exactamente igual, y depende de la configuración que usemos en FSX.

2) Cuando se acumulan muchas texturas (blurries) los cuatro cores se utilizan al 100%, mientras que antes sólo se utilizaban tres. Aún así la mejora con respecto a los blurries es discreta y difícil de predecir.

 

Con todo ello, creo que el comando StartAffinity permite compatibilizar claramente el uso de FSX con el HT, sin pérdidas de rendimiento ni configuraciones adicionales. En mi opinión sólo aporta ventajas y ningún perjuicio.

 

Si alguien quiere hacer la prueba, sería muy útil ver los resultados de otros equipos.

 

 

Saludines.

Yo con el staraffinity me he quedado encantado , aíi que te agradezco mucho el descubrimiento y eso que trabajo a grandes resoluciones ,3840x1200 , algo borroso lo veo por los extremos pero eso no es culpa del programa , sino del propio escenario fotorrealista y el fsx . Gracias de nuevo

Te animo a que sigas investigando en nuevas mejoras.

Un saludo

Angel

Link to comment
Share on other sites

Gracias Angel,

 

Por ahora no se me ocurre nada más. Lo único que me gustaría ver el efecto del comando StartAffinity con un procesador de 6 u 8 núcleos, a ver si por lo menos en ese aspecto FSX carga mucho más rápido las texturas. Es que sabiendo que el año que viene Intel lanzará al mercado los procesadores Ivy Bridge de 8 núcleos... se me hace la boca agua sólo pensar cómo sería FSX sin un solo blurrie, jeje

 

Un saludo.

Link to comment
Share on other sites

La verdad es que me iba fatal con mi I7 2600k a 4.4, placa asus p8z68 deluxe, 16 gb de gskill jaw de 1600, grafica nvidia gtx 580 so, etc............... Ahora modifique el cfg con la web de bogote, y el cfg de Angel, y alguna cosia mia, ademas puse el limited y el startaffinity y milagro, va a 30 frames bastante estable incluso en barajas y barcelona de aerosoft, y a la espera de un disco duro sdd y un buen ventilador de procesador para un mejor oc.

Link to comment
Share on other sites

La verdad es que me iba fatal con mi I7 2600k a 4.4, placa asus p8z68 deluxe, 16 gb de gskill jaw de 1600, grafica nvidia gtx 580 so, etc............... Ahora modifique el cfg con la web de bogote, y el cfg de Angel, y alguna cosia mia, ademas puse el limited y el startaffinity y milagro, va a 30 frames bastante estable incluso en barajas y barcelona de aerosoft, y a la espera de un disco duro sdd y un buen ventilador de procesador para un mejor oc.

 

Pues creo que la mejora la has conseguido tocando la configuración de FSX, y no precisamente gracias al StartAffinity. De todos modos estoy seguro que algo influirá en que te vaya fino.

 

Gracias por la info. Queda confirmado que el comando StartAffinity parece que sólo aporta efectos positivos a todos los que lo han probado.

 

Saludines.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Some pretty cookies are used in this website