Local cover image
Local cover image

Software para arquitecturas basadas en procesadores de múltiples núcleos : detección automática de errores de concurrencia

By: Contributor(s): Material type: TextTextPublication details: 2015Description: 149 p. : il. + 1 CD-ROMSubject(s): Online resources:
Contents:
1. Introducción -- 1.1. Fundamentación -- 1.2. Objetivos y metodología -- 1.3. Contribuciones -- 1.4. Organización de la tesis -- 2. Marco teórico: errores de programación -- 2.1. Introducción -- 2.2. Depuración de programas secuenciales -- 2.3. Programas concurrentes -- 2.4. Errores de concurrencia -- 2.4.1. Condiciones de carrera -- 2.4.2. Deadlock -- 2.4.3. Violación de orden -- 2.4.4. Violación de atomicidad simple -- 2.4.5. Violación de atomicidad multivariable -- 2.4.6. ¿Qué tan frecuentes son estos errores -- 2.5. Resumen -- 3. Caso de estudio: detección de violaciones de atomicidad -- 3.1. Introducción -- 3.2. Antecedentes -- 3.3. Método de análisis de interleavings -- 3.4. Implementación de AVIO -- 3.5. Resultados experimentales del capítulo -- 3.5.1. Plataforma de experimentación -- 3.5.2. Benchmarks -- 3.5.3. Capacidad de Detección de Errores -- 3.5.4. Análisis de Rendimiento -- 3.6. Resumen -- 4. Definición del problema -- 4.1. Introducción -- 4.2. Ejecución de programas concurrentes -- 4.2.1. Soporte hardware -- 4.2.2. Soporte software -- 4.2.3. Modelo de ejecución -- 4.3. Implementación de algoritmos de detección -- 4.3.1. Instrumentación -- 4.3.2. Extensiones hardware -- 4.4. Oportunidades de optimización -- 4.4.1. Overhead causado por la instrumentación -- 4.4.2. Hipótesis -- 4.5. Resumen -- 5. Eventos de hardware -- 5.1. Introducción -- 5.2. Contadores hardware -- 5.2.1. Soporte hardware -- 5.2.2. Soporte software -- 5.3. Uso de los contadores -- 5.4. Identificar el evento que se desea detectar -- 5.4.1. Protocolo de coherencia cache -- 5.5. Microbenchmarks representativos de eventos -- 5.6. Resultados experimentales del capítulo -- 5.6.1. Validación del evento candidato -- 5.6.2. Indicador de accesos inseguros -- 5.6.3. Patrones de accesos a datos compartidos -- 5.6.4. Frecuencia y distribución de interleavings no serializables -- 5.7. Resumen -- 6. Instrumentación dinámica guiada por eventos -- 6.1. Introducción -- 6.2. Muestreo de eventos -- 6.3. Modelo Simple -- 6.4. Modelo para aplicaciones paralelas -- 6.4.1. Gestor de Interrupciones (GI) -- 6.4.2. Programa Objeto de Estudio (POE) -- 6.5. Modelo de Instrumentación Dinámica Guiado por Eventos -- 6.5.1. Activado de la rutina de análisis -- 6.5.2. Desactivado de la rutina de análisis -- 6.5.3. Aspectos de diseño -- 6.6. Resumen -- 7. Experimentación y resultados obtenidos -- 7.1. Introducción -- 7.2. AVIO Consciente de Compartición -- 7.2.1. Detalles de implementación -- 7.3. Configuración experimental -- 7.3.1. Elección de un intervalo de muestreo óptimo -- 7.4. Rendimiento -- 7.5. Capacidad de detección -- 7.5.1. Prueba de detección en los kernels -- 7.5.2. Prueba de detección en aplicaciones reales -- 7.5.3. Comparación de bugs informados entre AVIO y AVIO-SA -- 7.6. Discusión -- 7.6.1. Interleavings detectados como criterio de comparación -- 7.6.2. Comparación basada en re-ejecución -- 7.7. Resumen -- 8. Conclusiones y Líneas de Trabajo Futuras -- 8.1. Líneas futuras -- Apéndices -- A. Detección de condiciones de carrera -- A.1. Happens before -- A.2. Lockset -- B. Benchmaks -- B.1. Introducción -- B.1.1. Benchmarks para evaluar capacidad de detección -- B.1.2. Benchmarks para desempeño -- C. SPLASH-2: distribución de eventos -- C.1. Introducción -- D. SPLASH-2: distribución de interleavings -- D.1. Introducción -- E. Apache -- E.1. Introducción -- E.2. Compilación e instalación -- E.3. Configuración -- E.4. Ejecución
Dissertation note: Tesis (Doctorado en Ciencias Informáticas) - Universidad Nacional de La Plata. Facultad de Informática, 2015.
Star ratings
    Average rating: 0.0 (0 votes)
