English
Related papers

Related papers: __host__ __device__ -- Generic programming in Cuda

200 papers

With the rapid development of scientific computation, more and more researchers and developers are committed to implementing various workloads/operations on different devices. Among all these devices, NVIDIA GPU is the most popular choice…

Programming Languages · Computer Science 2021-09-03 Ruobing Han , Blaise Tine , Jaewon Lee , Jaewoong Sim , Hyesoon Kim

From the discovery that the template system of C++ forms a Turing complete language in 1994, a programming technique called Template Metaprogramming has emerged that allows for the creation of faster, more generic and better code. Here, we…

Computational Physics · Physics 2012-06-12 Mario Mulansky , Karsten Ahnert

We introduce the Bandicoot C++ library for linear algebra and scientific computing on GPUs, overviewing its user interface and performance characteristics, as well as the technical details of its internal design. Bandicoot is the…

Mathematical Software · Computer Science 2025-09-23 Ryan R. Curtin , Marcus Edel , Conrad Sanderson

The authors' "metatools" are a collection of tools for generic programming. This includes generating Java sources from mathematically well-founded specifications, as well as the creation of strictly typed document object models for XML…

Software Engineering · Computer Science 2011-11-22 Markus Lepper , Baltasar Trancón y Widemann

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

Formal Languages and Automata Theory · Computer Science 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu

In C++, objects can be allocated in static memory, on the stack, or on the heap -- the latter being significantly more performance-costly than the former options. We hypothesized that programmers, particularly those involved in widely-used…

Programming Languages · Computer Science 2024-10-10 Roman Korostinskiy , Eugene Darashkevich , Roman Rusyaev , Yegor Bugayenko

For NVIDIA GPUs, CUDA is the primary interface through which applications orchestrate GPU execution, yet much of the logic that realizes CUDA operations resides in NVIDIA's closed-source userspace driver. As a result, the translation from…

Performance · Computer Science 2026-04-30 Yuang Yan , Ian Karlin , Ryan Grant

High-level scripting languages are in many ways polar opposites to GPUs. GPUs are highly parallel, subject to hardware subtleties, and designed for maximum throughput, and they offer a tremendous advance in the performance achievable for a…

Software Engineering · Computer Science 2013-04-23 Andreas Klöckner , Nicolas Pinto , Bryan Catanzaro , Yunsup Lee , Paul Ivanov , Ahmed Fasih

Objective-C is still the language of choice if users want to run their simulation efficiently under the Swarm environment since the Swarm environment itself was written in Objective-C. The language is a fast, object-oriented and easy to…

Multiagent Systems · Computer Science 2007-05-23 Richard Leow , Russell K. Standish

We have developed several autotuning benchmarks in CUDA that take into account performance-relevant source-code parameters and reach near peak-performance on various GPU architectures. We have used them during the development and evaluation…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-02-11 Jiří Filipovič , Jana Hozzová , Amin Nezarat , Jaroslav Oľha , Filip Petrovič

In recent years the more and more powerful GPU's available on the PC market have attracted attention as a cost effective solution for parallel (SIMD) computing. CUDA is a solid evidence of the attention that the major companies are devoting…

High Energy Physics - Lattice · Physics 2010-01-21 Viola Anselmi , Giovanni Conti , Francesco Di Renzo

GigaAPI is a user-space API that simplifies multi-GPU programming, bridging the gap between the capabilities of parallel GPU systems and the ability of developers to harness their full potential. The API offers a comprehensive set of…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-03 M. Suvarna , O. Tehrani

In this note, we present the stability as well as performance analysis of asynchronous parallel computing algorithm implemented in 1D heat equation with CUDA. The primary objective of this note lies in dissemination of asynchronous parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-11-03 Kooktae Lee , Raktim Bhattacharya

Object-oriented programming languages such as Java and Objective C have become popular for implementing agent-based and other object-based simulations since objects in those languages can {\em reflect} (i.e. make runtime queries of an…

Mathematical Software · Computer Science 2008-10-22 Russell K. Standish , Duraid Madina

The C++ programming language is not only a keystone of the high-performance-computing ecosystem but has proven to be a successful base for portable parallel-programming frameworks. As is well known, C++ programmers use templates to…

Programming Languages · Computer Science 2019-04-30 Hal Finkel , David Poliakoff , David F. Richards

Tremendous advances in parallel computing and graphics hardware opened up several novel real-time GPU applications in the fields of computer vision, computer graphics as well as augmented reality (AR) and virtual reality (VR). Although…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-08-19 Patrick Stotko

Programmable circuits such as general-purpose processors or FPGAs have their end-user energy efficiency strongly dependent on the program that they execute. Ultimately, it is the programmer's ability to code and, in the case of general…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-04-13 Samuel Xavier-de-Souza , Eduardo A. Neves , Alex F. A. Furtunato , Luiz F. Q. Silveira , Kyriakos Georgiou , Kerstin I. Eder

One of the key requirements for the Lattice QCD Application Development as part of the US Exascale Computing Project is performance portability across multiple architectures. Using the Grid C++ expression template as a starting point, we…

High Energy Physics - Lattice · Physics 2018-04-18 Peter A. Boyle , M. A. Clark , Carleton DeTar , Meifeng Lin , Verinder Rana , Alejandro Vaquero Avilés-Casco

OpenCL is an open standard for parallel programming of heterogeneous compute devices, such as GPUs, CPUs, DSPs or FPGAs. However, the verbosity of its C host API can hinder application development. In this paper we present cf4ocl, a…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-05-16 Nuno Fachada , Vitor V. Lopes , Rui C. Martins , Agostinho C. Rosa

This paper describes an `obfuscating' C compiler for encrypted computing. The context consists of (i) a processor that `works encrypted', taking in encrypted inputs and producing encrypted outputs while the data remains in encrypted form…

Cryptography and Security · Computer Science 2021-12-30 Peter Breuer