Sistema de Comunicación para Renderización Paralela de Volúmenes en Tiempo Real

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 12

View metadata, citation and similar papers at core.ac.

uk brought to you by CORE


provided by Revista Tecnología y Ciencia (E-Journal)

Universidad Tecnológica Nacional Revista Tecnología y Ciencia

Sistema de Comunicación para Renderización Paralela de


Volúmenes en Tiempo Real

C. F. Perez-Monte1, M. F. Piccoli2, C. Luciano3, S. Rizzi4


1
GridTICs - Universidad Tecnológica Nacional (UTN) - Facultad Reg. Mendoza - Mendoza, Argentina
2
LIDIC - Universidad Nacional de San Luis (UNSL) - San Luis, Argentina
3
University of Illinois at Chicago (UIC) - Chicago, IL, USA
4
Argonne Leadership Computing Facility Argonne National Laboratory (ANL) - Lemont, IL, USA
1
[email protected], [email protected], [email protected], [email protected]

Resumen: Para resolver problemas de gran complejidad como la renderización de volúmenes se utilizan sistemas
de cómputo paralelos con una elevada potencia de cómputo. En este trabajo se presenta la implementación de un
sistema de comunicaciones orientado al mejor esfuerzo, energéticamente eficiente y tolerante a fallas para resolver
la renderización fotorrealista en tiempo real. A fin de conseguir estos objetivos se propone un sistema que utiliza en
capa de Transporte UDP, en capa de Red IPv6 (unicast - multicast) y en capa de Enlace de Datos Gigabit Ethernet con
control de flujo. Al final exponemos algunos resultados experimentales.
Palabras Claves: Volumen, Fotorrealista, IPv6, Ethernet, Tiempo Real.

Abstract: High performance parallel computing systems are used to solve complex problems such as volume rende-
ring. This paper presents the implementation of communications system with the following characteristics: best
effort, energy efficient and fault-tolerant used to solve real-time photorealistic rendering. In order to achieve these
objectives, a system is proposed that used UDP in Transport layer, IPv6 (unicast - multicast) in Network layer and
Gigabit Ethernet with flow control in Link layer. Finally we present some experimental results.
Keywords: Volume, Photorealistic, IPv6, Ethernet, Real Time.

INTRODUCCIÓN modelo de distribución de tareas, constituyendo ambos


el punto de partida para el diseño del protocolo de comu-
La renderización fotorrealista de volúmenes en tiempo nicación propuesto. Para lograrlo, primero revisamos
real requiere una elevada potencia de cómputo para su los conceptos previos, necesarios para el desarrollo del
ejecución debido a la resolución, velocidad de cuadros y trabajo. Luego se detallan los aspectos de diseño y de
efectos de iluminación requeridos. Esta demanda puede implementación considerados en el modelo del sistema
ser resuelta mediante la utilización de un sistema paralelo y del protocolo desarrollado. Finalmente, se explican los
compuesto por numerosos nodos conectados a través beneficios logrados mostrando algunos resultados expe-
de una red. La aplicación de técnicas de paralelización rimentales, las conclusiones y futuros trabajos.
permite distribuir el procesamiento entre los nodos,
usando una red con buen desempeño (performance) RENDERIZACIÓN EN TIEMPO REAL Y FOTORREALISTA
para las comunicaciones.
En este trabajo planteamos un modelo de sistema Un modelo virtual es una representación de un
con diferentes roles para los nodos conectados y un objeto 3D, el cual puede estar descrito ya sea a

Página 272 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

través de polígonos, de un volumen u otra técnica. los algoritmos de renderización utilizados en


