CUDABlock: A GUI Programming Tool for CUDA

Recent advances in graphics processing units (GPUs) have resulted in massively parallel hardware that is widely available to achieve high performance in desktop, notebook, and even mobile computer systems. While multicore technology has become the norm of modern computers, programming such systems r...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings - International Workshops on Parallel Processing S. 37 - 42
Hauptverfasser: Hsih-Hsin Lin, Chia-Heng Tu, Yuan-Shin Hwang
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: IEEE 01.09.2015
Schlagworte:
ISSN:1530-2016
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Recent advances in graphics processing units (GPUs) have resulted in massively parallel hardware that is widely available to achieve high performance in desktop, notebook, and even mobile computer systems. While multicore technology has become the norm of modern computers, programming such systems requires the understanding of underlying hardware architecture and hence posts a great challenge for average joe programmers, who might be professionals in specific domains, but not experts in parallel programming. This paper presents a GUI tool called CUDA Block that can facilitate parallel programming on multicore computer systems. CUDA Block is developed based on the Open Blocks framework, an extendable tool for graphical programming, to construct the GUI-based programming environment for CUDA parallel computing platform. Programmers simply need to drag-n-drop blocks, fill the fields of the blocks, and connect them according to array or matrix computations that are specified by algorithms. CUDA Block can then export block-based code to CUDA programs. Furthermore, a couple of optimization constructs have also been also offered for rapid program optimization. Preliminary experimental results have shown that the generated CUDA programs can achieve reasonable speedups on GPUs. Consequently, CUDA Block can be used as a tool for fast prototyping of GPU applications or a platform for education of parallel programming.
ISSN:1530-2016
DOI:10.1109/ICPPW.2015.15