Trabalho de Conclusão de Curso de Graduação
Uma ferramenta para integração de aplicações Java à computação paralela de propósito geral em processadores gráficos
Fecha
2008-12-17Autor
Christo, Bruno de Carvalho
Institución
Resumen
The purpose of this work is to develop a software development tool for generalpurpose
computing on graphics processing units (GPGPU). This kind of computation
allows the execution of parallelizable tasks with superior performance relative to current
CPUs. In these architectures, the programming tools most widely used are the proprietary
ones: CUDA and Stream SDK, which are offered by the same companies that make the
hardware (GPUs): NVIDIA and AMD/ATI, respectively. It is estimated that those are the
programming solutions with the best performance on it’s respective hardware. However,
the generated programs, by being tied to the manufacturer’s hardware, lose portability.
In this context, the tool proposed in this work consists of a package with Java classes
that use the proprietary SDK’s code as part of the solution, to make available a flexible,
productivity increasing solution that doesn’t compromise performance. TAJMAHAL,
the developed tool, contains two examples of parallel programs: bitonic sort and matrix
multiplication. Each of these examples has their own TAJMAHAL project containing a
CUDA implementation and a Stream SDK implementation. To test the efficiency of this
tool, quantitative and qualitative analyses were made.