En nuestro caso el modelo es un volumen, el cual este caso son del tipo Image Order, existen
constituye una matriz tridimensional compuesto de algunos desarrollos en sistemas con memoria
voxels, cada uno con un nivel de intensidad propor- compartida (Palmer et al., 1998) y en sistemas
cional a la densidad del tejido orgánico. Renderiza- GPU-CPU con memoria distribuida (Bajaj et al.,
ción es un término frecuentemente utilizado para 2000). Si bien en ambos casos se logra un buen
describir el proceso donde a un modelo 3D se le desempeño, la resolución de las imágenes no
realiza un procesamiento, según las condiciones es muy alta. Finalmente con resolución de
de entrada especificada, para generar una imagen imágenes muy superiores, así como también
2D desde un punto de vista del observador. Tanto volúmenes de gran tamaño, se logran exce-
la ubicación del observador como su orientación lentes resultados (Schwarz and Leigh, 2010).
visual forman parte de las condiciones de entrada - En la técnica Sort last o DB, la renderización
más importantes, pudiendo existir otras como la es hecha dividiendo sectores de volúmenes
ubicación de la fuente de iluminación. En la rende- o primitivas, aplicar la renderización y final-
rización en tiempo real, estas condiciones pueden mente realizar la composición de los resul-
variar constantemente debido al cambio de posi- tados parciales y obtener la imagen final. Este
ción del observador o las luces, implicando una método es especialmente adecuado para
generación continua de imágenes 2D. algoritmos de renderizado Object Order para
La renderización fotorrealista tiene como obje- resoluciones de la pantalla de salida no dema-
tivo generar una imagen, cuya percepción visual es siado altas y grandes tamaños de volúmenes
lo más cercana a la realidad. Para lograr este obje- (Engel et al., 2006) (Marchesin et al., 2008).
tivo se usan técnicas de iluminación y sombreado, Ésta es una técnica altamente escalable con
las cuales requieren un procesamiento elevado. una desventaja importante, la necesidad de
interacción entre los diferentes nodos para
RENDERIZACIÓN PARALELA DISTRIBUIDA realizar la composición.
Por último existe, fuera de la taxonomía de
En renderización paralela distribuida existe una Molnar, una tercera técnica de renderización distri-
clasificación, la taxonomía de Molnar (Cox, 1995) buida denominada Alternate Frame Rendering
(Molnar et al., 1994) , la cual básicamente esta- (AFR), muy utilizada en ambientes con varias GPUs
blece dos tipos de técnicas basadas en la manera en una única PC (Monfort and Grossman, 2009). Esta
en cómo distribuye el trabajo entre los diferentes se basa en la distribución de cuadros de pantalla.
nodos de un sistema distribuido. Estas dos técnicas De las tres técnicas antes citadas, 2D y AFR
se conocen con el nombre de Sort first o 2D y Sort pueden ser aplicadas en nuestro sistema, consti-
last o DB, sus principales características son: tuyendo una buena solución para la aplicación en
- La renderización paralela distribuida Sort la renderización fotorrealista en tiempo real. Otras
first o 2D propone la división de la pantalla técnicas específicas propias de algunos algoritmos
en áreas no solapadas, asignando una a cada de renderización también pueden utilizarse.
nodo o unidad de cómputo disponible. De esta Todas estas técnicas pueden combinarse y definir
forma, cada nodo renderiza una sección deter- nuevas políticas aplicables a ambientes distribui-
minada de la pantalla completa. Generalmente dos-paralelos para resolver problemas con gran

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 273
Universidad Tecnológica Nacional Revista Tecnología y Ciencia

demanda computacional. El estudio de estas polí- realizar por los demás nodos, el cual puede estar
ticas de renderización exceden el alcance de la separado del resto del sistema en una red alejada
presente publicación pero el protocolo propuesto permitiendo el control del sistema remotamente;
está adaptado para funcionar con cualquiera de ellas. varios Nodos Procesadores, quienes realizan la
renderización propiamente dicha, y los Nodos
SISTEMA DE RENDERIZACIÓN DISTRIBUIDA Integradores, responsables de reunir y realizar la
EN TIEMPO REAL visualización en tiempo real del volumen. Estos dos
últimos deben estar ubicados físicamente cercanos
El sistema propuesto está compuesto por 3 tipos para su conexión a través de una red de alta perfor-
de nodos, cada uno de los cuales tiene un rol defi- mance y baja latencia. En la siguiente sección anali-
nido. Los roles que puede asumir un nodo en el zamos el modelo de comunicación propuesto para
sistema son: poder gestionar este sistema.
- Nodo Administrador: Es el nodo que gestiona
el procesamiento del sistema al administrar las
variables de entrada recibidas desde un dispo-
sitivo de entrada para transmitirlas por red a
los Nodos Procesadores. Adicionalmente debe
anunciar a los Nodos Procesadores qué Nodo
o conjunto de Nodos Integradores les corres-
ponde. Opcionalmente puede determinar o no
qué procesa cada Nodo Procesador de acuerdo
a políticas de implementación.
- Nodo Procesador: Es el nodo que realiza el
renderizado y envía el trabajo finalizado por
la red al Nodo Integrador. Puede asumir, en el
caso de que el Nodo Administrador no lo haga,
la función de auto asignarse la tarea a procesar.
- Nodo Integrador: Es el nodo que recibe Figura 1. Sistema visualizador.

todas las tareas procesadas y las integra


