Está en la página 1de 55

UNIVERSIDAD DE EXTREMADURA

Escuela Politcnica
MSTER UNIVERSITARIO EN INGENIERA DE
TELECOMUNICACIN (MIT)




Trabajo Fin de Mster MIT


Aceleracin del mtodo de los momentos con
GPU




Manuel Amaya Bentez
Cceres, febrero 2012






UNIVERSIDAD DE EXTREMADURA
Escuela Politcnica
MSTER UNIVERSITARIO EN INGENIERA DE
TELECOMUNICACIN (MIT)

Trabajo Fin de Mster MIT

Aceleracin del mtodo de los momentos con
GPU

Autor: Manuel Amaya Bentez
Fdo:
Director: Luis Landesa Porras
Fdo:

Tribunal Calificador
Presidente: Jos Manuel Taboada Varela
Fdo:
Secretario: Yolanda Campos Roca
Fdo.:
Vocal: Pedro Nez Trujillo
Fdo.:

CALIFICACIN:
FECHA:



Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 5
ndice general
ndice de figuras ...................................................................................................... 7
Resumen .................................................................................................................. 9
Abstract ................................................................................................................. 11
Acrnimos ............................................................................................................. 13
Nomenclaturas....................................................................................................... 15
1. Introduccin .................................................................................................. 17
1.1. Motivacin .............................................................................................. 17
1.2. Antecedentes y estado del arte ............................................................... 17
1.3. Aportacin de este trabajo ...................................................................... 19
1.4. Estructura de esta memoria .................................................................... 19
1. Introduction ................................................................................................... 21
1.1. Motivation .............................................................................................. 21
1.2. Background and state of art .................................................................... 21
1.3. Contribution of this work ...................................................................... 22
1.4. Structure of this work ............................................................................ 23
2. SIE-MoM normal generalizada ..................................................................... 25
2.1. MoM aplicado al electromagnetismo. .................................................... 25
2.2. Formulaciones SIE. ................................................................................ 28
2.2.1. Formulacin normal generalizada. .................................................. 29
3. CUDA sobre Tesla C2070 ............................................................................ 37
3.1. GPGPU ................................................................................................... 37
3.2. Tesla C2070 ............................................................................................ 39
3.3. CUDA ..................................................................................................... 40
4. SIE-MoM en GPU ........................................................................................ 41
4.1. Metodologa ............................................................................................ 41
4.2. Ejemplo empleado para el estudio .......................................................... 42
4.3. Equipos y recursos .................................................................................. 42
4.4. Resultados .............................................................................................. 43
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 6
4. SIE-MoM in GPUs ........................................................................................ 45
4.1. Methodology ........................................................................................... 45
4.2. Example used in this study ..................................................................... 46
4.3. Equipment ............................................................................................... 46
4.4. Results ..................................................................................................... 46
5. Conclusiones y lneas futuras. ....................................................................... 49
5. Conclusions and future works ....................................................................... 51
Bibliografa ............................................................................................................ 53
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 7
ndice de figuras
Figura 2.1: Problema propuesto de radiacin-dispersin. 28
Figura 3.1: Estructura de una GPU NVIDIA con tecnologa Fermi. 38









Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 8


Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 9
Resumen
El inters por incrementar el nmero de supercomputadores y de sus
prestaciones sigue creciendo. El acceso a enormes capacidades de cmputo
permite a los investigadores abordar grandes problemas, cuyo nmero de
variables y operaciones no sera posible resolver de otra forma. Sin embargo los
recursos son limitados y no estn siempre disponibles.
Un caso sera el estudio de problemas de radiacin-dispersin
electromagntica, que suele requerir grandes recursos computacionales. Como
ejemplo concreto tenemos el estudio que lleva a cabo el grupo de HEMCUVE
sobre nanotecnologas, como son los metamateriales y las nanoantenas.
Por otra parte, se est extendiendo el uso de las GPU (Graphic Processing
Units) tanto a nivel de pequeos equipos como de HPC (High Performance
Computers), para su uso como sistemas paralelos de cmputo masivo. Sin
embargo, la tecnologa de estos sistemas no es igual al que emplean las CPU, lo
que hace necesario un estudio de viabilidad para su uso en determinadas
aplicaciones.
El objetivo de este trabajo ha sido estudiar la posibilidad de emplear las
GPU para computar el algoritmo HEMCUVE SIE-MoM empleado en el anlisis
de nanoestructuras, lo que permitira incrementar los recursos computacionales
disponibles a un bajo coste y/o sacar provecho de los ltimos recursos en
supercomputacin.
Conseguido el objetivo planteado, queda abierta la lnea de investigacin
para su extensin a todo el algoritmo y para incrementar los valores de speedup
del mismo.
Palabras clave: SIE, ecuacin superficial integral, MoM, mtodo de los
momentos, aceleracin, GPU, GPGPU, HPC, CUDA, electromagnetismo
computacional.
Para citar:
AMAYA, Manuel. Aceleracin del mtodo de los momentos con
GPU. Direccin: Landesa, Luis. Trabajo fin de mster: Mster en
Ingeniera de Telecomunicacin. [Documento digital]. Universidad de
Extremadura, Escuela Politcnica (Cceres), febrero 2011.

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 10


Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 11
Abstract
The interest in increasing the number of supercomputers and their
performance continues to grow. Access to enormous computing capabilities
allows researchers to tackle major problems whose number of variables and
operations would not be resolved otherwise. But resources are limited and they
are not always available.
A case would be the study of problems of electromagnetic radiation-
dispersion, which usually require large computational resources. As a concrete
example, we have the nanotechnologies studies carried out by HEMCUVE group,
such as metamaterials and nanoantennas.
On the other hand, the use of the GPUs (Graphic Processing Units) is being
spread at both small teams and HPCs (High Performance Computers), for using as
massive computing parallel systems. However, the technology of these systems is
not equal to that used by the CPU, thus requiring a feasibility study for its use in
certain applications.
The aim of this study is to investigate the possibility of using the GPU to
compute the SIE-MoM HEMCUVE algorithm employed in the analysis of
nanostructures, which would increase the available computational resources at
low cost and/or take advantage of the latest resources in supercomputing.
Since the stated objective is achieved, the line of research remains open for
its extension to the whole algorithm and for increasing speedup values.

Keywords: SIE, surface integral equation, MoM, method of moments,
acceleration, GPU, GPGPU, HPC, CUDA, computational electromagnetics.


To index:
AMAYA, Manuel. Aceleracin del mtodo de los momentos con
GPU. Direccin: Landesa, Luis. Trabajo fin de mster: Mster en
Ingeniera de Telecomunicacin. [Documento digital]. Universidad de
Extremadura, Escuela Politcnica (Cceres), febrero 2011.

Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 12
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 13
Acrnimos
API Application programming interface.
CnitS Centro Extremeo de Investigacin, Innovacin Tecnolgica y
Supercomputacin.
CESGA Centro de Supercomputacin de Galicia.
CPU Central Processing Unit.
CUDA Compute Unified Device Architecture
EFIE Electric Field Integral Equation.
FD Finite Difference.
FEM Finite Element Method.
FFT Fast Fourier Transform.
FMM Fast Multipole Method.
GPGPU General-Purpose Computing on Graphic Processing Units.
HPC High Performace Computing.
MLFMM Multilevel Fast Multipole Method.
MLFMA Multilevel Fast Multipole Algorithm.
MoM Method of Moments.
PEC Perfect Electric Conductor.
SIE Surface integral ecuation.


Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 14








Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 15
Nomenclaturas

... , ... A Z a z

Parmetros escalares.
A...Z, a...z

Vectores espaciales.

A...Z, a...z Vectores unitarios.
[ ]...[ ],[ ]...[ ] A Z a z Matrices y vectores columna.
[ ]
T
A Traspuesto de [ ] A .
[ ]

A Complejo conjugado de [ ] A .
1
[ ]

A
Inversa de[ ] A .
() Parte real de A.
() Parte imaginaria de A.
S


Integral de superficie.

PV

Valor principal de la integral.


Gradiente.


Divergencia.
s