Holdings
Item type Home library Collection Call number URL Status Date due Barcode
Tesis de posgrado Tesis de posgrado Biblioteca de la Facultad de Informática TES 15/29 (Browse shelf(Opens below)) Consulta en Sala DIF-04457
Tesis de posgrado Tesis de posgrado Biblioteca de la Facultad de Informática Biblioteca digital Link to resource No corresponde
Tesis de posgrado Tesis de posgrado Biblioteca de la Facultad de Informática Biblioteca digital Link to resource No corresponde

Tesis (Doctorado en Ciencias Informáticas) - Universidad Nacional de La Plata. Facultad de Informática, 2015.

1. Introducción -- 1.1. Fundamentación -- 1.2. Objetivos y metodología -- 1.3. Contribuciones -- 1.4. Organización de la tesis -- 2. Marco teórico: errores de programación -- 2.1. Introducción -- 2.2. Depuración de programas secuenciales -- 2.3. Programas concurrentes -- 2.4. Errores de concurrencia -- 2.4.1. Condiciones de carrera -- 2.4.2. Deadlock -- 2.4.3. Violación de orden -- 2.4.4. Violación de atomicidad simple -- 2.4.5. Violación de atomicidad multivariable -- 2.4.6. ¿Qué tan frecuentes son estos errores -- 2.5. Resumen -- 3. Caso de estudio: detección de violaciones de atomicidad -- 3.1. Introducción -- 3.2. Antecedentes -- 3.3. Método de análisis de interleavings -- 3.4. Implementación de AVIO -- 3.5. Resultados experimentales del capítulo -- 3.5.1. Plataforma de experimentación -- 3.5.2. Benchmarks -- 3.5.3. Capacidad de Detección de Errores -- 3.5.4. Análisis de Rendimiento -- 3.6. Resumen -- 4. Definición del problema -- 4.1. Introducción -- 4.2. Ejecución de programas concurrentes -- 4.2.1. Soporte hardware -- 4.2.2. Soporte software -- 4.2.3. Modelo de ejecución -- 4.3. Implementación de algoritmos de detección -- 4.3.1. Instrumentación -- 4.3.2. Extensiones hardware -- 4.4. Oportunidades de optimización -- 4.4.1. Overhead causado por la instrumentación -- 4.4.2. Hipótesis -- 4.5. Resumen -- 5. Eventos de hardware -- 5.1. Introducción -- 5.2. Contadores hardware -- 5.2.1. Soporte hardware -- 5.2.2. Soporte software -- 5.3. Uso de los contadores -- 5.4. Identificar el evento que se desea detectar -- 5.4.1. Protocolo de coherencia cache -- 5.5. Microbenchmarks representativos de eventos -- 5.6. Resultados experimentales del capítulo -- 5.6.1. Validación del evento candidato -- 5.6.2. Indicador de accesos inseguros -- 5.6.3. Patrones de accesos a datos compartidos -- 5.6.4. Frecuencia y distribución de interleavings no serializables -- 5.7. Resumen -- 6. Instrumentación dinámica guiada por eventos -- 6.1. Introducción -- 6.2. Muestreo de eventos -- 6.3. Modelo Simple -- 6.4. Modelo para aplicaciones paralelas -- 6.4.1. Gestor de Interrupciones (GI) -- 6.4.2. Programa Objeto de Estudio (POE) -- 6.5. Modelo de Instrumentación Dinámica Guiado por Eventos -- 6.5.1. Activado de la rutina de análisis -- 6.5.2. Desactivado de la rutina de análisis -- 6.5.3. Aspectos de diseño -- 6.6. Resumen -- 7. Experimentación y resultados obtenidos -- 7.1. Introducción -- 7.2. AVIO Consciente de Compartición -- 7.2.1. Detalles de implementación -- 7.3. Configuración experimental -- 7.3.1. Elección de un intervalo de muestreo óptimo -- 7.4. Rendimiento -- 7.5. Capacidad de detección -- 7.5.1. Prueba de detección en los kernels -- 7.5.2. Prueba de detección en aplicaciones reales -- 7.5.3. Comparación de bugs informados entre AVIO y AVIO-SA -- 7.6. Discusión -- 7.6.1. Interleavings detectados como criterio de comparación -- 7.6.2. Comparación basada en re-ejecución -- 7.7. Resumen -- 8. Conclusiones y Líneas de Trabajo Futuras -- 8.1. Líneas futuras -- Apéndices -- A. Detección de condiciones de carrera -- A.1. Happens before -- A.2. Lockset -- B. Benchmaks -- B.1. Introducción -- B.1.1. Benchmarks para evaluar capacidad de detección -- B.1.2. Benchmarks para desempeño -- C. SPLASH-2: distribución de eventos -- C.1. Introducción -- D. SPLASH-2: distribución de interleavings -- D.1. Introducción -- E. Apache -- E.1. Introducción -- E.2. Compilación e instalación -- E.3. Configuración -- E.4. Ejecución

Click on an image to view it in the image viewer

Local cover image