Stutters en juegos con Windows Creator Update

-

Buenas tardes señores y señoritas amantes de lo misterioso;

Uno de tantos como yo que compramos Battlefield 1 de salida, nos dimos cuenta en la BETA que el juego era una maravilla, no solo como portento grafico si no como juego optimizado. Muchos de los que nos incluimos pasamos por caja al ver que con una 970 GTX todo en ultra en un mapa de 64 players el juego oscilaba entre 60-70 fps con una fluidez maravillosa.

Una vez pasamos por caja, todo iba mejor aun si cabe, el juego aun estaba mejor optimizado. Pero ocurrió un precedente que cambio las leyes de este maravilloso juego y tanto Microsoft y DICE a dia de hoy están peleadas de quien es la culpa de que el juego haya empeorado tanto en cuento a estabilidad.

Podemos ver un ejemplo aquí:

Esto ha dado mucho que hablar en el foro oficial de BF1 como en Reedit la gente ha estado taqueando el juego de mil formas y sistema operativo para que con las nuevas actualizaciones volver a ese amado momento. De momento la soluciones que la gente propone es no instalar creator update ya que eso no da problemas de stuttering, pero claro, te quedas con un sistema operativo inseguro y probablemente con la falta de optimizaciones en otros juegos que no ocurre eso.

La cosa esta en que todo esto también se esta trasladando a otros juegos de moda en los que ocurre cosas similares, en este caso hablamos de PUBG.

El caso esta en que hace unos meses, un caballero posteo lo siguiente:

I have tested this thoroughly and it is 100% the cause of my stutters on the creators updates (especially noticeable in games like BF1).
Once the free memory is exhausted then performance takes a big hit, games with heavy caching like BF1 suffer horribly. The only way I could fix previously was restarting the computer (thus clearing the memory), which explains why it was only happening after a while and not on a fresh boot.

I have a permanent solution that keeps memory free at all times. I don't know what MS changed, but this didn't happen on 1607.
This totally fixes my system stutters on the creators.

1º Download EmptyStandbyList and put it somewhere where you won't move it https://wj32.org/wp/software/empty-standby-list/

2º Right click > Properties and select Run as Admin under compatibility.

3º Open Task Scheduler > Create Task on the far right

4ºGeneral Tab (give it a name). Under security options > Change user or group > Advanced > Find Now > go down and choose SYSTEM (important to make it run silently in the background). Tick 'Run with highest privileges' and 'Hidden' at the bottom. Pictures here https://stackoverflow.com/questions/6568736/how-do-i-set-a-windows-scheduled-task-to-run-in-the-background

5ºTriggers tab > New > On a schedule > One Time. Tick repeat task every 5 minutes (possibly excessive but it causes no issues). Also choose 'for the duration of: indefinitely'

6ºActions tab > Start A program > Point to the EmptyStandbyList.exe file.

Done! Standby memory is automatically cleared every 5mins.

I hope MS will come up with a fix, but if you have a similar issue/performance degradation over time - try this. Many on the nvidia forums have said it also fixes their issues.

Fuente :https://www.reddit.com/r/Windows10/comments/7a0763/standby_memory_issue_causing_stutters_on_creators/

La cuestión, es que no lo he probado mas que nada porque antes me gustaría saber de alguien que entienda de sistemas, que es lo que supuestamente esta haciendo esta tarea cada 5 minutos al ejecutar ese archivo. Mas bien una explicación de si la teoría es correcta, o es puro placebo.

2
B

Puede ser problema driver Nvidia!! mayor que versión 388 causa problemas en juegos; :thinking:

1 respuesta
-

#2 Se han utilizado mil tipos de drivers. Lo único que hace que el juego vaya bien, es no instalar Windows Creator Update.

De ahí es donde se centro la investigación.

pantocreitor

A mi lo del stuttering me pasa entre 30s y un minuto al entrar en un mapa, al pasar ese tiempo el stuttering me desparece.
Además me pasa exactamente igual con la 970 que tenía antes y con las 1080 que tengo ahora (en 2 PCs diferentes).

1 respuesta
-

#4 ¿Qué microprocesador calzas?

1 respuesta
pantocreitor

#5 En el sobremesa un 4790k que ahora mismo lo tengo a 4,8Ghz y en el portátil un 7820HK de stock

Concoroncon

Lo mejor, usar la build de w10 1607 y desactivar windows update. Fuera stuttering y todo como la seda.
No os compliqueis la vida.

1 respuesta
gfcn

Yo noto en el BF1 que al entrar en los mapas me va como el ojete y luego ya va bien.

-

#7 ¿Sabes donde localizar esa build? Porque yo no la encuentro por ninguna parte.

1 respuesta
Concoroncon

Yo la tengo guardada en el disco duro. donde la puedo subir?

gfcn

#9 http://windowsiso.net/windows-10-iso/windows-10-anniversary-update-1607-download-build-14393-0/windows-10-anniversary-update-1607-iso-download-standard/ No se si es buena la web pero vamos.... Google y tal..

s4rge

A mí hay veces que se me queda en 40-50 fps y no sube, tengo un i5 [email protected] una 1070 y 16 gb de ram

garlor

sin haberlo probado, solo por el nombre del fichero emptystandbylist diria que vacia la memoria en standby

aqui una explicacion tan buena como cualquier otra

https://serverfault.com/questions/565539/huge-amount-of-standby-memory-in-resource-monitor

    Standby

