Mostrar el registro sencillo

dc.contributor.advisorBosque Orero, José Luis 
dc.contributor.authorPérez Pavón, Borja 
dc.contributor.otherUniversidad de Cantabriaes_ES
dc.date.accessioned2019-06-18T10:56:09Z
dc.date.available2019-06-18T10:56:09Z
dc.date.issued2019-05-31
dc.identifier.urihttp://hdl.handle.net/10902/16359
dc.description.abstractRESUMEN: Las arquitecturas heterogéneas ofrecen capacidades excelentes en términos tanto de rendimiento como de eficiencia energética. Sin embargo, la mayoría de sistemas y modelos de programación actuales consideran que los recursos heterogéneos son entidades totalmente independientes, dejando su gestión en manos del programador. Esto favorece el paralelismo de tareas y paradigmas de programación host-device. Como consecuencia, el programador no dispone de ninguna ayuda que facilite la colaboración de todos los dispositivos disponibles, realizando el cómputo asociado a una sola tarea y aprovechando el paralelismo de datos. Esta forma de operar recibe el nombre de co-ejecución y actualmente requiere que el programador divida manualmente la carga de trabajo, teniendo que encargarse de decisiones complejas como el equilibrio de carga o la distribución de datos. Sin embargo, para que la co-ejecución sea verdaderamente útil, es necesario que no requiera mayor esfuerzo que la utilización de un solo dispositivo. Esta tesis propone técnicas tanto software como hardware que posibilitan una co-ejecución eficiente sin esfuerzo. Estas técnicas incluyen dos nuevos algoritmos de balanceo de carga, una librería de abstracción, una implementación de co-ejecución en un modelo de programación basado en tareas y el diseño de un nuevo dispatcher dar soporte hardware a la co-ejecución.es_ES
dc.description.abstractABSTRACT: Heterogeneous architectures offer outstanding capabilities in terms of both performance and energy efficiency. However, most current systems and programming models regard heterogeneous resources as independent entities, leaving their management at the hands of the programmer. This favours task parallelism and a host-device approach to programming. A consequence of this is that the programmer is effectively left alone regarding co-execution, which is the computation of all the devices, collaborating on the work associated to a single workload in a data-parallel manner. Achieving it requires a careful and manual division of the workload, which requires the programmer to make complex decisions such as those related to data distribution and load balancing. Nevertheless, for heterogeneous co-execution to be useful, it has to be effortless, requiring an equivalent amount of work to using a single device. This dissertation proposes software and hardware techniques to enable effortless, performant co-execution, including two novel load balancing algorithms, a new abstraction library, an implementation of co-execution in a task-based programming model and a new dispatcher design for hardware supported co-execution.es_ES
dc.format.extent164 p.es_ES
dc.language.isoenges_ES
dc.rightsAtribución-NoComercial-CompartirIgual 3.0 España*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/3.0/es/*
dc.subject.otherArquitectura de ordenadoreses_ES
dc.subject.otherOrdenadores vectorialeses_ES
dc.subject.otherComputer architecturees_ES
dc.subject.otherVector computerses_ES
dc.titleSoporte para co-ejecución eficiente en sistemas heterogéneos.es_ES
dc.title.alternativeEfficient co-execution support in heterogeneous systems.es_ES
dc.typeinfo:eu-repo/semantics/doctoralThesises_ES
dc.rights.accessRightsopenAccesses_ES


Ficheros en el ítem

Thumbnail

Este ítem aparece en la(s) siguiente(s) colección(ones)

Mostrar el registro sencillo

Atribución-NoComercial-CompartirIgual 3.0 EspañaExcepto si se señala otra cosa, la licencia del ítem se describe como Atribución-NoComercial-CompartirIgual 3.0 España