- -

Mejora de las prestaciones de la GPU mediante planificación de aplicaciones concurrentes

RiuNet: Institutional repository of the Polithecnic University of Valencia

Share/Send to

Cited by

Statistics

Mejora de las prestaciones de la GPU mediante planificación de aplicaciones concurrentes

Show simple item record

Files in this item

dc.contributor.advisor Petit Martí, Salvador Vicente es_ES
dc.contributor.advisor Sahuquillo Borrás, Julio es_ES
dc.contributor.author Baselga Masiá, David es_ES
dc.date.accessioned 2018-12-12T08:20:02Z
dc.date.available 2018-12-12T08:20:02Z
dc.date.created 2018-09-17
dc.date.issued 2018-12-12 es_ES
dc.identifier.uri http://hdl.handle.net/10251/113653
dc.description.abstract En la actualidad, las Graphics Processing Units (GPU) no sólo se dedican a la aceleración de gráficos, sino que su uso se ha extendido a la ejecución de aplicaciones de propósito general, surgiendo así el paradigma conocido como General Purpose computing on Graphics Processing Units (GPGPU). Este paradigma se concibió en un contexto donde una única aplicación disponía de todos los recursos hardware de la GPU, al contrario que las Central Processing Units (CPU) donde se utilizan planificadores para decidir qué aplicaciones se ejecutan concurrentemente y, por tanto, comparten los recursos del sistema. Por este motivo, las GPU actuales no ofrecen un soporte adecuado a la ejecución concurrente de aplicaciones, lo cual y tal y como se demuestra en este trabajo, puede tener un impacto significativo en la utilización de sus recursos computacionales y, por ende, en las prestaciones finales del sistema. En este trabajo se caracterizan una serie de aplicaciones científicas GPGPU, mostrando diferencias que pueden superar un orden de magnitud en el uso de recursos como el ancho de banda de memoria o las unidades de cómputo. Para estudiar la sensibilidad de las aplicaciones a la contención en el acceso los recursos compartidos, se han desarrollado microbenchmarks que interfieren en el uso de estos recursos. Los resultados demuestran que estas interferencias pueden llegar en algunos casos a incrementar el tiempo de ejecución de la aplicación bajo estudio hasta un 80 %. Con el objetivo de mejorar el soporte de las GPU a la ejecución concurrente así como las prestaciones de las aplicaciones que comparten la GPU, se propone una estructura para la planificación de aplicaciones. Se trata de una estructura que controla el uso de la GPU por parte de las aplicaciones para facilitar la implementación de algoritmos de planificación efectivos. Sobre esta estructura, y en base a los resultados de la caracterización, se ha desarrollado el algoritmo de planificación SHARK propuesto en este trabajo, el cual trata de minimizar las interferencias en la jerarquía de memoria. Los experimentos realizados muestran que SHARK mejora las prestaciones de la ejecución concurrente en comparación un algoritmo de planificación agnóstico a las interferencias, siendo sus ventajas más evidentes cuanto mayor es el nivel de paralelismo. En algunos casos se alcanzan aceleraciones superiores al 40 %. es_ES
dc.description.abstract Nowadays, Graphics Processing Units (GPUs) are not only used for graphics acceleration but they are also being employed in general purpose computing. As a result, the General Purpose computing on Graphics Processing Units (GPGPU) paradigm emerged. This paradigm was initially developed in a context where a single application had available all the GPU's hardware resources. In constrast, Central Processing Units (CPUs) are managed by schedulers that select which applications run concurrently and thus share the system resources. In other words, current GPUs do not provide a mature support for concurrent GPGPU applications, which impacts on resource utilization and on performance. In this work, several GPGPU applications are characterized, presenting differences among them that can be higher than an order of magnitude in the utilization of resources like memory bandwidth or computational units. To study application's sensitivity to shared resource contention, we develop microbenchmarks that interfere when accessing these resources. The results of the characterization study show that the execution time can grow by a 80\% in some cases. With the aim of improving concurrent execution support in GPUs and increasing system performance, we propose a novel scheduling framework for GPUs. This framework controls the GPU usage of applications and enables the implementation of new scheduling algorithms. In this scheduling framework, we develop SHARK, a scheduling algorithm that takes into account the results of the characterization study in order to minimize interferences in the memory hierarchy and improve performance. Experimental results show that SHARK improves concurrent execution performance when compared to an interference-agnostic algorithm and that its benefits become more evident as execution parallelism increases. In some cases, the speedup is higher than 40\%. es_ES
dc.language Español es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reserva de todos los derechos es_ES
dc.subject GPGPU es_ES
dc.subject Cargas multiprograma es_ES
dc.subject planificación es_ES
dc.subject simbiosis entre aplicaciones es_ES
dc.subject interferencia en la jerarquía de memoria es_ES
dc.subject GPGPU applications es_ES
dc.subject Multiprogram workloads es_ES
dc.subject Scheduling es_ES
dc.subject NVIDIA es_ES
dc.subject.classification ARQUITECTURA Y TECNOLOGIA DE COMPUTADORES es_ES
dc.subject.other Máster Universitario en Ingeniería de Computadores y Redes-Màster Universitari en Enginyeria de Computadors i Xarxes es_ES
dc.title Mejora de las prestaciones de la GPU mediante planificación de aplicaciones concurrentes es_ES
dc.type Tesis de máster es_ES
dc.rights.accessRights Abierto es_ES
dc.contributor.affiliation Universitat Politècnica de València. Departamento de Informática de Sistemas y Computadores - Departament d'Informàtica de Sistemes i Computadors es_ES
dc.description.bibliographicCitation Baselga Masiá, D. (2018). Mejora de las prestaciones de la GPU mediante planificación de aplicaciones concurrentes. http://hdl.handle.net/10251/113653 es_ES
dc.description.accrualMethod TFGM es_ES
dc.relation.pasarela TFGM\90529 es_ES


This item appears in the following Collection(s)

Show simple item record