Evaluating replication for parallel jobs: An efficient approach Academic Article

journal

  • IEEE Transactions on Parallel and Distributed Systems

abstract

  • Many modern software applications rely on parallel job processing to exploit large resource pools available in cloud and grid infrastructures. The response time of a parallel job, made of many subtasks, is determined by the last subtask that finishes. Thus, a single laggard subtask or a failure, requiring re-processing, may increase the response time substantially. To overcome these issues, we explore concurrent replication with canceling. This mechanism executes two job replicas concurrently, and retrieves the result of the first replica that completes, immediately canceling the other one. To analyze this mechanism we propose a stochastic model that considers replication at both job-level and task-level. We find that task-level replication achieves a much higher reliability and shorter response times than job-level replication. We also observe that the impact of replication depends on the system utilization, the subtask reliability, and the correlation among replica failures. Based on the model, we propose a resource-provisioning strategy that determines the minimum number of computing nodes needed to achieve a service-level objective (SLO) defined as a response-time percentile. This strategy is evaluated by considering realistic traffic patterns from a parallel cluster, where task-level replication shows the potential to reduce the resource requirements for tight response-time SLOs.
  • Muchas aplicaciones de software modernas se basan en el procesamiento paralelo de trabajos para explotar grandes reservas de recursos disponibles en infraestructuras de nube y grid. El tiempo de respuesta de un trabajo paralelo, formado por muchas subtareas, viene determinado por la última subtarea que finalice. Por lo tanto, una única subtarea o un fallo que requiera reprocesamiento puede aumentar sustancialmente el tiempo de respuesta. Para superar estos problemas, exploramos la replicación concurrente con la cancelación. Este mecanismo ejecuta dos réplicas de trabajos simultáneamente, y recupera el resultado de la primera réplica que se completa, cancelando inmediatamente la otra. Para analizar este mecanismo proponemos un modelo estocástico que considera la replicación tanto a nivel de trabajo como de tarea. Encontramos que la replicación a nivel de tarea logra una fiabilidad mucho mayor y tiempos de respuesta más cortos que la replicación a nivel de trabajo. También observamos que el impacto de la replicación depende de la utilización del sistema, la fiabilidad de las subtareas y la correlación entre los fallos de las réplicas. Basado en el modelo, proponemos una estrategia de aprovisionamiento de recursos que determina el número mínimo de nodos de cálculo necesarios para alcanzar un objetivo de nivel de servicio (SLO) definido como un percentil de tiempo de respuesta. Esta estrategia se evalúa considerando patrones de tráfico realistas de un cluster paralelo, donde la replicación a nivel de tarea muestra el potencial para reducir los requerimientos de recursos para SLOs con tiempos de respuesta ajustados.

publication date

  • 2016/8/1

edition

  • 27

keywords

  • Application programs
  • Processing
  • Stochastic models

International Standard Serial Number (ISSN)

  • 1045-9219

number of pages

  • 15

start page

  • 2288

end page

  • 2302