ROUGH DRAFT authorea.com/100191
Main Data History
Export
Show Index Toggle 0 comments
  •  Quick Edit
  • Planificación de tareas para una arquitectura embebida basada en GPU, orientada al cómputo de alto rendimiento.

    Abstract

    Gran mayoría de las computadoras hoy día cuentan unidades de procesamiento gráfico (GPU), las cuales proveen funciones de entorno gráfico para poder interactuar con las aplicaciones. Las GPU tienen unidades aritméticas especializadas de las cuales los computadores pueden beneficiarse para acelerar la ejecución de programas paralelos. Sin embargo, aun los sistemas operativos de uso común y los manejadores de recursos en las grandes plataformas de computo de alto rendimiento, no proveen un soporte adecuado para arbitrar y manejar a las GPU. Las GPU embebidas podrían suplir la alta demanda en procesamiento de datos requerida para la ejecución de aplicaciones en la industria del petróleo, acorde a las limitantes energéticas características de las locaciones petroleras que hacen insostenible un centro de datos para tal fin.

    Por ello el enfoque de este trabajo de investigación es atacar esta problematica, enfocándose en la planificación de tareas para unidades de procesamiento gráfico embebidas, como la alternativa que permita sacar mayor provecho al bajo consumo energético y poder de cálculo disponible en GPU embebidas.

    (Quan 2015)

    (Quan 2015) Key-words:

    GPU, CUDA, Job Scheduling, Embedded System.

    INTRODUCCIÓN

    \label{introduccion}

    Las unidades de procesamiento gráfico (GPU) fueron originalmente pensadas y diseñadas para el procesamiento de gráficos en los juegos electrónicos. Sin embargo con el tiempo se ha decidio emplear estos procesadores para aligerar la carga de trabajo del procesador central en tareas como la emulación 3D de los videojuegos, el streaming en video llamadas y démas aplicaciones de video multimedia.

    Por otra parte, muchos ingenieros y cientificos vieron en su momento el procesamiento paralelo y capacidad calculo disponible en este tipo de procesadores, lo cual termino por impulsar su incursión en el ámbito del computo y cálculo científico entre los años 2006 y 2007 (Singer 2013). Hoy día, este tipo de procesadores permiten acelerar la ejecución de aplicaciones cientificas sobre las grandes infraestructuras de computo de alto rendimiento.(Owens 2007)(Brodtkorb 2013).

    Según (Balle 2008), los beneficos tras la incorporación de la tecnología GPU sobre estas plataformas, se ve claramente reflejada en las metricas de rendimiento de la lista Top500(Erich Strohmaier 2016); en la cual se clasifican los 500 supercomputadores mas veloces del mundo (en terminos computacionales).

    Por otra parte, la tecnologías GPU y coprocesadores trajo consigo nuevos modelos de programación paralela como CUDA, OpenCL, Pthreads, entre otros. por otra parte, la aparicion de un nuevo concepto en la computación conocido como GPGPU (Mark Harris 2016), que tiene como fundamento el aprovechamiento la tecnología GPU para la ejecución de aplicaciones de proposito general.(Nickolls 2010)

    CUDA y OpenCL, permiten el desarrollo de aplicaciones con alto grado de paralelismo de datos sobre unidades GPU. Adicionalmente las GPUs, son procesadores masivamente paralelos, que ofrecen un gran nivel de rendimiento para la ejecución de aplicaciones con estas caracteristicas, en comparación con la ejecución sobre unidades CPU.

    Estado del Arte

    Tras la incursión de las unidades de procesamiento gráfico (GPU) en el ámbito del cómputo y cálculo científico, entre los años 2006 y 2007(Singer 2013), la utilización de estas sobre las grandes infraestructuras de computo de alto rendimiento es mas habitual.(Owens 2007)(Brodtkorb 2013).

    En publicaciones como las de (Agerwala 2010) y (Schulte 2015), se expone en forma clara el enfoque y futuro de la computación de alto rendimiento. La meta de alcanzar niveles de procesamiento exascalar apoyado en el uso de tecnologias emergentes y hardware para funciones especificas, es la apuesta directa para aumentar el rendimiento computacional y disminuir el consumo energético. Segun las declaracionesde de (Simon 2013) director del Laboratorio Nacional Lawrence Berkeley, la incorporación de aceleradores y coprocesadores (GPU y MIC) muestran ser los elementos computacionales más indicados para alcanzar esta meta.