Divergencia superficial.


Producto vectorial.

Nmero de onda.


Longitud de onda.

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 16


Permitividad.


Permeabilidad.

Impedancia intrnseca del medio.


Frecuencia angular.
t

Tiempo.
E

Campo elctrico.
H

Campo magntico.
J

Densidad de corriente elctrica superficial.
M Densidad de corriente magntica superficial.
G

Funcin de Green en espacio libre.
n
f

Funcin base.
m
w
Funcin de ponderacin.
( ) Operador lineal.
, f t

Producto interno o escalar entre las funciones f y t .





1. Introduccin
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 17
1. Introduccin
1.1. Motivacin
En los ltimos aos se estn produciendo grandes avances en el campo del
estudio de problemas de radiacin-dispersin electromagntica, lo que est
permitiendo realizar anlisis cada vez ms rigurosos de problemas complejos,
tales como el estudio de nanoestructuras y de fenmenos producidos a altas
frecuencias como los plasmones. Los algoritmos basados en las formulaciones de
la ecuacin integral de superficie (surface integral equation, SIE) estn
mostrndose eficaces en estos casos [Rivero, 2011], pero han de resolver
problemas con miles e incluso millones de incgnitas, lo que supone un alto coste
computacional.
La expansin del uso de la tecnologa de las GPGPU (general-purpose
computing on graphic processing units) en los grandes supercomputadores
[Top500, 2011] abre la posibilidad de emplear las mismas para algoritmos
altamente paralelos. Este es el caso de los algoritmos basados en el Mtodo de los
Momentos (Method of Moments, MoM).
El gran inters cientfico surgido sobre trabajos como [Taboada, 2011], el
hecho de que est basado en formulaciones SIE-MoM y la posibilidad de acceso
al algoritmo que se emple HEMCUVE SIE-MoM, ha llevado al estudio de la
viabilidad de aprovechar la tecnologa de GPU para estos fines.
Por lo tanto este trabajo tiene como objetivo principal determinar si es
posible implementar el algoritmo HEMCUVE SIE-MoM sobre la tecnologa de
GPU y evaluar la posibilidad de continuar esta lnea de investigacin para
conseguir mejoras en el speedup del mismo.
1.2. Antecedentes y estado del arte
Los mtodos numricos basados en la resolucin de las ecuaciones de
Maxwell en forma diferencial y en forma integral, son los que ofrecen las
soluciones ms precisas a problemas generales (fuera de los casos cannicos) de
anlisis electromagnticos.
Los mtodos basados en la forma diferencial como el mtodo de elementos
finitos (Finite Element Method, FEM) [Zienkiewicz; Taylor. 1989] o el de
diferencias finitas (Finite Difference, FD) [Ames. 1977] son muy empleados en el
1. Introduccin

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 18
anlisis de circuitos pasivos de microondas y en el diseo de antenas pero
presentan muchas dificultades ante problemas de radiacin-dispersin donde es
difcil imponer condiciones de contorno adecuadas.
En cambio, los mtodos numricos basados en la resolucin de las
ecuaciones de Maxwell en forma integral s permiten resolver estos problemas,
aunque presentan el inconveniente de tener unos requisitos computacionales
mayores. El mtodo ms extendido debido a sus buenos resultados es el Mtodo
de los Momentos (MoM) introducido por [Harrington, 1993]. Se basa en una
solucin matricial de los problemas y tiene el inconveniente de que al ser aplicado
a grandes estructuras (mltiples incgnitas) implica la necesidad del uso de
grandes cantidades de memoria y de altas capacidades computacionales. Desde
entonces se han desarrollado distintas tcnicas que buscan disminuir estas
limitaciones.
Una de las grandes lneas de investigacin en este sentido han sido las
tcnicas de aceleracin de MoM. De entre stas, la que ha conducido a los
mejores resultados ha sido el Mtodo Multipolar rpido (Fast Multipole Method,
FMM) [Engheta et al., 1992],[Coifman et al., 1993], [Chew et al., 2001] en sus
distintas variantes: la versin multinivel MLFMA (Multi Level Fast Multipole
Algorithm) [Song, J. M., et al., 1995, 1997, 1998], FMM-FFT (Fast Fourier
Transform FMM) [Taboada, J.M., et al, 2009], MLFMA-FFT [Taboada, J.M., et
al, 2010]
Todos los algoritmos comentados intentan aprovechar eficientemente el
desarrollo tecnolgico paralelo que se est llevando acabo en los grandes
supercomputadores. No obstante los lmites (tecnolgicos, econmicos y de
disponibilidad) de sus prestaciones y el creciente desarrollo de tecnologas de
GPGPU que comienzan a integrarse en los supercomputadores, estn abriendo
lneas de investigacin que pretenden aprovechar estos nuevos recursos.
El inters por las GPGPU es antiguo, aparece alrededor de 1978
[gpgpu.org], aunque es a partir de 2006 cuando la batalla entre las dos grandes
compaas ATI y NVIDIA comienza a centrarse en este tipo de tecnologa,
experimentndose as un rpido desarrollo. Actualmente ofrecen relaciones de
GFlops/watio y GFlops/coste muy altas, convirtindolas en rivales potenciales de
las CPU (Central Process Units) cuando de clculos paralelos se trata.
Recientemente, en el campo concreto de los mtodos numricos basados en
SIE, han empezado a aparecer trabajos que evalan el uso de las GPU: soluciones
muy sencillas aplicadas a algoritmos basados en el MoM para PEC (Perfect
1. Introduccin
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 19
electric conductor) [Cwikla, 2010] [Topa, 2011] y aplicados a algoritmos
acelerados como FMM, realizado por el autor de este trabajo [Amaya, 2011].
1.3. Aportacin de este trabajo
Se ha conseguido demostrar que es posible implementar el algoritmo
HEMCUVE SIE-MoM en GPU, manteniendo las estructuras de datos
empleadas en el cdigo original. Esto supone una ventaja a la hora de
compatibilizar CPU con GPU y realizar ampliaciones del algoritmo.
En concreto se ha programado en CUDA (Compute Unified Device
Architecture) la formulacin normal genrica de SIE-MoM. Se trata de la parte
ms costosa computacionalmente del algoritmo. Aunque los valores de speedup
aun no son definitivos, los resultados preliminares obtenidos indican que ser
posible obtener ratios significativos.
Este trabajo hace suponer que las lneas de investigacin que emplean
algoritmos SIE-MoM, podrn desarrollar sus algoritmos para su uso sobre GPU.
Dado que la relacin GFlops/coste en las GPU es mucho mayor que en las CPU y
que, en los grandes supercomputadores comienza a implantarse este tipo de
tecnologas, supondra facilitar el acceso a grandes recursos computacionales.
1.4. Estructura de esta memoria
Esta memoria est dividida en cinco captulos. En el primer captulo se
explican las razones que han llevado a seleccionar el objetivo planteado y cul ha
sido la aportacin de este trabajo.
En el captulo dos se desarrolla la formulacin terica que ha sido empleada
para alcanzar el objetivo propuesto.
A continuacin, el siguiente captulo justifica las caractersticas de la
tecnologa de la GPGPU empleada, as como el funcionamiento general de la API
utilizada.
En el captulo cuatro se detalla la metodologa aplicada y los pasos seguidos
para el anlisis de los resultados, razonndose el uso de los equipos y datos
empleados.
Por ltimo se recogen las conclusiones a las que se ha llegado con este
trabajo y las posibles lneas que permiten darle continuidad al mismo.
1. Introduccin

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 20