pudiendo ser el encargado también de realizar MODELO DE COMUNICACIÓN
la visualización en tiempo real de la escena
renderizada. Pueden existir múltiples Nodos Los nodos en el sistema interaccionan entre sí de
Integradores pero existe una limitación, cada una manera específica (ver figura 1), estableciendo
Nodo Integrador tendrá asignado determi- de este modo dos tipos de comunicaciones, las
nados segmentos de la imagen que no podrán cuales son:
estar asignados simultáneamente a otros - Información de control: Esta comunicación
Nodos Integradores. tiene lugar desde el Nodo Administrador a los
Considerando los distintos tipos de nodos, el Nodos Procesadores para enviar la información
sistema de renderización distribuido consta de un de las variables de entrada (también deno-
Nodo Administrador para coordinar las tareas a minadas variables de estado del sistema) e

Página 274 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

información de pertenencia de los segmentos salida) que está compuesta por cuadros sucesivos
de tareas que le permite conocer a los Nodos en el tiempo, se puede dividir en segmentos, cada
Procesadores a cuáles Nodos Integradores uno de los cuales representa una porción de un
enviar cada segmento. Dado los escasos cuadro en un momento determinado del tiempo.
requisitos necesarios de ancho de banda, esta Denominaremos CS (Compute Segment) a cada una
información puede ser transferida a través de de las estas unidades mínimas de transmisión.
enlaces WAN a redes remotas. La utilización de Se puede definir a este CS como una unidad
multicast disminuye los efectos que la latencia mínima de procesamiento a ser asignada a un
de los enlaces WAN pueda ocasionar en el Nodo Procesador de la red. Esto es equivalente a los
funcionamiento del sistema. bloques de CUDA o work-group de OpenCL (Unidad
- Información de salida: Esta comunicación se mínima que procesamiento que puede asignarse a
lleva a cabo entre los Nodos Procesadores y los un Streaming Processor, SM) La diferencia entre ellos
Nodos Integradores. Cada una de ellas contiene está en que un bloque es asignado a un sólo SM de
la información del flujo de transmisión multi- la GPU, en cambio un mismo CS de un mismo cuadro
media distribuido, el cual está compuesto por puede ser procesado (de forma diferente o no) en
los sucesivos cuadros en el tiempo generados más de un nodo, por lo cual el protocolo debe poder
por cada uno de los Nodos Procesadores. contemplar esta situación. Métodos de renderización
Los requisitos de gran ancho de banda y baja iterativos o tolerantes a fallas nodales pueden justi-
latencia requieren de un enlace LAN exclusivo ficar este modo de funcionamiento. Para los casos de
para la comunicación de salida entre los Nodos sistemas en los cuales cada Nodo Procesador utiliza
Procesadores y los Nodos Integradores. su GPU para procesar y conseguir una máxima perfor-
En las siguientes secciones se detallan las prin- mance, los CS deberán tener dimensiones múltiplos
cipales características del protocolo y el modo de de los work-group de OpenCL, por ello el protocolo
funcionamiento. permite que dicho tamaño sea configurable adaptán-
dose a la arquitectura utilizada.
SEGMENTACIÓN DE DATOS Los Nodos Integradores en cambio sólo pueden
ser asignados para recibir CS específicos. Un mismo
Generalmente en entornos de computación masi- CS no puede ser recibido por más de un Nodo Inte-
vamente paralela como el usado en el ambiente de grador. Este tipo de arquitectura permite que los
las arquitecturas GPUs (compuesta por grupos de Nodos Integradores, en caso de ser más de uno,
procesadores SIMD) es común usar modelos en realicen también la visualización en forma distribuida.
los cuales todas las tareas a procesar se dividen La segmentación presenta un nuevo paradigma
en bloques, los cuales son asignados a diferentes para la computación masiva sin estado interno que
procesadores SIMD de la arquitectura (Kirk and denominaremos computación del mejor esfuerzo
Hwu, 2010) . Generalmente es común en sistemas que guarda similitudes con la entrega del mejor
distribuidos contar con nodos con GPU, por ello esfuerzo presente en protocolos de comunicaciones
es importante utilizar un modelo de comunica- de red sin conexión como IP. En el caso de la compu-
ción el cual mantenga sobre el sistema completo tación, ésta se realiza sin garantía de sincronismo
un esquema similar al utilizado por cada nodo. Es mientras que en el caso de la comunicación se hace
por ello que una tarea renderizada (información de sin garantía de entrega.

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 275
Universidad Tecnológica Nacional Revista Tecnología y Ciencia

ESTADO DEL SISTEMA un dispositivo de entrada con información del


tiempo al momento de la captura). El envío se
El estado completo del sistema es definido por el realiza periódicamente con lapsos de tiempo
Nodo Administrador en cada paquete de Informa- inferiores al tiempo de refresco del sistema
ción de control, de forma tal que no hay estados visualizador asegurando así que siempre los
internos almacenados en los Nodos Procesadores. Nodos Procesadores tengan tarea para realizar.
Para una correcta gestión y sincronización de la El Nodo Administrador, también a través de datos
información, cada paquete de Información de de control, le indica a los Nodos Procesadores a
control contiene tres diferentes tipos de conta- cuál Nodo Integrador le corresponde cada CS de
dores: el primero varía en función del tiempo, el pantalla, no pudiendo haber más de un mismo
segundo se incrementa mientras las variables de Nodo Integrador asignado a un CS determinado.
estado no varíen y se resetea cuando estas cambian Cada Nodo Procesador posee una copia
y el tercer contador se incrementa cuando las varia- completa del volumen a renderizar. En la actua-
bles de estado se modifican. lidad el crecimiento del tamaño de la memoria
Existen básicamente dos estados bien definidos de video de las placas GPU es suficiente para
en el sistema, ellos son: almacenar una copia completa de casi cualquier
- Estado Estable: Estado en el cual las varia- volumen médico, además el envío de volúmenes
bles de estado que se envían constantemente a través de la red reduciría el ancho de banda
como información de control no han variado disponible de la red, por lo cual se considera
durante un tiempo lo suficientemente largo desaconsejable dada la capacidad de almace-
permitiendo que todos los Nodos Procesa- namiento de los nodos en la actualidad. Luego
dores posean el mismo estado. cada Nodo Procesador recibe la información
- Estado Inestable: Las variables de estado de control, eligiendo la más actual posible y
varían lo suficientemente rápido de forma tal descartando el resto, y a partir de la cual realiza
que se asignan diferentes variables de estado el procesamiento, generando el tráfico con la
a cada uno de los Nodos Procesadores. información de salida, el cual está compuesto
por grupos de CS correspondientes a cada cuadro
MODO DE FUNCIONAMIENTO renderizado. Este tipo de comunicación se lleva
a cabo mediante envíos unicast a los respectivos
El modo de funcionamiento a través del Nodos Integrador. El envío de esta información
tiempo consta de las varias etapas en donde el se realiza tan rápido como cada Nodo Proce-
estado completo del sistema, compuestos por sador es capaz de hacerlo, el límite lo impone
las variables de entrada y sus correspondiente el procesamiento o el ancho de banda de la red
variables de tiempo, son administradas por el mediante la cual se conectan los Nodos Proce-
Nodo Administrador. A continuación se describe sador con los Nodos Integrador.
la función de cada tipo de nodo en el sistema. Los Nodos Integrador tienen como función
Los Nodos Procesadores se anuncian al Nodo reunir el flujo de transmisión multimedia distri-
Administrador, luego éste envía al grupo multi- buido para finalmente visualizarlo en un sistema
cast de todos los Nodos Procesadores los datos compuesto de tantas pantallas como Nodos
de control (variables de entrada capturadas por Integrador existan.

Página 276 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

CARACTERÍSTICAS E INTER-OPERATIVIDAD rentes generaciones, logrando su integración


DEL PROTOCOLO en sistemas heterogéneos.
- Tolerante a fallas de Nodos Procesador:
El sistema de comunicación diseñado tiene las Cuando la cantidad de Nodos Procesador
siguientes características: crece, las posibilidades de fallo de alguno de
- Mejor esfuerzo: El protocolo, al igual que el ellos se incrementa, razón por la cual ante
sistema en su conjunto, aplica la filosofía del ciertas políticas de renderización, el protocolo
“mejor esfuerzo computacional”. Esto significa está preparado para tolerar la falla de un nodo
que ante limitaciones reales (ancho de banda y continuar trabajando.
de enlace, Nodos Procesador con diferente - Jerárquico: Siguiendo metodología de encabe-
potencia de cómputo, nodos ocupados, etc.), zados opcionales luego de capa de transporte y
el sistema lleva a cabo la tarea aprovechando acompañando los lenguajes de computación de
los recursos y obteniendo los mejores resul- procesamiento universal para plataformas hetero-
tados posibles. Razón por la cual el proto- géneas, se utiliza una jerarquía compatible con los
colo IPv6-UDP es orientado a datagramas, niveles de abstracción de software de las mismas.
siguiendo un modelo de entrega con la misma En las próximas secciones se demuestra la capacidad
filosofía. Así como el protocolo de comunica- del sistema para cumplir con estas características.
ción es orientado a no-conexión y sin garantía
de entrega, la computación es sin estado ARQUITECTURA DE LA PILA DE PROTOCOLOS
interno y sin garantía de sincronismo.
- Tolerante a saturación de enlace: Relacionado La arquitectura del stack de protocolos que se
con el concepto anterior, el protocolo es capaz utiliza para cumplir con los objetivos antes mencio-
de aprovechar al máximo el ancho de banda de nados es la siguiente:
red y ante su saturación, el protocolo es capaz de - Capa de enlace de datos: En el caso de los
continuar funcionando normalmente. La pérdida enlaces entre los Nodos Procesador y Nodos
de información no repercute en el sistema ya Integrador se utiliza el protocolo Ethernet,
que cada datagrama incluye toda la información con control de flujo (opcional) (IEEE Standards
necesaria sobre el estado del sistema. for Local and Metropolitan Area Networks,
- Energéticamente eficiente: El procesamiento 1997). Si se tiene control de flujo se permite,
de información tiene un considerable consumo ante saturación del enlace, a los Nodos Proce-
de energía, principalmente en los Nodos sador sólo procesar aquello que son capaces
Procesador. Como el sistema de comunicación de enviar por la red, reduciendo el consumo
realiza el máximo esfuerzo por transportar energético.
los datos de salida, no siempre es posible - Capa de red: Aplica el protocolo IPv6 (Deering
lograrlo, resultando conveniente procesar sólo and Hinden, 1998) (el estándar de red de
la cantidad de datos que el enlace entre los alcance mundial en su versión más reciente),
Nodos Procesador y los Nodos Integrador sea siendo adecuado para computación distri-
capaz de transportar. buida. Además usa multicast para reducir el
- Económicamente eficiente: En cuanto a la tráfico de información de control.
posibilidad de aprovechar hardware de dife- - Capa de transporte; Protocolo UDP (Postel,

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 277
Universidad Tecnológica Nacional Revista Tecnología y Ciencia

1980). Implementa un protocolo con modelo uno de ellos tienen, además, 3 cabeceras
de entrega de mejor esfuerzo y tolerante a la compuestas de varios campos, estos son:
saturación del enlace. - Cabecera de información general del
La arquitectura propuesta está diseñada utili- sistema (CIGS): Esta cabecera contiene una
zando protocolos de gran difusión permitiendo descripción general de las variables del
su implementación en sistemas heterogéneos de sistema completo. Dicha información se
bajo costo habituales en entornos de investigación repite en cada CS permitiendo la tolerancia
universitaria. La utilización de protocolos de red de a fallas de nodos o de red.
capa de enlace de datos como Infiniband o 10 Gbit - Cabecera de información general del cuadro
Ethernet pueden ser utilizados en un futuro cuando (CIGC): La información enviada en cada CS, gene-
sean de menor costo y mayor difusión. ralmente no varía de CS a CS de un mismo cuadro.
- Cabecera específica de CS (CES): Es informa-
DESCRIPCIÓN DETALLADA DEL PROTOCOLO ción específica de cada CS.
Los requisitos del sistema incluyen entre otros
En el protocolo se distinguen dos tipos de comu- que todos los cuadros del flujo de transmi-
nicación, las cuales: sión de salida tengan la misma resolución y
- Información de Control Multicast: que todos los segmentos de un mismo cuadro
Está constituida por datagramas que tienen tengan el mismo tamaño.
como función principal el envío de los datos El datagrama de la información de salida se
de entrada. Incluyen 3 cabeceras, de las cuales muestra en la tabla 2.
dos son opcionales para el envío de los datos.
Ellas son: REQUISITOS DE ANCHO DE BANDA DE RED
- Cabecera de control (CCm): Es obligatoria, TEÓRICOS Y LATENCIA MÁXIMA DEL SISTEMA
contiene la información de cada CS de control.
- Cabecera de control (CCGo): Es opcional En la presente sección se determinan los requi-
de índole general. Se usa para anunciar a los sitos mínimos de ancho de banda del sistema para
Nodos Procesador. Esta información puede que la red no sea limitante del rendimiento y la
referirse a los propios Nodos Procesador latencia que existe desde el momento que una
(qué CS debe procesar cada uno) o sobre los variable de entrada es ingresada por el dispositivo
Nodos Integrador (qué CS tienen asignado de entrada hasta que la misma se hace efectiva en
cada Nodo Integrador). En CCGo se indica el sistema visualizador. Por último el rendimiento
cuántas cabeceras CCEo hay. que poseerá el sistema en caso de que la red sea
- Cabecera de control específica por nodo limitante del rendimiento.
(CCEo): Es opcional con características espe-
cíficas, contiene información específica para Siendo:
cada Nodo Procesador o Nodo Integrador. m : Número de Nodos Procesador.
El datagrama de la información de control se l : Número de Nodos Integrador.
muestra en la tabla 1. Rx : Resolución horizontal.
- Información de Salida Unicast: Ry : Resolución vertical.
Como esta información se divide en CS, cada BS : Cantidad de bytes por cada pixel.

Página 278 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

Tabla 1. Información de control multicast.

R : Rendimiento en cantidad de cuadros por determinado por la suma de la latencia Nodo Admi-
segundo. nistrador – Nodo Procesador y Nodo Procesador
BW : Ancho de banda de red. – Nodo Integrador, en la cual esta última, por ser
TS : Latencia de renderizado. pequeña, puede despreciarse. El tiempo de trans-
TBW: Tiempo de transferencia del cuadro. ferencia del cuadro en la red puede determinarse
Tn : Latencia de red. según el ancho de banda de la red usada mientras
Tnap : Latencia de red entre Nodo Administrador y que el tiempo de renderizado depende del hard-
Nodo Procesador. ware de los Nodos Procesador.
Tnpi : Latencia de red entre Nodo Procesador y
Nodo Integrador.
T1 : Latencia de interactividad total.

El caso extremo de ancho de banda utilizado Si bien la información de salida puede transfe-
por el canal de comunicaciones en la información rirse a través de redes de baja velocidad, el ancho
de salida estará dado en su funcionamiento con la de banda en este caso será un limitante en el rendi-
técnica AFR o políticas que la utilicen y será: miento máximo del sistema expresado en cuadros
por segundo (R), siendo este:

La latencia total del sistema estará comprendida


por la suma de la latencia en la renderización de Los requisitos antes expuestos no son limitantes del
cada cuadro de la pantalla sumada a la latencia de funcionamiento del sistema, sino umbrales a partir del
la red y al tiempo de transferencia del cuadro de cual el sistema estará limitado por un recurso (potencia
pantalla en la red. El tiempo de latencia de red está computacional) u otro recurso (ancho de banda de red).

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 279
Universidad Tecnológica Nacional Revista Tecnología y Ciencia

Tabla 2. Información de salida unicast.

TRÁFICO DE SALIDA DESPERDICIADO en un medio sin control del flujo, por lo cual
la pérdida de una trama que contiene un CS o
Se le denomina tráfico desperdiciado al tráfico parte del mismo hará que dicho CS no pueda
generado por los Nodos Procesador, el cual no ser reconstruido en el Nodo Integrador.
puede ser procesado por los Nodos Integrador. Si bien el sistema es capaz de funcionar con tráfico
Existen básicamente dos tipos de tráfico desperdiciando, el mismo genera un desperdicio de
desperdiciado: potencia computacional de los Nodos Procesador
- Tráfico desperdiciado por Nodo Integrador: por lo cual es de suma importancia su reducción.
Este tráfico generalmente es por falta de
sincronización. Como los Nodos Procesador RESULTADOS
trabajan en un modelo asincrónico de mejor
esfuerzo, puede ocurrir envíen CS, los cuales Los resultados experimentales se realizaron en un
son recibidos tardíamente. En tal caso, los cluster de computación gráfica de renderizado distri-
Nodos Integrador los descartan. Ocurre lo buido compuesto por 2 Nodos Procesadores, un Nodo
mismo si los buffers de recepción del Nodo Administrador y un Nodo Integrador conectados
Integrador no tienen el tamaño suficiente o mediante una red Ethernet Gigabit. Se utilizó un MTU
trabaja a una velocidad reducida. estándar de 1528 bytes. El tamaño del CS incluido en
- Tráfico desperdiciado por pérdidas de la carga del datagrama UDP fue definido en 48 Kbytes.
enlace: Es todo aquel tráfico generado por Se realizaron modificaciones en parámetros de
los Nodos Procesador y no recibido por los kernel en el Nodo Integrador para incrementar los
Nodos Integrador. Un caso donde ocurre esto buffers de recepción evitando Tráfico desperdiciado
es cuando se produce la saturación del enlace por Nodo Integrador.

Página 280 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

Fig. 2. Potencia de cómputo y Ancho de banda de Nodo 1. Fig. 4. Potencia de cómputo y Ancho de banda de Ambos nodos sin control de flujo.

Fig. 3. Potencia de cómputo y Ancho de banda de Nodo 2. Fig. 5. Potencia de cómputo y Ancho de banda de Ambos nodos con control de flujo.

Las características de la arquitectura de cada uno La potencia de cómputo es definida como la


de los Nodos Procesadores del sistema son: cantidad de pixels procesados por la cantidad n de
- Nodo Procesador 1: Intel Core 2 Duo 4 GB de operaciones realizadas por cada uno de ellos por
RAM GPU GTX560 1GB de RAM. unidad de tiempo. Dicho parámetro es más objetivo
- Nodo Procesador 2: AMD Fx6200 4 GB de que cuadros por segundo (FPS) a la hora de medir el
RAM GPU GTX650 1 GB de RAM. rendimiento de los Nodos Procesadores.
La elección de estos nodos fue con la intención En primer lugar se de la observación de los resul-
de demostrar el funcionamiento con hardware CPU tados de las figuras 2 y 3 es posible determinar que
de diferentes fabricantes y hardware GPU de dife- los nodos 1 y 2 en funcionamiento independiente no
rente generación. poseen pérdidas de potencia de cómputo ni tráfico.
Las figuras 2 y 3 muestran respectivamente las En segundo lugar, a partir de la figura 4 es posible
potencias de cómputo y Ancho de banda de los determinar que sin control de flujo existe un ancho de
nodos 1 y 2. banda desperdiciado por pérdidas de enlace lo que
Las figuras 4 y 5 muestra la potencia de cómputo repercute en Potencia de cómputo desperdiciada.
combinada y anchos de banda medidos sobre el Por último, es posible determinar que en estado
Nodo Integrador con diferentes composiciones del estable, según se observa en la figura 5, con la
sistema, valor de n y control de flujo en Ethernet configuración con control de flujo activada no hay
activado o no. pérdidas de CS y, por lo tanto, no existe desperdicio
n es la cantidad de iteraciones del método de en potencia de cómputo, siendo así, toda la energía
renderizado, la cual permite incrementar el nivel del utilizada en el procesamiento de Nodos Proce-
realismo en forma previa al envío de cada cuadro y sadores aprovechada. También se observa que
la potencia de cómputo de combinada de todos los la potencia de cómputo global está limitada en el
Nodos Procesadores intervinientes se presenta en caso de n=1 por el ancho de banda de red mientras
MOPS (millones de operaciones /segundo). que para n superiores está limitada por la potencia

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 281
Universidad Tecnológica Nacional Revista Tecnología y Ciencia

computacional de los mismos. Así se demuestra su CONCLUSIONES Y TRABAJOS FUTUROS


funcionamiento de computación de mejor esfuerzo.
En los casos de saturación de enlace, para n=1 En este trabajo planteamos un protocolo, el cual fue
y con funcionamiento de los dos nodos en simul- diseñado para un sistema de renderizado distribuido/
táneo, se pudo comprobar una reducción: paralelo en tiempo real. El protocolo cumple con los
En la velocidad del flujo de transmisión con requisitos necesarios para el control y transmisión
respecto a la suma del tráfico de los dos nodos de flujo de transmisión multimedia distribuido. Del
separados. análisis de los resultados derivados de la segmenta-
En la potencia combinada con respecto a la ción de datos, se pudo observar que la técnica usada
potencia de cómputo de los dos nodos separados. es apropiada tanto para la transmisión de datos en
Si bien en los resultados no ha podido mostrarse tiempo real como para distribuir las tareas de proce-
debido a que no es un parámetro cuantitativo, se samiento y de visualización. Además el protocolo
puede señalar que en estado inestable con fuertes propuesto no sólo logra conseguir el mejor esfuerzo,
variaciones del estado del sistema se pudieron sino también ser tolerante tanto a saturación de red
observar pérdidas de CS por Tráfico desperdiciado como fallas de los Nodos Procesador.
por pérdidas en el enlace, las cuales en todos los Entre las posibles extensiones de este trabajo se
casos fueron inferiores al 2% del tráfico total encuentra el análisis del comportamiento cuanto la
Si bien la limitación de la potencia de cómputo conexión de los nodos es a través de Internet, por
combinada la impone el ancho de banda de la red ejemplo el Nodo Administrador está ubicado en redes
utilizada, no hay desperdicio de energía. El ancho de geográficamente alejadas de la red en donde se ubican
banda utilizado es muy cercano al máximo de la red los Nodos Procesador y los Nodos Integrador. Además
por lo cual se puede observar un mejor esfuerzo por se analizará la posibilidad de generalizar el protocolo
conseguir el mayor rendimiento posible. de manera de poder realizar la gestión remota de cual-
En las pruebas en las cuales se ha desactivado quier tipo de procesamiento masivamente paralelo en
el control de flujo de ethernet, se puede observar aplicaciones de tiempo real.
que en los casos de saturación de enlace existe una
pérdida considerable de tráfico. Esto es debido a que AGRADECIMIENTOS
existe una gran fragmentación del tráfico IPv6 en
tramas ethernet, ya que el MTU es mucho menor al Se agradece el asesoramiento y soporte con
tamaño del paquete IPv6, por lo cual, la pérdida de infraestructura de los integrantes de los Grupos
una única trama ethernet generará la pérdida de todo de Investigación GridTICs y LICPaD de UTN-FRM
un CS. Incrementar el MTU o decrementar el tamaño y LIDIC de UNSL.
del CS son posibles soluciones en estos casos. El trabajo es sostenido económicamente gracias
En estas últimas pruebas, si bien el sistema al financiamiento de los proyectos 25J084 “SARA
funcionó con menor performance debido a la gran Operation”, PICT2010/29 “Procesamiento para
pérdida de tramas, mostró tolerancia a falla de CS, visualización utilizando algoritmos paralelos en GPU
simulando además un ambiente similar al caso en y distribuidos en red” ambos de UTN-FRM, PROICO-
el cual hay fallas de Nodos Procesador, pudiendo 30310 de UNSL y otras fuentes de financiamiento
demostrarse su funcionamiento con tolerancia a de grupo GridTICs.
fallas de nodos procesador y saturación de enlace. Este proyecto ha sido realizado gracias al aporte

Página 282 • RTyC - CoNaIISI - Año 13 - Nº 27 Sistema de Comunicación para..., Rizzi, et al.
Revista Tecnología y Ciencia Universidad Tecnológica Nacional

económico de UTN a través de una beca de docto- C., Weiskopf D. “Real-Time Volume Graphics.” A K
rado y al soporte académico de la carrera de Peters, Ltd (2006).
posgrado de UNSL. Marchesin S., Mongenet C., Dischler J. “Multi-gpu
sort-last volume visualization“. In Eurographics
REFERENCIAS Symposium on Parallel Graphics and Visualization
(EGPGV08) (2008).
Cox M.“Algorithms for Parallel Rendering”. PhD Monfort J., Grossman M.“Scaling of 3D Game
thesis, Department of Computer Science, Princeton Engine Workloads on Modern Multi-GPU Systems”
University (1995). - The 1st ACM Conference on High Performance
Molnar S., Cox M., Ellsworth D., Fuchs H.“A Sorting Graphics (HPG-09) (2009).
Classification of Parallel Rendering.” IEEE Computer Kirk D., Hwu W. “Programming Massively Para-
Graphics and Algorithms. Pp 23-32 (1994). llel Processors, A Hands on Approach” , Elsevier,
Palmer M., Totty B., Taylor S. “Ray casting on Morgan Kaufmann (2010).
shared-memory architectures: Memoryhierarchy IEEE Standards for Local and Metropolitan Area
considerations in volume rendering”. IEEE Concu- Networks: “Supplements to Carrier Sense Multiple
rrency, Vol 6, nro 1. Pp 20–35 (1998). Access With Collision Detection (CSMA/CD) Access
Bajaj C., Ihm I., Park S., Song D.. “Compres- Method and Physical Layer Specifications - Specifi-
sion-based ray casting of very large volume data cation for 802.3 Full Duplex Operation and Physical
in distributed environments.” In HPC ’00: Procee- Layer Specification for 100 Mb/s Operation on Two
dings of the The Fourth International Conference Pairs of Category 3 Or Better Balanced Twisted Pair
on High-Performance Computing in the Asia-Pacific Cable (100BASE-T2),” IEEE Std 802.3x-1997 and IEEE
Region-Volume 2. Pp 720–725 (2000). Std 802.3y-1997 (Supplement to ISO/IEC 8802-3:
Schwarz N., Leigh J.,“Distributed Volume Rende- 1996; ANSI/IEEE Std 802.3, 1996 Edition) (1997).
ring for Scalable High-resolution Display Arrays”, Deering S., Hinden R.“Internet Protocol, Version
Grapp – International Conference on Computer 6 (Ipv6) Specification” IETF Standards Track (1998).
Graphics Theory and Applications (2010). Postel J., “User Datagram Protocol” IETF Stan-
Engel K., Hadwiger M., Kniss J. M., Rezk-Salama dard protocol (1980).

Fecha de Presentación: 15/05/15


Fecha de Aprobación: 08/06/15

Sistema de Comunicación para..., Rizzi, et al. RTyC - CoNaIISI - Año 13 - Nº 27 • Página 283

También podría gustarte