Resumen:
|
[ES] En este documento se presenta el Trabajo de Final de Máster del Máster Universitario en Computación en la Nube y de Altas Prestaciones de la Universidad Politécnica de Valencia, consistente en el desarrollo, optimización ...[+]
[ES] En este documento se presenta el Trabajo de Final de Máster del Máster Universitario en Computación en la Nube y de Altas Prestaciones de la Universidad Politécnica de Valencia, consistente en el desarrollo, optimización y puesta en marcha de un servidor de redes neuronales de altas prestaciones para el apoyo al radiodiagnóstico. La herramienta base utilizada para ello ha sido NVIDIA Triton Inference Server (Triton), un software de código abierto que permite estandarizar el despliegue y la ejecución de redes de inteligencia artificial (Artificial Intelligence o AI) independientemente del entorno de desarrollo en el que fueron construidos, posibilitando su ejecución en cualquier infraestructura hardware basada en CPU o GPU.
En el servidor construido, desplegado en el Hospital General Universitario de Castellón (HGUCS), se han implementado los modelos de AI desarrollados en dos proyectos de investigación liderados por la Universitat Jaume I (UJI) de Castellón, dirigidos ambos al apoyo al radiodiagnóstico para la detección de patologías en los servicios de urgencias hospitalarios: una red neuronal profunda de tipo convolucional y un segundo modelo de tipo transformador visual.
Una de las tareas fundamentales a la hora de implantar una solución de inferencia en AI a escala es completar una fase de optimización que permita cumplir con los requisitos de servicio de latencia y rendimiento de la solución. Para ello, se han realizado ensayos software sobre las redes anteriormente mencionadas, variando parámetros como la concurrencia de clientes, el tamaño de lote de la red neuronal y el tiempo de espera máximo hasta llenar el lote, con el objetivo de reducir la latencia y aumentar el rendimiento.
Estos test se han repetido en máquinas de características diferentes para valorar los cambios de productividad, latencia y rendimiento general en función de la plataforma hardware subyacente. En concreto, se ha trabajado con un nodo con dos GPUs NVIDIA RTX A6000, así como con tres plataformas de alto rendimiento y bajo consumo, Jetson Nano, Jetson Xavier y Jetson Orin, en las que se han probado distintos modos de configuración de la CPU y la GPU para ajustar el rendimiento y el consumo de energía.
Las imágenes a analizar se obtienen en formato DICOM (Digital Imaging and Communications in Medicine), estándar de transmisión y almacenamiento de datos médicos. Dado que Triton carece de soporte para dicho protocolo, ha sido necesario el desarrollo de un módulo extra para comunicarse con el sistema de información del HGUCS. Este modulo también almacena los resultados anonimizados de la inferencia de las imágenes médicas en una base de datos (Database o DB). En un futuro, los datos acumulados se utilizarán para realizar una validación doble ciego que permita comprobar el funcionamiento de las redes en un escenario real, donde una persona experta en radiología diagnosticará las mismas imágenes que el servidor en el HGUCS.
[-]
[EN] This document describes the Master's Dissertation of the Master's Degree in Cloud and High-Performance Computing of the Universidad Politécnica de Valencia, consisting of the de¿velopment, optimization and implementation ...[+]
[EN] This document describes the Master's Dissertation of the Master's Degree in Cloud and High-Performance Computing of the Universidad Politécnica de Valencia, consisting of the de¿velopment, optimization and implementation of a high performance neural network server to support radiodiagnosis. The core tool used to achieve this goal has been NVIDIA Triton Infe¿rence Server (Triton), an open-source software that allows standardizing the deployment and execution of artificial intelligence networks (Artificial Intelligence or AI) regardless of the de¿velopment environment in which they were built, enabling their execution on any hardware infrastructure based on CPU or GPU.
In the built server, deployed at the General University Hospital of Castellón (HGUCS), the AI models developed in two research projects led by the Universitat Jaume I (UJI) of Castellón have been implemented, both aimed at supporting radiodiagnosis for the detection of pathologies in hospital emergency departments: a convolutional deep neural network and a second model of visual transformer type.
One of the essential tasks involved in implementing an AI inference solution at scale is to complete an optimization phase to meet the latency and throughput service requirements of the solution. To this end, software experiments have been performed on the aforementioned, varying parameters such as client concurrency, neural network batch size and maximum waiting time to fill the batch, with the aim of reducing latency and increasing throughput.
These tests have been repeated on machines with different characteristics to assess the th¿roughput, latency and overall performance variations depending on the underlying hardware platform. Specifically, a node with two NVIDIA RTX A6000 GPUs, as well as three high¿performance, low-power platforms, Jetson Nano, Jetson Xavier and Jetson Orin have been tested with different CPU and GPU configuration modes to tune performance and power consumption.
The images to be analyzed are obtained in DICOM (Digital Imaging and Communications in Medicine) format, a standard for transmission and storage of medical data. Since Triton lacks support for this protocol, it has been necessary to develop an extra module to communicate with the HGUCS information system. This module also stores the anonymized results of medical image inference in a database (DB). In the future, the accumulated data will be used to perform a double-blind validation to test the performance of the networks in a real scenario, where a radiology expert will diagnose the same images as the server at HGUCS.
[-]
|