140 likes | 317 Views
Capacity Planning and Benchmarking. Gilberto Monzón G. Ramón René Palacio C. Do not plan a bridge capacity by counting the number of people who swim across the river today. Contenido. Conceptos. Pasos para el proceso de capacidad de planeación. Problemas en la capacidad de planeación.
E N D
Capacity Planning and Benchmarking Gilberto Monzón G. Ramón René Palacio C. Do not plan a bridge capacity by counting the number of people who swim across the river today
Contenido • Conceptos. • Pasos para el proceso de capacidad de planeación. • Problemas en la capacidad de planeación. • Errores comunes de Benchmarking. • Benchmarking games. • Carga de drivers. • Remote-Terminal Emulation. • Preguntas.
Conceptos • Capacidad de planeación: Requiere asegurar que los recursos computacionales adecuados estarán disponibles para futuras demandas de carga de trabajo hasta lograr el desempeño objetivo. • Capacidad de gestión: Denota el problema de asegurar que recursos computacionales disponibles actualmente son utilizados para soportar el más alto desempeño. • Optimización del desempeño: Es el proceso de ajustar los parámetros del sistema para optimizar el desempeño. • Benchmark:Es el resultado de la ejecución de un programa informático con la finalidad de comparar 2 sistemas en competencia de una manera objetiva utilizando cargas de drivers.
Pasos para el proceso de capacidad de planeación Instrument the system Monitor usage Characterize Workload Change system parameters System model Forecast Workload Are cost and performance acceptable? Done No Yes
Problemas en la capacidad de planeación • No hay terminología estándar. • No hay una definición estándar de Capacidad. • Hay un número de diferentes capacidades para el mismo sistema. • No hay una unidad estándar de carga de trabajo. • Predicción futura de aplicaciones es difícil.
Problemas en la capacidad de planeación • No hay uniformidad entre sistemas de diferentes vendedores. • Las entradas del modelo no pueden ser siempre medidas. • Proyecciones para validar modelos es difícil. • Ambientes distribuidos son demasiado difíciles de modelar • El desempeño es solo una pequeña parte de la capacidad de planeación de problemas.
Errores comunes de Benchmarking • Solo el comportamiento promedio esta representado en las pruebas de carga de trabajo. • El sesgo de demandas de dispositivos son ignorados. • Nivel de carga controlado inapropiadamente. • Efectos del cache son ignorados. • Tamaños de buffer no apropiados. • Inexactitudes debido a muestras ignoradas.
Benchmarking games • Una configuración diferente puede ser usada para correr la misma carga de trabajo sobre los dos sistemas. • La configuración puede variar en cuanto a cantidad de memoria, discos diferentes, diferente cantidad de discos. • Los compiladores pueden ser orientados para optimizar la carga de trabajo. • En un caso, el compilador puede eliminar el ciclo principal, y con esto obtener mejor el desempeño que el sistema dos. • Las especificaciones de las pruebas pueden ser escritas orientadas a una maquina. • Un trabajo secuencial sincronizado puede ser usado. • Esto es posible para manipular un trabajo secuencial de CPU haciendo pasos de sincronización para obtener un mejor desempeño.
Benchmarking games • La carga de trabajo puede ser arbitrariamente elegida. • Muchos de los kernels conocidos no representan una carga de trabajo real. • Benchmarks muy pequeños pueden ser usados. • Como el benchamark de hits en cache dan el100%, es ignorado la eficiencia de memoria y la organización de cache. • Pequeños benchamarks no muestran el efecto de overhead en I/O • Comparando dos sistemas uno podría usar una gran variedad de cargas de trabajo. • Benchmark pueden ser ajustados manualmente para optimizar el desempeño.
Carga de drivers • Propósitos • Componente de certificación • Pruebas rigurosas de software y hardware • Integración de sistema • Compatibilidad de trabajo bajo diferentes ambientes • Análisis del stress • Altas cargas de trabajo • Prueba de regresión • Pruebas de nuevas versiones del sistema
Carga de drivers • Tres técnicas han sido utilizadas para cargar drivers: • Internal Driver: Carga de programas directamente a la memoria y lo ejecuta • Live Operators: Costoso y difícil proceso de control • Remote Terminal Emulators (RTEs): Simulación de usuarios Método popular System under test Remote Terminal Emulator
Remote-Terminal Emulation RTE System under test Communication Terminal Jobs (Workload) Terminal Operator
-RTE S/W - reports -database Componentes de un RTE Pre-emulation User Scenario Script Script assembler Configuration generation Emulation CRT SUT RTE LOG Report generation fail Fix problem Test evaluation Session reports Post emulation pass