Clifford Algebra (CA) is a powerful mathematical language that allows for a simple and intuitive representation of geometric objects and their transformations. It has important applications in many research fields, such as computer graphics, robotics, and machine vision. Direct hardware support of Clifford data types and operators is needed to accelerate applications based on Clifford Algebra. This paper proposes a mixed software-hardware system that exploits the computational power of Graphics Processing Units (GPUs) to accelerate Clifford operations. A code generator, namely OpenCLifford, is presented that automatically generates Java and C libraries for the direct support of Clifford elements and operations as well as OpenCL kernels to be executed on the GPU. Experimental tests have been performed to evaluate the speedup of the OpenCL parallel code executed on the GPU against the baseline C code executed on the CPU. Average speedups of 47x and 27x have been measured for 3D and 5D Clifford Algebra, respectively. The paper also presents an execution analysis of an application for fractal generation showing a 35x speedup with respect to the baseline CPU execution.

Franchini, S., Gentile, A., Vassallo, G., Vitabile, S. (2015). Accelerating Clifford Algebra Operations using GPUs and an OpenCL Code Generator. In Proceedings of the 18th IEEE Euromicro Conference on Digital System Design - Architectures, Methods and Tools (DSD 2015), IEEE Computer Society Press (pp. 57-64). IEEE / Institute of Electrical and Electronics Engineers Incorporated [10.1109/DSD.2015.44].

Accelerating Clifford Algebra Operations using GPUs and an OpenCL Code Generator

FRANCHINI, Silvia Giuseppina;GENTILE, Antonio;VASSALLO, Giorgio;VITABILE, Salvatore
2015-01-01

Abstract

Clifford Algebra (CA) is a powerful mathematical language that allows for a simple and intuitive representation of geometric objects and their transformations. It has important applications in many research fields, such as computer graphics, robotics, and machine vision. Direct hardware support of Clifford data types and operators is needed to accelerate applications based on Clifford Algebra. This paper proposes a mixed software-hardware system that exploits the computational power of Graphics Processing Units (GPUs) to accelerate Clifford operations. A code generator, namely OpenCLifford, is presented that automatically generates Java and C libraries for the direct support of Clifford elements and operations as well as OpenCL kernels to be executed on the GPU. Experimental tests have been performed to evaluate the speedup of the OpenCL parallel code executed on the GPU against the baseline C code executed on the CPU. Average speedups of 47x and 27x have been measured for 3D and 5D Clifford Algebra, respectively. The paper also presents an execution analysis of an application for fractal generation showing a 35x speedup with respect to the baseline CPU execution.
2015
Settore ING-INF/05 - Sistemi Di Elaborazione Delle Informazioni
978-1-4673-8035-5
Franchini, S., Gentile, A., Vassallo, G., Vitabile, S. (2015). Accelerating Clifford Algebra Operations using GPUs and an OpenCL Code Generator. In Proceedings of the 18th IEEE Euromicro Conference on Digital System Design - Architectures, Methods and Tools (DSD 2015), IEEE Computer Society Press (pp. 57-64). IEEE / Institute of Electrical and Electronics Engineers Incorporated [10.1109/DSD.2015.44].
File in questo prodotto:
File Dimensione Formato  
DSD_2015_completo.pdf

Solo gestori archvio

Descrizione: Paper
Tipologia: Versione Editoriale
Dimensione 1.92 MB
Formato Adobe PDF
1.92 MB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10447/167568
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 3
social impact