Context Switches muy alto | SQL Server Performance Forums

SQL Server Performance Forum – Threads Archive

Context Switches muy alto

Tengo un servidor SQL Server dedicado.
Lo estamos utilizando con una sola base de datos con un datawarehouse. Tiene dos procesadores de IBM, de esos que el sistema operativo los ve como cuatro.
Durante la carga y procesamiento del warehouse realice una
medicion de System Object: Context Switches/sec Me llama la atención que el promedio de la traza (de 13hs de proceso)
me dá 7100 con un maximo de 32300 y un minimo de 257. Las CPUs trabajan promedio 20%
COST THRESHOLD FOR PARALLELISM = 5
AFFINITY MASK = 0 Deberia restringir el uso de uno de los procesadores? Gracias

Los Context Switches/sec si están en promedio por arriba de los 15000, entonces es para comenzar a preocuparse. De ser así, una de las pruebas sería cambiar el algoritmo de uso (Use Windows NT fibers) que se encuentra en EM, propiedades, procesador. El paralelismo afecta más a algunas consultas. Con esto quiero decir que a veces es preferible dejar 1 solo procesador para que el procesamiento en paralelo no ocurra (no quiere decir que no se usen todos los procesadores). Esta restricción puede aplicarse en general o para cada consulta en particualar.( Ver MaXDOP en BOL)
Luis Martin
Moderator
SQL-Server-Performance.com One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important
Bertrand Russell
All postings are provided “AS IS” with no warranties for accuracy.
Se conoce algún efecto negativo de utilizar
Windows NT fibers? Que tipo de cambios puedo llegar a notar
cuando cambie a modo fibers? Gracias
Mira, los cambios se notan (asi la documentación lo sugiere) en el caso de que los Context Switches/sec sean por arriba de los valores que te comenté. Pero tampoco es seguro que el cambio de algoritmo baje ese valor. La documentación sugiere probar y si no se obtienen mejoras, volver al valor anterior. El tema es que implica bajar y subir el SQL, dado que no es un cambio instantáneo como otros. No obstante, por valores que mencionaste (execpto que haya tomado promedios en un excel) sea un cambio útil. Luis Martin
Moderator
SQL-Server-Performance.com One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important
Bertrand Russell
All postings are provided “AS IS” with no warranties for accuracy.
Los promedios los tome con el PERFMON, grave la traza a un archivo durante 13hs y luego levanté el archivo. En la parte inferior derecha donde indica "duration" me mostraba 13:00 y el valor de promedio y maximo los tomé directamente de la pantalla. Voy a cambiar a modo fibra, reiniciar SQL Server, correr el proceso nuevamente y medir. Tal vez vea los mismos valores pero con mejoría en performance. Gracias el dato Saludos
]]>