1. Introduction
Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 21
1. Introduction
1.1. Motivation
In recent years major advances are occurring in the field of study of
electromagnetic radiation-scattering problems, which is making possible to carry
out increasingly rigorous analysis of complex problems, such as the study of
nanostructures and phenomena produced at high frequencies as plasmons.
Algorithms based on the formulations of the surface integral equation (SIE) are
turning out efficient in these cases [Rivero, 2011], but they have to solve
problems with thousands or even millions of unknowns, which implies a high
computational cost.
The expansion of the use of GPGPU (general-purpose computing on graphic
processing units) technology in large supercomputers [Top500, 2011] opens the
possibility of using these technology for highly parallelizable algorithms. This is
the case of algorithms based on the Method of Moments (MoM).
The great scientific interest has arisen in works such as [Taboada, 2011],
that is based on SIE-MoM formulations and the possibility of access to the
algorithm "HEMCUVE SIE-MoM", have led to the study of the feasibility of
taking advantage of GPU technology for these purposes.
Therefore this study aims to determine whether the algorithm "HEMCUVE
SIE-MoM" can be implemented on GPU technology and then to evaluate the
possibility of continuing this line of research for improving its speedup.
1.2. Background and state of art
Numerical methods based on solving Maxwell's equations in differential
form and integral form, are those that offer the most accurate solutions to general
problems (outside the canonical cases) of electromagnetic analysis.
Methods based on the differential form as the finite element method (FEM)
[Zienkiewicz, Taylor. 1989] or that of finite difference (FD) [Ames. 1977] are
widely used in the analysis of microwave passive circuits and antenna design but
they have great difficulties with radiation-scattering problems where appropriate
boundary conditions are difficult to impose.
1. Introduction

Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 22
Instead, numerical methods based on solving Maxwell's equations in
integral form do provide a solution to these problems, although they have the
drawback of higher computational requirements. The most widespread method
due to its good results is the Method of Moments (MoM) introduced by Harrinton
[Harrington, 1993]. This is based on a matrix solution of problems and it has the
disadvantage that when applied to large structures (multiple unknowns) it implies
the need of using a large amount of memory and high computational capabilities.
Since then they have developed various techniques that seek to reduce these
limitations.
One of the major strands of research in this direction has been the MoM
acceleration techniques. Among them, Fast Multipolar Method (FMM) has led to
improved results [Engheta et al., 1992], [Coifman et al., 1993], [Chew et al.,
2001] in its different variants: the multilevel version MLFMA (Multi Level Fast
Multipole Algorithm) [Song, J. M., et al., 1995, 1997, 1998], FMM-FFT (Fast
Fourier Transform FMM) [Taboada, JM, et al, 2009], MLFMA-FFT [Taboada,
JM, et al, 2010]
All the aforementioned algorithms attempt to make efficient use of parallel
technological development which is taking place in large supercomputers.
Nevertheless, the limits (technological, economic and availability) of their
performance and the increasing development of GPGPU technologies that are
beginning to integrate supercomputers are opening lines of research that seek to
exploit these new resources.
The interest in GPGPU is old, it appears around 1978 [gpgpu.org], although
it is from 2006 when the battle between ATI and NVIDIA large companies began
to focus on this technology, experiencing a rapid development. They currently
offer too high GFlops/watt and GFlops/cost relationships, making them potential
rivals of the CPU (Central Process Units) when it comes to parallel calculations.
Recently, in the particular field of numerical methods based on SIE, it has
begun appearing studies that evaluate the use of GPU: applied to algorithms based
on the MoM [Cwikla, 2010] [Topa, 2011]... and applied to fast algorithms as
FMM made by the author of this work [Amaya, 2011].
1.3. Contribution of this work
It has been demonstrated that the "HEMCUVE SIE-MoM" algorithm can be
set up in GPU, keeping the data structures used in the original code. This is an
advantage for combining GPU with CPU and to enlarge the algorithm.
1. Introduction
Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 23
In particular, it has been programmed the standard generic formulation of
SIE-MoM in CUDA (Compute Unified Device Architecture). This is
computationally the most expensive part of the algorithm. Although the speedup
values are not yet definitive, preliminary results indicate that significant ratios
may be obtained.
This work suggests that researches using SIE-MoM algorithms may develop
algorithms for their use on GPU. Because the relationship GFlops/cost on the
GPU is much higher than on the CPU and this type of technology begins to be
implanted in large supercomputers, it would provide access to large computational
resources.
1.4. Structure of this work
This statement is divided into five chapters. In the first chapter we explain
the reasons of selecting the stated objective and which the contribution of this
work is.
In chapter two the theoretical formulation that has been used to achieve the
objective is developed.
Then, next chapter justifies the characteristics of the GPGPUs technology
used and the overall operation of the API used.
The fourth chapter details the methodology used and the steps followed to
analyze the results, arguing the use of equipment and data used.
Finally, the conclusions reached with this work and possible lines that give
continuity.

1. Introduction

Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 24

2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 25
2. SIE-MoM normal generalizada
En los siguientes apartados se desarrolla la formulacin que ha sido objeto
de su implementacin en los paradigmas de computacin paralela de las GPU de
NVIDIA. En primer lugar se repasa el Mtodo de los Momentos que
posteriormente ser aplicado para la resolucin de la formulacin integral
superficial normal generalizada. Esta formulacin es parte de la empleada por el
algoritmo HEMCUVE SIE-MoM para el estudio electromagntico de objetos
penetrables.
2.1. MoM aplicado al electromagnetismo.
El Mtodo de los Momentos (MoM) es un mtodo numrico de resolucin
de ecuaciones lineales continuas, que permite transformarlas en un sistema de
ecuaciones lineales finito, pudindose as resolver de manera matricial en un
ordenador. Fue introducido por R.F. Harrington [Harrington, 1993] como
alternativa a los procedimientos analticos empleados en el campo del
electromagnetismo.
Estos sistemas lineales son de la forma:

( ) = f g (2.1)
donde es un operador algebraico lineal que define una transformacin
entre el espacio vectorial
f
y el espacio vectorial
g
, g es un parmetro
conocido (en adelante fuente o excitacin) y f es la incgnita a determinar.
El MoM plantea la solucin de estos sistemas realizando dos pasos
principales: en primer lugar expande la funcin incgnita en una serie de
funciones conocidas (en el dominio de ), quedando por determinar una serie de
coeficientes constantes complejos; en el segundo paso realiza la ponderacin del
problema, mediante el producto simtrico o producto escalar (producto interno)
con funciones test, obtenindose as un sistema lineal que permite resolver las
incgnitas del problema.
Por lo tanto, aplicando MoM a la ecuacin (2.1) tenemos que:

n
=

f f
n n
(2.2)
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 26
donde
n
son coeficientes complejos constantes (incgnitas) y f
n
son el conjunto
de funciones linealmente independientes (conocidas) denominadas funciones de
expansin o funciones base.
La ecuacin (2.2) permite obtener soluciones exactas pero el orden del
sumatoria debe ser infinito (menos en anlisis sencillos). Sin embargo de forma
general se puede resolver numricamente truncando el sumatorio, obtenindose
as la solucin aproximada,

N
n 1 =

f f
n n
(2.3)
que al ser sustituida en (2.1) se obtiene:

( )
1 =

f g
N
n n
n
(2.4)
En este punto se aplica el segundo paso de MoM: para poder convertir la
ecuacin (2.4) en un sistema lineal de ecuaciones es necesario aplicar esta
ecuacin sobre M puntos o regiones del espacio vectorial
g
. Para ello se
selecciona un conjunto de M funciones de ponderacin o funciones test
w
1
, w
2
, w
m
en el rango de . La aplicacin de (2.4) sobre cada una de las
funciones test de este conjunto se realiza mediante un producto simtrico o un
producto escalar (interno):

( )
1
, ,
=
=

w f w g
N
n m n m
n
(2.5)
De esta forma se obtienen M ecuaciones lineales de la forma de (2.5). Suele
escogerse M=N para que la solucin al problema sea nica.
La notacin de , se refiere tanto a producto simtrico como a producto
interno. En caso de producto simtrico,
, =

f g f g
S
ds (2.6)
Para el caso de producto escalar o interno,
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 27
,

f g f g
S
ds (2.7)
Siendo

g el complejo conjugado de g .
Para el caso de problemas de dispersin y radiacin electromagntica, es un
integro-diferencial que se obtiene a partir de las ecuaciones de Maxwell y la
aplicacin de las condiciones de contorno del problema, f es la distribucin de
corriente inducida que se desea obtener y g es un campo incidente conocido, la
excitacin del problema. De esta forma en [Harrinton, 1993] el sistema lineal
(2.5) se representa como un sistema matricial de la forma
| | | | | | = Z I V (2.8)

