Una asignación basada en componentes de dos capas para sistemas embebidos con GPUs
Autores: Campeanu, Gabriel; Saadatmand, Mehrdad
Idioma: Inglés
Editor: MDPI
Año: 2019
Acceso abierto
Artículo científico
2019
Una asignación basada en componentes de dos capas para sistemas embebidos con GPUs
Categoría
Procesos industriales
Subcategoría
Diseño de procesos industriales
Palabras clave
Desarrollo basado en componentes
Sistemas embebidos
Arquitecturas CPU-GPU
Asignación
Potencia de procesamiento heterogénea
Complejidad
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 15
Citaciones: Sin citaciones
El desarrollo basado en componentes es un paradigma de ingeniería de software que puede facilitar la construcción de sistemas embebidos y abordar sus complejidades. Los sistemas embebidos modernos tienen requisitos cada vez más exigentes. Una forma de hacer frente a un conjunto de requisitos tan versátil y creciente es emplear potencia de procesamiento heterogénea, es decir, arquitecturas CPU-GPU. Las nuevas placas embebidas CPU-GPU ofrecen un rendimiento mejorado, pero también introducen complejidades y desafíos adicionales. En este trabajo, abordamos la asignación de componentes a hardware para sistemas embebidos CPU-GPU. La asignación para tales sistemas es mucho más compleja debido a la cantidad aumentada de información relacionada con la GPU. Por ejemplo, mientras que en los sistemas embebidos tradicionales el mecanismo de asignación puede considerar solo el uso de memoria de la CPU de los componentes para encontrar un esquema de asignación apropiado, en sistemas heterogéneos, el uso de memoria de la GPU también debe tenerse en cuenta en el proceso de asignación. Este artículo tiene como objetivo disminuir la complejidad de la asignación de componentes a hardware introduciendo una arquitectura basada en componentes de dos capas para sistemas embebidos heterogéneos. La información detallada de CPU-GPU del sistema se abstrae en una capa alta compactando componentes conectados en unidades únicas que se comportan como componentes regulares. El asignador, basado en la información compactada recibida de la capa de alto nivel, calcula, con una complejidad reducida, esquemas de asignación viables. En la última parte del artículo, se evalúa el método de asignación de dos capas utilizando un demostrador de sistema embebido existente; a saber, un robot submarino.
Descripción
El desarrollo basado en componentes es un paradigma de ingeniería de software que puede facilitar la construcción de sistemas embebidos y abordar sus complejidades. Los sistemas embebidos modernos tienen requisitos cada vez más exigentes. Una forma de hacer frente a un conjunto de requisitos tan versátil y creciente es emplear potencia de procesamiento heterogénea, es decir, arquitecturas CPU-GPU. Las nuevas placas embebidas CPU-GPU ofrecen un rendimiento mejorado, pero también introducen complejidades y desafíos adicionales. En este trabajo, abordamos la asignación de componentes a hardware para sistemas embebidos CPU-GPU. La asignación para tales sistemas es mucho más compleja debido a la cantidad aumentada de información relacionada con la GPU. Por ejemplo, mientras que en los sistemas embebidos tradicionales el mecanismo de asignación puede considerar solo el uso de memoria de la CPU de los componentes para encontrar un esquema de asignación apropiado, en sistemas heterogéneos, el uso de memoria de la GPU también debe tenerse en cuenta en el proceso de asignación. Este artículo tiene como objetivo disminuir la complejidad de la asignación de componentes a hardware introduciendo una arquitectura basada en componentes de dos capas para sistemas embebidos heterogéneos. La información detallada de CPU-GPU del sistema se abstrae en una capa alta compactando componentes conectados en unidades únicas que se comportan como componentes regulares. El asignador, basado en la información compactada recibida de la capa de alto nivel, calcula, con una complejidad reducida, esquemas de asignación viables. En la última parte del artículo, se evalúa el método de asignación de dos capas utilizando un demostrador de sistema embebido existente; a saber, un robot submarino.