Al ejecutar SQL Server 2012 SP3 en 32 GB de RAM y 4 núcleos, 60-80 conexiones concurrentes, con una carga de trabajo en gran medida ad-hoc, estamos viendo el pico del proceso de SQL Server (CPU) y seguimos aumentando una o dos veces al día en momentos impredecibles. Estamos trabajando para identificar la causa raíz del pico. Mientras tanto, descubrimos que alterar la configuración de Memoria máxima (arriba o abajo) parece ser lo único que hará que la carga de la CPU vuelva a la normalidad.
Al verificar los registros y buscar StackExchange ( https://dba.stackexchange.com/a/183276 ) vemos que la memoria caché del plan se vacía al cambiar la configuración de Memoria máxima. Sin embargo, si limpiamos el caché del plan a través de DBCC FREESYSTEMCACHE ('Planes SQL'), la carga de la CPU no vuelve a la normalidad.
Dado que cambiar la configuración de Memoria máxima resuelve el problema sin importar el clima lo aumentemos o disminuyamos, el problema no parece estar relacionado directamente con la configuración de Memoria máxima del servidor. Como tal, estamos tratando de entender qué más cambia la configuración de la memoria y luego usamos esa información para ayudar a identificar la causa raíz de nuestro pico de CPU.
fuente
Respuestas:
Ref: Opciones de configuración del servidor de memoria del servidor
max server memory
controla la asignación de memoria de SQL Server, que incluye (esencialmente cualquier empleado de memoria encontrado en sys.dm_os_memory_clerks):Por lo tanto, todos estos componentes se verán afectados al
max server memory
establecer el cambio.En una nota al margen, este será un camino muy difícil para encontrar lo que está causando el pico de su CPU. Le sugiero que use los siguientes artículos para su solución de problemas.
fuente