| |
( )
( )
( )
( )
( )
( )
( )
( )
( )
1 1 1 2
2 2 2 2
1
, , ,
, , ,
, , ,
(
(
(
( =
(
(
(

w f w f w f
w f w f w f
w f w f w L f




m n
m n
N m n m n
Z (2.9)

| | | |
1 1
2 2
1
,
,
,
( (
( (
( (
= =
( (
( (

w g
w g
w g

n

I V

(2.10)
Donde Z
NxN
es la matriz generalizada de impedancias o acoplos entre
funciones bases, | |
Nx1
V corresponde al vector de excitaciones y el vector | |
Nx1
I
recoge las corrientes incgnitas.
Para poder obtener el vector de incgnita | |
Nx1
I se puede llevar a cabo por
mtodos directos como la inversin de la matriz Z
NxN
o su factorizacin. Sin
embargo estos mtodos tienen el inconveniente de requerir grandes cantidades de
memoria y un elevado coste computacional. Por ello existen tcnicas y variantes
que permiten obtener | |
Nx1
I sin necesidad de calcular explcitamente Z
NxN
:
FMM, nested-FMM, FMM-FFT, MLFMA, MLFMA-FFT...
Si se aplica el producto simtrico, que garantiza el cumplimiento del
teorema de la reciprocidad [Wang, 1991], y se establecen como funciones test
n
w
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 28
las mismas funciones base f
n
(mtodo de Galerkin), se consigue reducir los
requerimientos de memoria y tiempo de computacin de forma significativa.

2.2. Formulaciones SIE.
Las formulaciones basadas en la ecuacin integral de superficie (surface
integral ecuation, SIE) son una forma de resolucin de problemas de anlisis
electromagntico basadas en la utilizacin de las ecuaciones de Maxwell en su
forma integral y aplicadas sobre objetos de los que nicamente se requiere
modelar su superficie. Tiene ventajas en el anlisis de problemas a altas
frecuencias y al establecer las condiciones de contorno. Sin embargo presenta los
inconvenientes de requisitos de memoria y tiempos de computacin altos.
En el siguiente apartado se explica la formulacin SIE [Rivero, 2010] que
est implementada en el software de HEMCUVE que ha sido empleado para la
realizacin de este trabajo, por los motivos expresados anteriormente. Se trata de
la formulacin normal que permite su aplicacin tanto en el anlisis de PEC y
como de materiales penetrables.
La formulacin que se va a desarrollar surge como solucin al siguiente
problema de radiacin-dispersin electromagntica: se pretende estudiar el efecto
de una onda electromagntica plana incidente sobre un material penetrable.

Figura 2.1: Problema propuesto de radiacin-dispersin.
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 29
El problema que se muestra en la Figura 2.1 establece las siguientes
consideraciones:
- En el interior del objeto puede existir un campo electromagntico
proveniente de una onda exterior o de una fuente interior.
- Las bases que componen la superficie del objeto, radian tanto hacia el
exterior como hacia el interior.
- Al tratarse de un objeto penetrable, aparecen densidades de corriente
elctrica y magntica.
- La condicin de contorno fundamental es la de continuidad de los campos
en la frontera entre ambos medios.
2.2.1. Formulacin normal generalizada.
Esta formulacin pertenece al estudio de las componentes normales de los
campos y como se mostrar, permite hacer uso de la formulacin CNF (Combined
Normal Field) o N-Mller [YL-OIJALA, 2005] segn se determinen dos
constantes de ponderacin. Es una evolucin de la formulacin PMCHWT
(Poggio-Miller-Chang-Harrington-Wu-Tsai) [Mautz, 1979].
Partiendo del problema planteado en la Figura 2.1, las consideraciones
previas, las ecuaciones de Maxwell y los teoremas de induccin y equivalencia, se
definirn las ecuaciones integrales de campo elctrico (EFIE) y de campo
magntico (MFIE) correspondientes a cada una de las regiones (R1 y R2). Para
simplificar su comprensin, en un principio se desarrolla una formulacin para un
medio genrico l para posteriormente ser aplicado a cada una de las dos regiones.

Obtencin de la formulacin normal para ambos medios
Se define la EFIE
l
y la MFIE
l
como
M E : n =
l l l l
EFIE (2.11)

: J n H =
l l l l
MFIE (2.12)
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 30
Tal y como se indica en el planteamiento del problema, por el principio de
superposicin, el campo total en el punto de observacin (r) es igual a la suma del
campo incidente ms el campo dispersado. Al aplicarlo sobre E y H se tiene que:

( ) E E E J, M = +
inc scat
l l l
(2.13)

( ) H H H J, M = +
inc scat
l l l
(2.14)
Aplicando las ecuaciones de Maxwell se puede llegar a expresar los campos
dispersados como funcin de las corrientes elctricas y magnticas (simplificacin
matemtica ya que no se ha probado su existencia) que aparecen en la superficie S
debidas al campo incidente:

( ) ( ) E J M = +
scat
l l l l l l
(2.15)

( ) ( )
1
H J M =
scat
l l l l l
l

(2.16)
Se define el operador
( )
l
como aquel que al ser aplicado sobre una
densidad de corriente X nos devuelve el campo radiado por dicha corriente,
exceptuando las constantes.
( )
2
1
G X X X
(
= +
(

' '
l l
l
j Gds ds

(2.17)
Por otra parte, se define el operador
( )
l
como aquel que aplicado sobre
una densidad de corriente elctrica devuelve, excepto constantes, el campo
magntico radiado por dicha densidad de corriente y si se aplica a una corriente
magntica, devuelve, excepto constantes, el campo elctrico radiado por esa
densidad de corriente.
( )
l
es un operador que implementa las leyes de Faraday
y de Ampere:
( ) ( )
1
2
, l
X X n X = +
l l PV
(2.18)
donde
( )
,
X
l PV
es el valor principal de la integral, lo que equivale a
( ) G
,
X X =

l PV
PV
ds' (2.19)
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 31
siendo G la funcin de Green en el espacio libre

j
jR
e e
G
4 4R
'
r r
r r'


= =

(2.20)
y G la divergencia de la funcin de Green y R el mdulo |r-r|

( )
jR
1 e
R
4R
'
r, r

| |
= +
|
\ .
G j
R
(2.21)
Al sustituir estas ltimas expresiones en (2.15) y en (2.16) se pude obtener
las expresiones N-EFIE (2.11) y N-MFIE (2.12) de la forma:
( ) ( )
( ) ( )
1
2
1 1
2
l l , l l l
l , l
: M n J n M n n M n E
: n

M n H J J
= +
| |
+ + =
|
\ .

inc
l l l l l l PV l l l
inc
l l PV l l l l l
l
N EFIE
N MFIE K L

(2.22)
Teniendo en cuenta que el problema planteado en la Figura 2.1 est
compuesto por dos medios, es necesario llevar a cabo una combinacin de la
formulacin correspondiente a cada medio de la forma:

( )
1 1 2 2
1 1 2 2
. .
. .


c N MFIE c N MFIE
d N EFIE d N EFIE
(2.23)
en la que c
1
, c
2
, d
1
y d
2
son unos coeficientes de ponderacin constantes que
permiten determinar el tipo de formulacin (CNF o N-Mller) deseada.
Combinando las expresiones (2.22) y (2.23) se obtiene
( ) ( ) ( ) ( )
1 2
1 1 1 1 1 1 2 2 2 2 2 2 1 2
1 2
1 1 1 2 2 2
1 1
2 2
, ,
n J M n J M J J
n H

n H
| | | |
+ + + =
| |
\ . \ .
=

PV PV
inc inc
c c
c c

c c

(2.24)
( ) ( ) ( ) ( ) ( ) ( )
1 2
1 1 1 1 1 1 1 2 2 2 2 2 2 2 1 2
1 1 1 2 2 2
2 2
, ,
n J M n J M M M
n E n E


+ + =
= +

PV PV
inc inc
d d
d d
d d
(2.25)
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 32
En este punto se aplica la condicin de contorno de continuidad de los
campos en la superficie S:

1 1 1 2 2 2
1 1 1 2 2 2
1 2
1 2
1 2
1 2
, ,
M n E ;M E
J n H ;J n H
H



H
n n n
J J J
M M M

= =
= =
=
= =
= =
= =
n
tan tan


(2.26)

Convirtiendo las expresiones (2.24) y (2.25) en
( ) ( ) ( ) ( )
1 2
1 1 1 2 2 2
1 2
1 1 2 2
1 1
2 2
, ,
n J M n J M J J
n n H H
| | | |
+ + + + =
| |
\ . \ .
= +
PV PV
inc inc
c c
c c

c c

(2.27)
( ) ( ) ( ) ( ) ( ) ( )
1 2
1 1 1 1 2 2 2 2
1 1 2 2
2 2
, ,
, ,
n J M n J M

M M
n E n E
+ + + =
=
PV PV
inc inc
tan tan
d d
d d
d d

(2.28)

Al agrupar por tipo de incgnita se llega a las expresiones matemticas que
definen el comportamiento de los campos y densidades de corrientes en ambos
medios:
( ) ( ) ( ) ( ) ( ) ( )
( )
1 2
1 1 2 2 1 2 1 2
1 2
1 1 2 2
1
2
, ,

n J J n M M J
n H H
| |
+ + =
|
\ .
= +
PV PV
inc inc
c c
c c c c

c c

(2.29)
( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
1 1 1 2 2 2 1 1 2 2
1 2 1 1 2 2
1
2
, ,
n J J n M M
M n E E

+ +
+ + = +
PV PV
inc inc
d d d d
d d d d

(2.30)


2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 33
Aplicacin del mtodo de los momentos
En este punto tenemos como incgnitas las corrientes elctricas y
magnticas (simplificacin) que pueden determinarse al emplear el mtodo de los
momentos. Por lo tanto en primer lugar se procede a la expansin de las corrientes
en sumatorios de funciones bases f
n
(r) conocidas, por coeficientes complejos (J
n

y M
n
), que pasarn a ser las incgnitas. Se obviarn las dependencias de los
operadores con r y r.
( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
1 2
1 1 2 2 1 2
1 2
1 1
1 2 1 1 2 2
1
1
2
, ,
n f f n f f
f

n H H
= =
=
| | | |
+
| |
\ . \ .
| |
+ + = +
|
\ .


N N
n PV n PV n n n n
n n
N
inc inc
n n
n
c c
J c c M

M c c c c

(2.31)
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
1 1 1 2 2 2 1 1 2 2
1 1
1 2 1 1 2 2
1
1
2
, ,
n f f n f f
f

n E E
= =
=
+ +
| |
+ + = +
|
\ .


N N
n n n n PV n PV n
n n
N
inc inc
n n
n
J d d M d d
J d d d d

(2.32)
Que expresado de forma matricial queda como
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( )
( )
( )
( )
1 2
1 1 2 2 1 2
1 2
1 1 1 2 2 2 1 1 2 2
1 2
1 1 2 2
1 1
1 2
1
0
2
1
0
2
, ,
, ,
n f f n f f
n f f n f f
f
n H


H
n E
f

( | |

( |
+
\ .
(

( | |
+
| (
+
( \ .
(
+ =
`
(
(
| | +

+
( |

\ . )
J
M


PV n PV n n n
n n PV n PV n
inc inc
n
inc
n
c c
c c

d d d d
c c
c c
d d
d d
( )
2 2
E
(
(
(

inc
(2.33)

El siguiente paso en el mtodo de los momentos es el procedimiento de
ponderacin, es decir, aplicaremos la expresin (2.33) al conjunto de funciones
test f
m
para crear un sistema lineal con la siguiente forma matricial:
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 34
( )
( )
( )
( )
1 2 1 2
1 2
1 2
1 2
1 2 1 2
1 1 2 2 1 2
1 2
1 2
1 2
1 2
1 2
1 2
1
0
2
1
0
2

(

(
+

(
+
( + (
(
+ = ( (`
(
+
( (

+
(
)
J
M
mn mn mn mn
mn mn mn mn
mn
m m
m m
mn
c c
c B' c B' A' A'

d A' d A' d B' d B'
c c I'
c c' c c'
d b' d b'
d d I'
(2.34)

donde

( )
( )
i
i
12
m n
m n
m
m
m
f , n f
f , n f
f , n E
f , n H
f ,

=
=
=
=
=
mn
I'
i
mn
i
mn
i inc
m i
inc
m i
n
A'
B'
b'
c'

(2.35)
De esta forma, calculando los valores de
i
mn
A y
i
mn
B se pueden obtener los
valores de J y M por inversin o descomposicin de la matriz o por mtodos
numricos.

Clculo de los coeficientes
i
mn
A y
i
mn
B
Para obtener
i
mn
A hay que tener en cuenta que el producto simtrico est
determinado por (2.7) y que el operador
( )
i
determinado por la expresin
(2.17):

( ) ( ) ( )
( ) ( )
2
G
1
G
m n
m
f r n f r' r, r'
f r n r, r

'

(
(

(



m n
m n
i '
mn i
S S
'
i
S S
A j ds ds
ds ds

(2.36)
2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 35
correspondiendo G(r,r) a la funcin de Green en el espacio libre:

( )
j
jR
e e
4 4R
'
r r
G r, r'
r r'


= =

(2.37)
En el caso del operador
i
mn
B el operador
i
viene determinado por la
expresin (2.18):

jR
1 e
R
4R
m n

f f n

| |
= +
|
\ .

m n
i
mn
S S
B j ds'ds
R
(2.38)
Con c
i
=1 y d
i
=1 tendramos formulacin CNF y con c
i
=
i
y d
i
=
i

formulacin N-Mller.



2. SIE-MoM generalizada
Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 36

3. CUDA sobre Tesla C2070

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 37
3. CUDA sobre Tesla C2070
En los siguientes apartados se explican los motivos que han dado lugar a la
seleccin de las GPU de NVIDIA y de sus API (Application Programming
Interface) para el desarrollo de este trabajo. Para situar la eleccin, se empezar
por introducir los conceptos necesarios sobre GPGPU y las tecnologas
disponibles.
3.1. GPGPU
El concepto de GPGPU (General-Purpose Computing on Graphics
Processing Units), GPGP o GP2, hace referencia al aprovechamiento de la
capacidad de cmputo de los procesadores grficos (Graphics Processing Units ,
GPU) en el campo de la supercomputacin o HPC (High Performance
Computing).
Las actuales caractersticas de los procesadores grficos (gran paralelismo,
buen rendimiento en como flotante, baja relacin precio/potencia de clculo y baja
relacin GFLOPS/watt) ha dado lugar a la expansin de su uso en mltiples
aplicaciones de HPC, como en la simulacin y el mbito cientfico [referecias a
top 500]. Las tarjetas grficas con estos procesadores grficos que en un principio
fueron concebidos para rotar matrices estn readaptando sus libreras y su diseo
estructural para el cmputo fsico y matemtico, que est dando lugar a aumentar
la velocidad de procesamiento de aplicaciones de gran inters cientfico.
Las GPU actuales tienen como unidad bsica de funcionamiento un SM
(Stream Multiprocessing) compuesto por varios SIMD (Single Instruction
Multiple Data) cores. Por lo tanto de partida (depende de la tecnologa de la
GPU), segn las definiciones de la Flynns taxonomy, cada SM ejecuta la
misma instruccin en sus cores de forma simultnea, pero pudiendo cada uno de
ellos emplear distintos datos para las operaciones. La gran ventaja para el
cmputo paralelo, que tambin supone una variable a la hora de fabricar este tipo
de hardware, reside en la posibilidad de crear GPU con varios SM, de forma que
cada SM puede ejecutar instrucciones de forma independiente. Este es el motivo
por el que se suele clasificar a las GPU como tecnologa SIMT (Single Instruction
Multiple Threads) [Farber, 2011].


3. CUDA sobre Tesla C2070

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 38



Figura 3.1: Estructura de una GPU NVIDIA con tecnologa Fermi.
Fuente: [http://nf.nci.org.au/wiki/Xe/Gpu/Usage]
Este tipo de tecnologas tiene como ventaja la facilidad de incrementar la
capacidad de cmputo paralelo a bajo coste pero con algunas restricciones. En
concreto, los recursos del SM se reparten entre sus cores y la divergencia en el
clculo de un thread provoca la prdida de speedup, por el delay introducido en el
resto de hilos que se computan en el mismo SM, pudiendo alcanzar un retraso
igual al nmero de cores del SM.
3. CUDA sobre Tesla C2070

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 39
No todas las aplicaciones pueden aprovechar las ventajas del uso de las
GPGPU, ya que por su estructura hardware estn indicadas para algoritmos con
un alto grado de paralelismo en el que se ejecuten preferentemente las mismas
instrucciones y en el que se minimice el acceso a la memoria RAM de la CPU
[Farber, 2011].
Actualmente los fabricantes que disputan la mayor batalla en este campo
son NVIDIA y ATI. La apuesta por el desarrollo de API privadas o basadas en
estndares est manteniendo las diferencias: NVIDIA ha impulsado fuertemente
el desarrollo de sus API CUDA, as como de libreras y middlewares, que tiene
compatibilidad con multitud de lenguajes: C, C++, OpenCL, Fortran, Java &
Phyton; ATI sin embargo est dando la misma importancia a su API privada
como al soporte de OpenCL, lo que le permite tener una mayor compatibilidad
con otras tecnologas.
3.2. Tesla C2070
La tarjeta grfica utilizada para realizar este trabajo es la Nvidia Tesla
C2070. Su eleccin se debe que es la GPU de mayor rendimiento para HPC que
podamos instalar [NVIDIA. Why Choose Tesla, 2011] dada la eleccin por la
tecnologa CUDA que realizamos en base al desarrollo de su software.
La tarjeta Tesla C2070 est destinada a entornos de HPC (double & float)
aunque tambin puede usarse como procesador grfico tpico ya que dispone de
dos salidas DVI. Sus caractersticas principales son: 14 SM Fermi de 32 cores
(1,15 GHz para doble precisin), lo que supone una velocidad terica de 515
GFlops en doble precisin y 1030 GFlops en simple precisin. Tiene una memoria
6 GB de GRAM (384 bit 1494 MHz).
Para poder implementar HEMCUVE SIE-MoM para esta tarjeta es
necesario conocer algunos detalles importantes de su hardware: cada SM pude
planificar el proceso de 45 bloque de hilos de forma concurrente (correspondera a
la mxima ocupacin), y los ejecuta en 2 warps simultneos de 16 threads si la
precisin es menor a doble y en caso contrario lo hace en un nico warp de 32
hilos; el nmero mximo de registros disponibles por bloque es de 32768; el
tamao mximo de memoria compartida en cada bloque es de 49152 bytes.
3. CUDA sobre Tesla C2070

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 40
3.3. CUDA
La decisin de emplear la tecnologa NVIDIA viene determinada
principalmente por el amplio desarrollo que tiene en su software para
desarrolladores. CUDA es la API (application programming interface) privada
desarrollada por NVIDIA para sus tarjetas grficas compuesto por un compilador
nvcc y el kit de desarrollo SDK (Software Development Kit). CUDA tiene
varias versiones de su API, que se presentan de ordenadas de mayor a menor
nivel:
The data-parallel C++ Thrust API.
The runtime API, which can be used in either C or C++.
The driver API, which can be used with either C or C++.
Para este proyecto se hace un estudio preliminar para determinar que la
runtime API era la adecuada: el nivel de abstraccin de la API Thrust no permite
crear las estructuras de datos necesarias para este proyecto; la driver API no es
necesaria, ya que no se necesita un acceso a tan bajo nivel.
CUDA ofrece multitud de libreras y compatibilidad con distintos lenguajes
de programacin. Aunque OpenCL ofrece la portabilidad a otras tecnologas, no
permite mantener la coherencia con el software original y tampoco permite su
aprovechamiento en otro software desarrollado por HEMCUVE. Por lo tanto se
determin mantener el desarrollo en C++, recientemente (junio 2011) soportado
por CUDA.
Como el soporte de C++ en CUDA es reciente, no hay suficientes libreras
para CUDA que sustituyan las empleadas en el cdigo C++ (Standard, TNT) lo
que ha supuesto el primer gran handy-cup de este trabajo.
4. SIE-MoM en GPU

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 41
4. SIE-MoM en GPU
A continuacin se desarrolla la metodologa empleada para la
implementacin del algoritmo HEMCUVE SIE-MoM que se propone en este
trabajo, as como el mtodo de evaluacin que se ha seguido. Por ltimo se detalla
una relacin de los equipos que han sido empleados para obtener los citados datos.
4.1. Metodologa

Antes de proceder a la implementacin del algoritmo HEMCUVE SIE-
MoM en las GPU se estudi qu caractersticas deba tener para hacer viable su
explotacin:
- Mantener la estructura original del cdigo y desarrollarlo de forma
paralela: esta premisa permite que cualquier otro miembro de
HEMCUVE pueda situarse fcilmente en cualquier lnea del cdigo y
poder realizar estudios comparativos de velocidad o estudios del error.
- Evitar el uso de libreras modificadas: para facilitar su exportacin a otros
sistemas.
Por otra parte, tal y como se ha comentado anteriormente, dado que el
algoritmo de partida permite realizar anlisis normal, tangencial o combinado, se
establece que sea implementado el anlisis normal porque supone mayor coste
computacional, permitiendo determinar mejor las bondades del uso de las GPU
para algoritmos SIE-MoM.
El ltimo paso antes de proceder a implementar el algoritmo en las GPU es
estudiar el algoritmo de partida para:
- Determinar qu tipo de estructuras de datos necesitan ser rediseadas para
conseguir el alineamiento en memoria requerido para adaptarnos a la tecnologa
empleada.
- Determinar qu solucin se va a emplear para crear libreras sustitutas que
funcionen en CUDA para dar soporte a las libreras Standard y TNT.

4. SIE-MoM en GPU

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 42
El desarrollo en CUDA se realiza inicialmente sobre un equipo porttil con
tecnologa Optimus, lo que en un principio supone un reto dado que es necesario
realizar modificaciones sobre los driver que aun no permitan este tipo de trabajos.
El sistema operativo para esta parte es Windows 7 puesto que NVIDIA ha
desarrollado las herramientas ms potentes de depuracin para esta plataforma.
La parte del desarrollo en CUDA que permita afinar el paralelismo y
estudiar los resultados se realiza sobre un servidor Linux (ver siguiente apartado)
con tarjetas Tesla C2070, empleando para ello el software que NVIDIA tiene
disponible.
Para valorar la idoneidad del mtodo propuesto, se calcular el speed-up
alcanzado con respecto al tiempo empleado para el clculo de la matriz Z. No se
tiene en cuenta los tiempos empleados para el intercambio de datos entre la
memoria RAM del equipo y la GRAM de las GPU por ser muy poco
significativos en estos clculos. La determinacin del speed-up alcanzado se
calcula comparando el tiempo empleado por un core-CPU frente al empleado por
una tarjeta GPU al completo.
4.2. Ejemplo empleado para el estudio
Las simulaciones de este algoritmo se han realizado sobre un cubo de
dimensin 0,5 de lado, compuesto por un total de 450 bases, resultando un total
de 900
2
=810000 elementos (J y M) para la matriz Z.
4.3. Equipos y recursos
El trabajo de anlisis del algoritmo HEMCUVE SIE-MoM y su desarrollo
inicial se ha realizado sobre un equipo porttil con procesador I5
560M@2,67GHz, sistema grfico con tecnologa Optimus (tarjeta integrada +
tarjeta discreta) y tarjeta NVIDIA Geforce GT420m de 96 cores @1GHz y
1GHz@800MHz (128bit) GRAM. El sistema operativo empleado en este caso es
Windows 7 64bit debido a que NVIDIA tiene el software ms potente de
desarrollo en esta plataforma.
Para el desarrollo del paralelismo y realizacin de simulaciones se ha
empleado un servidor Tesla con 4 procesadores Intel Quadcore Xeon
(E5520) 64bits 2,27 GHz. Adems el servidor dispone de dos tarjetas grficas
NVIDIA Tesla C2070 de 448 cores @1,15GHz y 6 GB de memoria RAM
GDDR5 (384bit, 1494 MHz) cada una.
4. SIE-MoM en GPU

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 43
4.4. Resultados
Se ha conseguido implementar el clculo normal del algoritmo
HEMCUVE SIE-MoM para ser ejecutado en su totalidad en GPU. Sin embargo
aun no ha sido posible conseguir utilizar todas las prestaciones de las GPU.
El algoritmo implementado con CUDA hace uso mximo de 63
registros/hilo, lo que permite una ocupacin de los MP de 16 warps/MP ( 33% de
un mximo de 48 warps/MP que permite la tecnologa FERMI). No se hace uso
de la memoria compartida.
Se ha aplicado el algoritmo sobre el cubo de 450 bases haciendo uso de 1
core/MP (de los 32 cores/MP disponibles) y de los 14 MP de la Tesla C2070. Con
una precisin simple (float) los resultados han sido:
a) SpeedUp = 1,1x teniendo en cuenta nicamente el tiempo empleado por
el kernel (ejecucin en GPU).
b) Resultados idnticos entre CPU y GPU.

4. SIE-MoM en GPU

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 44

4. SIE-MoM in GPUs

Masters thesis. Author: Manuel Amaya. Supervisor: PhD. Luis Landesa. UEx. 45
4. SIE-MoM in GPUs
The methodology used to implement the SIE-MoM HEMCUVE
algorithm proposed in this work and the evaluation method that has been
followed, are developed now. Finally the details of the equipment that have been
used to obtain such data are commented.
4.1. Methodology
Prior to the implementation of the SIE-MoM HEMCUVE algorithm in the
GPUs, it was studied which features should be taken into account to make its
exploitation viable:
- To keep the original structure of the code and to develop it in parallel: this
premise allows any member of HEMCUVE can be easily placed in any
line of code and to perform comparative studies or error rate studies.
- To avoid using modified libraries: in order to be exported easily to other
systems.
Moreover, as discussed above, since the algorithm allows normal, tangential
or combined analysis, the implementation of the normal analysis is set to be
developed because of the highest computational cost, allowing better determine
the benefits of using GPUs with SIE-MoM algorithms.
The last step before proceeding to implement the algorithm on the GPU is
to study it for:
- To determine what type of data structures need to be redesigned to achieve
alignment in memory required to adapt it to the technology.
- To establish which solution will be used to create libraries that replace the
"Standard" and "TNT" library, not supported in CUDA.
The development in CUDA is initially done on a laptop with Optimus
technology, which at first is a challenge because of the need to make changes on
the drivers that have not allowed this type of work. For this part the operating
system is Windows 7 since NVIDIA has developed the most powerful debugging
tools for this platform.
4. SIE-MoM in GPUs

Masters thesis. Author: Manuel Amaya. Supervisor: PhD. Luis Landesa. UEx. 46
The part of the development that enables to improve the parallelism and the
study of results is performed on a Linux server (see next paragraph) with Tesla
C2070 cards, employing software that NVIDIA is available.
To assess the suitability of the proposed method, the speed-up achieved with
respect to the time taken for the calculation of the matrix Z will be calculated. The
time used for exchanging data between the computer's RAM and the GPU GRAM
is not taken into account because it is very insignificant in these calculations. The
speed-up achieved is calculated comparing the time spent by one CPU-core versus
a whole GPU.
4.2. Example used in this study
Simulations of this algorithm have been done with a cube of 10 side
dimension (300MHz), composed by a total of 450 bases, resulting in a total of
450
2
= 202500 unknowns for the matrix Z. In the case of single precision (float)
this calculation means 6.18 MB of memory to allocate the matrix Z.
4.3. Equipment
The "SIE-MoM HEMCUVE" algorithm analysis and its initial development
were done on a laptop with I5 560M@2.67GHz processor, Optimus technology
graphics system (integrated + discrete card card), NVIDIA GeForce GT420m of
96 cores @1GHz and 1GB@800MHz (128bit) GRAM. The operating system
used here is Windows 7 64bit because of the NVIDIA most powerful
development platform software.
For the parallelism development and for the simulations we have used a
"Tesla" server with 4 Quadcore Intel Xeon (E5520) @2.27GHz 64-bit. Also it is
equipped with two NVIDIA Tesla C2070 graphics cards of 448@1.15 GHz cores
and 6 GB of memory GDDR5 (384bit, 1494 MHz) each.
4.4. Results
Normal calculation of the "SIE-MoM HEMCUVE" algorithm has already
been implemented to be fully run on GPU. However, it has not yet been possible
to use all the features of the GPU.
4. SIE-MoM in GPUs

Masters thesis. Author: Manuel Amaya. Supervisor: PhD. Luis Landesa. UEx. 47
The algorithm implemented with CUDA uses up to 63 registers/thread,
allowing an occupation of the MP of 16 warps/MP (33% up to 48 warps/MP
allows by FERMI technology). Shared memory is not used.
The algorithm has been applied on the cube of 450 bases using 1 core/MP
(of the 32 cores/MP available) and of the 14 MP of the Tesla C2070. With a
simple-precision (float), the results were:
a) SpeedUp = 1,1x taking into account only the time spent by the kernel
(running on GPU).
b) Identical results between CPU and GPU.
4. SIE-MoM in GPUs

Masters thesis. Author: Manuel Amaya. Supervisor: PhD. Luis Landesa. UEx. 48

5. Conclusiones y lneas futuras

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 49
5. Conclusiones y lneas futuras.
El hecho de haber alcanzado el objetivo de implementar el algoritmo HEMCUVE SIE-
MoM en GPU permite continuar la lnea de investigacin en este sentido. Este resultado, junto a
los logros conseguidos en otros trabajos [Amaya, 2011] basados en versiones aceleradas de las
formulaciones SIE, permite mantener la apuesta por la investigacin en el aprovechamiento de la
potencia de clculo de las GPU en este tipo de anlisis. Adems cada vez son ms los HPC que
incorporan GPU [www.top500.org].
En los resultados obtenidos se observa que es posible mantener la precisin de los clculos,
algo fundamental en este tipo de anlisis.
El speedup alcanzado no es bueno. Este resultado radica en que el cdigo aun no es capaz
de hacer uso de los 32 cores de cada MP. Dado que hay disponible 32 veces ms cores que los
utilizados, es de esperar valores de speedup superiores a 32x en prximas versiones del cdigo.
Por lo tanto, este trabajo sigue desarrollndose para intentar identificar qu problema impide
alcanzar speedup grandes o quizs llegar a determinar que este tipo de algoritmo no sea
paralelizable eficientemente en GPU.
El hardware de las GPU actuales no implementa en los cores los circuitos necesarios para el
clculo de funciones trigonomtricas como s tienen los cores de las CPU, sino que disponen de
varios (4 en el caso de las Tesla C2070) circuitos SFU (Special Function Unit, ver Figura 2.1) que
se encargan de realizar estos clculos. Las SFU realizan los clculos trigonomtricos hasta 25
veces ms rpido que los cores de las CPU actuales [Farber, 2011], sin embargo, la forma en la
que se emplean puede repercutir en la reduccin del speedup final.
El paso inmediato a este trabajo es conseguir alcanzar valores de speedup significativos.
Este logro supondra poder reducir los costes computacionales de los algoritmos SIE-MoM, lo que
ayudara a realizar simulaciones y optimizaciones de diseos con mayor facilidad.
Siguiendo la lnea de este trabajo y una vez alcanzados valores adecuados de speedup, el
siguiente paso consistira en implementar el resto de formulaciones (tangencial y combinada) as
como de implementar versiones ms actuales del algoritmo HEMCUVE SIE-MoM que permiten
analizar mltiples PEC y asociaciones de dielctricos y PEC.
5. Conclusiones y lneas futuras

Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 50


5. Conclusions and future works
Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 51
5. Conclusions and future works
The fact of having achieved the goal of implementing the SIE-MoM
HEMCUVE algorithm allows continuing the research in this way. This result,
together with the achievements in other studies [Amaya, 2011] based on
accelerated versions of the SIE formulations, keeps the focus on researching in the
use of the computing power of GPUs in this type of analysis. Also more and more
HPCs incorporate GPUs [www.top500.org].
The results obtained show that it is possible to maintain the accuracy of the
calculations, which is essential in this type of analysis.
The speedup achieved is not good. This fact is because the code is not yet
able to use of the 32 cores each. Due to there are 32 times more available cores
than those used, hopefully speedup values greater than 32x will be obtained in
future versions of the code. Therefore, this work continues trying to identify what
problem prevents to rich high speedup ratios or to determine that such an
algorithm is not parallelizable in GPU.
The current GPUs hardware does not implement the necessary circuits for
the calculation of trigonometric functions in the cores as the CPUs cores have, but
those have several (four in the case of the Tesla C2070) circuits SFU (Special
Function Unit, see Figure 2.1) that are responsible for performing these
calculations. The SFU calculate trigonometric calculations up to 25 times faster
than the current CPUs cores [Farber, 2011], however the manner in which it is
used can reduce the final speedup.
The immediate step to this work is to achieve significant speedup values.
This achievement would suppose reduce the computational cost of the SIE-MoM
algorithms, helping to make simulations and optimizations of designs more easily.
In line with this work and once appropriate values of speedup were
achieved, the next step would be to implement the other formulations (tangential
and combined) as well as implementing newer versions of the SIE-MoM
HEMCUVE algorithm that analyze multiple PECs and associations of dielectrics
with PECs.
5. Conclusions and future works

Masters thesis. Author: Manuel Amaya. Supervisor: Ph.D. Luis Landesa. UEx. 52


Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 53
Bibliografa
AMAYA, M.; RIVERO, J.; TABOADA, J. M.; LANDESA, L. Uso de GPUs en
problemas de electromagnetismo computacional. XXVI Symposium Nacional de
URSI, (Legans, Madrid), 7-9 September 2011. ISBN: 978-84-933934-4-1
(abstracts), p. 63. [978-84-933934-5-8 (CD-ROM); in Spanish].

AMES, W. F. Numerical Method for Partial Differential Equations. New York:
Academic Pres, 1977.

CWIKLA, M.; ARONSSON, J.; OKHMATOVSKI, V. Low-Frequency
MLMFA on Graphics Processors. IEEE Antennas and Wireless Propagation
Letters. 2010, vol.9, pp. 8-11.

CHEW, W. C.; JIM, J. M.; MICHIELSSEN, E. Fast and Efficient Algorithms in
Computational Electromagnetics. Boston, 2001, Artech House Inc. ISBN:
1580531520.

COIFMAN, R.; ROKHLIN, V.; WANDZURA, S. The fast multipole method for
the wave equation: A pedestrian prescription. IEEE Antennas and Propagation
Magazine. 1993, vol. 35, num. 3, pp. 712.

ENGHETA, N.; MURPHY, W.D.; ROKHLIN, V.; VASSILIOU, M.S. The Fast
Multipole Method (FMM) for Electromagnetic Scattering Problems. IEEE
Transactions on Antennas and Propagation. June 1992, vol. 40, num. 6, pp. 634
641.

FARBER, ROB. CUDA Application Design and Development.. Elsevier Inc, 336
pp., ISBN 978-0-12-388426-8, 2011.

GPGPU.ORG. History of GPGPU. [En lnea]. Disponible en Web:
http://www.gpgpu.org/oldsite/data/history.shtm [ref. of January 4
th
2011].

HARRINGTON, R. F. Field Computation by Moment Method. New York, IEEE
Press, 1993.

MAUTZ, J. R. ; HARRINGTON, R.F. Electromagnetic scattering from a
homogeneous material body of revolution". Arch. Elektron. Uebertraeg., Vol. 33,
71-80, 1979.


Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 54
NVIDIA. Why Choose Tesla [On line]. Available on web:
http://www.nvidia.com/object/why-choose-tesla.html [ref. of January 4
th
2011]


RIVERO, J. Formulaciones integrales superficiales para el anlisis de objetos
conductores y penetrables arbitrarios. Trabajo fin de mster. Director: Jos
Manuel Taboada Varela. Universidad de Extremadura. Escuela Politcnica. Dpto.
de Teora de Seal y Comunicaciones. Cceres, junio 2010.

RIVERO, J.; TABOADA, J. M.; ARAUJO, M. G.; LANDESA, L. Formulacin
superficial para el diseo y anlisis de nanoantenas pticas. XXVI Symposium
Nacional de URSI, (Legans, Madrid), 7-9 September 2011. ISBN: 978-84-
933934-4-1 (abstracts), p. 36. [978-84-933934-5-8 (CD-ROM); in Spanish].

SONG, J. M.; CHEW, W. C. "Multilevel Fast Multipole Algorithm for Solving
Combined Field Integral Equations of Electromagnetic Scattering". Microwave
and Optical Technology Letters. September 1995, vol. 10, num. 1, pp. 14-19.

TABOADA, J.M.; LANDESA, L. OBELLEIRO, F.; RODRIGUEZ,
J.L.; BERTOLO, J.M.; ARAUJO, M.G.; MOURINO, J.C.; GOMEZ, A.
High Scalability FMM-FFT Electromagnetic Solver for Supercomputer
Systems. IEEE Antennas and Propagation Magazine. 2009, vol. 51, nm. 6, pp.
20-28.

TABOADA, J.M.; LANDESA, L.; ARAJO, M.G.; BRTOLO,
J.M.; RIVERO, J.; OBELLEIRO, F.; RODRGUEZ, J.L. MLFMA-FFT
algorithm for the solution of challenging problems in electromagnetics. Antennas
and Propagation Society International Symposium (APSURSI), 2010 IEEE. July
2010.

TABOADA, J.M.; ARAJO, M.G.; BRTOLO, J.M.; LANDESA, L.;
OBELLEIRO, F.; RODRGUEZ, J.L. MLFMA-FFT parallel algorithm for the
solution of large-scale problems in electromagnetics. Progress In
Electromagnetics Research. 2010, vol. 105, pp. 15-30.

TABOADA, J. M. LANDESA, L. OBELLEIRO, F. RODRIGUEZ, J.
L. ARAUJO, M. G. BERTOLO, J. M. MOURINO, J. C. GOMEZ, A.
Supercomputing challenges in electromagnetics. Antennas and Propagation
(EuCAP), 2010 Proceedings of the Fourth European Conference on. April 2010.


Trabajo Fin de Mster. Autor: Manuel Amaya. Director: Doctor Luis Landesa. UEx. 55
TABOADA, J. M.; RIVERO, J.; OBELLEIRO, F.; ARAJO, M.G.; LANDESA,
L. Method-of-moments formulation for the analysis of plasmonic nano-optical
antennas. JOSA A, Vol. 28, no. 7, pp. 13411348, 2011.

TOP500. List November 2011. [En lnea]. Disponible en Web:
http://www.top500.org/lists/2011/16 [ref. de 4 de enero de 2011].

TOPA, T.; KARWOWSKI, A.; NOGA, A. Using GPU With CUDA to
Accelerate MoM-Based Electromagnetic Simulation of Wire-Grid Model. IEEE
Antennas and Wireless Propagation Letters, vol. 10, pp. 343-345, 2011.

YL-OIJALA, P. ; TASKINEN, M. ; JRVENP, S. Surface integral
equation formulations for solving electromagnetic scattering problems with
iterative methods". Radio Sci., Vol. 40, No. 6, RS6002, 2005.

ZIENKIEWICZ, O. C.; TAYLOR, R. L. Volume 1: Basic Formulation and
Linear Problems. The Finite Element Method. 4th Edition. New York: McGraw
Hill Inc., 1989.

También podría gustarte