- -

Performance Analysis of HBM Memory on Reconfigurable Devices Using Different Design Flows

RiuNet: Repositorio Institucional de la Universidad Politécnica de Valencia

Compartir/Enviar a

Citas

Estadísticas

  • Estadisticas de Uso

Performance Analysis of HBM Memory on Reconfigurable Devices Using Different Design Flows

Mostrar el registro sencillo del ítem

Ficheros en el ítem

dc.contributor.advisor Flich Cardo, José es_ES
dc.contributor.advisor Cilardo, Alessandro es_ES
dc.contributor.author Vivenzo, Luca es_ES
dc.date.accessioned 2022-10-18T07:34:55Z
dc.date.available 2022-10-18T07:34:55Z
dc.date.created 2022-09-21
dc.date.issued 2022-10-18 es_ES
dc.identifier.uri http://hdl.handle.net/10251/188070
dc.description.abstract [ES] Los dispositivos FPGA de gama alta están equipados con tecnología de memoria High Bandwidth Memory (HBM) de alta velocidad y bajo consumo, en chips de memoria apilados en 3D. Esta memoria permite que la FPGA alcance un ancho de banda de memoria externa elevado. De esta forma, el rendimiento de las aplicaciones vinculadas a la memoria, como bases de datos, análisis o inferencia de redes neuronales, puede obtener una mayor eficiencia. No es fácil desarrollar una aplicación capaz de utilizar el máximo ancho de banda disponible en una memoria HBM debido a muchos factores potenciales, como la variabilidad de los patrones de acceso a la memoria, la complejidad del algoritmo a implementar en la FPGA, la complejidad de las herramientas, etc. Por lo tanto, el objetivo de este trabajo es identificar los cuellos de botella potenciales en el diseño, proceso que puede afectar al rendimiento en el acceso a la memoria HBM. En este trabajo utilizamos la Alveo U280 de Xilinx. Existen principalmente dos formas de desarrollar una aplicación en este dispositivo: el flujo de desarrollo de aceleración de Vitis y el diseño Custom Flow (flujo personalizado) con la suite Vivado Design. El primero proporciona un marco para desarrollar aplicaciones aceleradas para FPGAs utilizando lenguajes de programación estándar para componentes de software y hardware. El componente de software se desarrolla utilizando C/C++ y, en el caso de la Alveo FPGA, se ejecuta en la CPU que se comunica con el dispositivo mediante PCIe; los componentes de hardware, o kernels, en cambio, se pueden desarrollar utilizando C/C++ o RTL y sintetizarse en la parte PL del dispositivo. Por tanto, es posible especificar las conexiones entre los núcleos y las memorias presentes en el dispositivo, e.j. HBM, y todo el diseño se gestiona automáticamente. Por otro lado, utilizando la aproximación Custom Flow, el diseño debe implementarse manualmente: todos los componentes y sus conexiones deben instanciarse y configurarse manualmente. Este enfoque, aunque más complejo, puede potencialmente ofrecer un mayor rendimiento. Para comparar los dos enfoques, se ha implementado una aplicación simple que utiliza HBM con ambos flujos. Los dos enfoques se han evaluado principalmente en función del rendimiento HBM resultante, pero también de la utilización de recursos, el consumo de energía y la facilidad de desarrollo. es_ES
dc.description.abstract [EN] High-end FPGAs are equipped with high-speed and low-power High Bandwidth Memory (HBM) technology, built using 3D-stacked memory chips. This memory allows the FPGA to reach very high external memory bandwidth. In this way, performance for memory-bound applications like databases, analytics or neural network inference can be improved significantly. Developing an application capable of utilizing the available HBM bandwidth is not easy due to many potential factors such as pattern access variability, target design complexity, tools complexity, etc. Therefore, the goal of this work is to identify the potential bottlenecks in the design process thay may affect HBM performance. In this work we will be using the Xilinx’s Alveo U280. There are mainly two ways to develop an application on this device: the Vitis Acceleration Development Flow and the Custom Flow (Vivado Design). The first one provides a framework for developing FPGA accelerated applications using standard programming languages for both software and hardware components. The software component is developed using C/C++ and, in the case of the Alveo FPGA, is run on the CPU which communicates with the device using PCIe; the hardware components, or kernels, instead, can be developed using C/C++ or RTL and get synthesized on the PL part of the device. It is then possible to specify the connections between the kernels and the memories present on the device, like the HBM, and the whole design gets managed automatically. On the other hand, using the Custom Flow, the design must be manually implemented: all the components and their connections must be manually instantiated and configured. This approach, while more complex, potentially may achieve higher performance. To compare the two approaches, a simple application which uses the HBM has been implemented using both flows. The two approaches have been evaluated mainly on the resulting HBM performance, but also on resource utilization, power consumption and ease of the development process. es_ES
dc.format.extent 63 es_ES
dc.language Inglés es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reserva de todos los derechos es_ES
dc.subject FPGAs es_ES
dc.subject Memorias HBM es_ES
dc.subject Vivado es_ES
dc.subject VITIS es_ES
dc.subject HLS es_ES
dc.subject HBM memories es_ES
dc.subject.classification ARQUITECTURA Y TECNOLOGIA DE COMPUTADORES es_ES
dc.subject.other Máster Universitario en Ingeniería Informática-Màster Universitari en Enginyeria Informàtica es_ES
dc.title Performance Analysis of HBM Memory on Reconfigurable Devices Using Different Design Flows es_ES
dc.title.alternative Análisis de Prestaciones de Sistemas Reconfigurables con Memoria HBM Utilizando Diferentes Flujos de Diseño es_ES
dc.title.alternative Anàlisi de Prestacions de Sistemes Reconfigurables amb Memòria HBM Utilitzant Diferents Fluxos de Disseny es_ES
dc.type Tesis de máster es_ES
dc.rights.accessRights Cerrado 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.contributor.affiliation Universitat Politècnica de València. Escola Tècnica Superior d'Enginyeria Informàtica es_ES
dc.description.bibliographicCitation Vivenzo, L. (2022). Performance Analysis of HBM Memory on Reconfigurable Devices Using Different Design Flows. Universitat Politècnica de València. http://hdl.handle.net/10251/188070 es_ES
dc.description.accrualMethod TFGM es_ES
dc.relation.pasarela TFGM\148085 es_ES


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

Mostrar el registro sencillo del ítem