The Standby list, which is shown in blue, contains pages that have been removed from process working sets but are still linked to their respective working sets. As such, Standby list is essentially a cache. However, memory pages in the Standby list are prioritized in a range of 0-7, with 7 being the highest. Essentially, a page related to a high-priority process will receive a high-priority level in the Standby list.

For example, processes that are Shareable will be a high priority and pages associated with these Shareable processes will have the highest priority in the Standby list.

Now, if a process needs a page that is associated with the process and that page is now in the Standby list, the memory manager immediately returns the page to that process' working set. However, all pages on the Standby list are available for memory allocation requests from any process. When a process requests additional memory and there is not enough memory in the Free list, the memory manager checks the page's priority and will take a page with a low priority from the Standby list, initialize it, and allocate it to that process.

teniendo en cuenta lo que dice aqui es como si los windows superiores al 1607 no hicieran bien lo de descargar de ram los bloques de memoria en standby
decir que en la universidad donde trabajo usamos la 1607 y despues de nuestras pruebas vamos a sudar de las versiones posteriores y para el curso 2018-2019 vamos a seguir con la 1607

2 respuestas
-

#13 Ahora voy hacer una prueba en BF1 con Windows 1607, en PUBG he notado mejoría y en Far Cry 5 donde mas.

Pero de momento lo que veo con estar versión me gusta mas que la versión actualizada.

B

@AikonCWD

AikonCWD

Vaya, puedo probarlo hoy, tengo el FarCry5 para hacer los tests. Aunque yo con mi GTX970 no he encontrado problemas visibles.

Miraré a ver si es cierto o placebo; y si veo que es útil lo añadiré como opción al script de win10.

2 respuestas
-

#16 ¿Tienes Battlefield 1 Aikon u otro juego dependiente de CPU? ¿PUBG?

1 respuesta
AikonCWD

#17 PUBG y FarCry5. Miraré lo de la memoria en StandBy a ver si lo puedo reducir y si el proceso éste soluciona el problema.

1 respuesta
B

#16 Te he llamado porque se que controlas mas que toh :3

AikonCWD

Bueno lo acabo de probar en el PC del curro, no tengo juegos pero actualmente tenía el 40% de la ram "ocupada" en standby, ha sido ejecutar el proceso y se ha liberado toda la memoria.

Tiene bastante sentido que algo así solucione problemas de suttering y similares. Lo que es curioso es como con el nuevo update de win10, la gestión de la memoria ha cambiado tanto como para dar lugar a este "bug". Imagino que a nivel de procesos beneficiará al rendimiento, pero para juegos parece ser un lastre importante. Sigo investigando.

Y gracia por el descubrimiento!

1 respuesta
-

#18 Pues de agradecer seria y una cojonuda contribución.

#20 Es ahí la queja de cierta gente de como Windows con las ultimas updates gestiona la memoria.

AikonCWD

Un ejemplo que acabo de grabar, en vivo. He llenado un poco la RAM con memoria en standby y luego he comprobado como el procesa la libera perfectamente

2 respuestas
B

Pues lo he hecho y libera correctamente esa memoria que se queda ahí. La verdad que lo agradezco.

1
-

Ya os digo acabo de probar el Battlefield 1 y se lo que llevo pasando con ese juego. No solamente juego en ultra sin ninguna rascada fluidísimo todo, si no que además puedo poner la escala de resolución a 150 en el juego y que siga sin rascar.

#22 ¿Podrías comprobar la gestión que hace Windows 10 1607 con la gestión que hace Windows 10 actual? ¿Con ese mismo ejemplo?

¿Qué es la memoria en espera?

1 respuesta
AikonCWD

#24 La comparación ahora mismo no puedo hacerla, tengo mis equipos actualizados. La explicación la tienes en #13

Intentaré actualizar hoy el script

pantocreitor

No termino de entender cual es el problema con esa memoria en standby, es decir, por qué empeora el rendimiento???
Teniendo mas capacidad se nota menos o es indiferente???
Es que veo el gif en #22 y aunque tenga esa cantidad de memoria en espera sigue habiendo muchísima memoria libre.

1 respuesta
AikonCWD

#26 La explicación es sencilla:

Si tienes 1Gb de memoria libre "free" + 1Gb de memoria "standby", el sistema operativo te muestra que tienes 2Gb de memoria "libre", si ejecutas un proceso que ocupe 1,5Gb, el SO liberará esa memoria "standby" de forma automática.

El problema está en que algunos procesos/juegos, cuando hacen una comprobación de la memoria libre, solo listan la "free", dejando la "standby" como memoria ocupada. Eso es un error ya que podría suceder que un proceso se pagine en disco por el mero hecho de creer que no existe más memoria libre en el SO.

La solución correcta sería que el SO hiciese una gestión de la memoria más eficiente para evitar que ningún proceso/juego se piense que exista menos memoria disponible de la real. Para solucionarlo, ese programa que libera la standby de forma manual, tiene pinta de dar resultados muy buenos.

Sobre mi GIF... lo he probado en mi PC del curro como ejemplo, con muy poca memoria en standby asignada, pero se dan casos más extremos:

Mira este PC... para un juego tipo PUBG o BF1 se pensaría que solo existen 149MB de ram libres. Cuando en realidad el SO dispone de +10Gb de ram libres.

Espero que se entienda la "problemática"

1 2 respuestas
pantocreitor

Vale, con #27 ya lo está todo claro. Thanks!!!

B

Como siempre aikon un crack next level, se agradece +99

1 respuesta
-

#27 La cuestión esta es que según comentan, se ejecuta esa tarea (Standby.exe) cada 5 minutos para liberar esa memoria. ¿Es suficiente?

1 respuesta