English
Related papers

Related papers: PENCIL: Towards a Platform-Neutral Compute Interme…

200 papers

We present Calyx, a new intermediate language (IL) for compiling high-level programs into hardware designs. Calyx combines a hardware-like structural language with a software-like control flow representation with loops and conditionals.…

Programming Languages · Computer Science 2021-11-17 Rachit Nigam , Samuel Thomas , Zhijing Li , Adrian Sampson

Veryl, a hardware description language based on SystemVerilog, offers optimized syntax tailored for logic design, ensuring synthesizability and simplifying common constructs. It prioritizes interoperability with SystemVerilog, allowing for…

Hardware Architecture · Computer Science 2024-11-21 Naoya Hatta , Taichi Ishitani , Ryota Shioya

We present a reversible intermediate language with concurrency for translating a high-level concurrent programming language to another lower-level concurrent programming language, keeping reversibility. Intermediate languages are commonly…

Programming Languages · Computer Science 2023-09-15 Shunya Oguchi , Shoji Yuen

GPUs and other accelerators are popular devices for accelerating compute-intensive, parallelizable applications. However, programming these devices is a difficult task. Writing efficient device code is challenging, and is typically done in…

Programming Languages · Computer Science 2018-10-23 Tim Besard , Christophe Foket , Bjorn De Sutter

OpenCL is a standard for parallel programming of heterogeneous systems. The benefits of a common programming standard are clear; multiple vendors can provide support for application descriptions written according to the standard, thus…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-11-23 Pekka Jääskeläinen , Carlos Sánchez de La Lama , Erik Schnetter , Kalle Raiskila , Jarmo Takala , Heikki Berg

We introduce DISTAL, a compiler for dense tensor algebra that targets modern distributed and heterogeneous systems. DISTAL lets users independently describe how tensors and computation map onto target machines through separate format and…

Programming Languages · Computer Science 2022-03-18 Rohan Yadav , Alex Aiken , Fredrik Kjolstad

To increase performance and efficiency, systems use FPGAs as reconfigurable accelerators. A key challenge in designing these systems is partitioning computation between processors and an FPGA. An appropriate division of labor may be…

Hardware Architecture · Computer Science 2021-07-21 Endri Bezati , Mahyar Emami , Jörn Janneck , James Larus

Natural language processing is used for solving a wide variety of problems. Some scholars and interest groups working with language resources are not well versed in programming, so there is a need for a good graphical framework that allows…

Computation and Language · Computer Science 2022-06-17 Timotej Knez , Marko Bajec , Slavko Žitnik

As the number of computing devices embedded into engineered systems continues to rise, there is a widening gap between the needs of the user to control aggregates of devices and the complex technology of individual devices. Spatial…

Programming Languages · Computer Science 2012-04-04 Jacob Beal , Stefan Dulman , Kyle Usbeck , Mirko Viroli , Nikolaus Correll

Forward inference techniques such as sequential Monte Carlo and particle Markov chain Monte Carlo for probabilistic programming can be implemented in any programming language by creative use of standardized operating system functionality…

Artificial Intelligence · Computer Science 2014-07-11 Brooks Paige , Frank Wood

Ideally, accelerator development should be as easy as software development. Several recent design languages/tools are working toward this goal, but actually testing early designs on real applications end-to-end remains prohibitively…

Communication is an important part of accelerator design, though it is under researched and under developed. Today, designers often face relatively low-level communication tools requiring them to design straightforward but error-prone…

Hardware Architecture · Computer Science 2021-11-15 John Demme

Finite-difference methods based on high-order stencils are widely used in seismic simulations, weather forecasting, computational fluid dynamics, and other scientific applications. Achieving HPC-level stencil computations on one…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-07-09 Ryuichi Sai , John Mellor-Crummey , Jinfan Xu , Mauricio Araya-Polo

DSLs and hardware accelerators have proven to be very effective in optimizing computationally expensive workloads. In this paper, we propose a solution to the challenge of manually rewriting legacy or unoptimized code in domain-specific…

Programming Languages · Computer Science 2023-08-15 Yuto Nishida , Sahil Bhatia , Shadaj Laddad , Hasan Genc , Yakun Sophia Shao , Alvin Cheung

Traditional Digital Signal Processing ( DSP ) compilers work at low level ( C-level / assembly level ) and hence lose much of the optimization opportunities present at high-level ( domain-level ). The emerging multi-level compiler…

Signal Processing · Electrical Eng. & Systems 2025-06-23 Abhinav Kumar , Atharva Khedkar , Aviral Shrivastava

Domain-specific languages (DSLs) are of increasing importance in scientific high-performance computing to reduce development costs, raise the level of abstraction and, thus, ease scientific programming. However, designing and implementing…

Mathematical Software · Computer Science 2017-09-19 Sven Karol , Tobias Nett , Jeronimo Castrillon , Ivo F. Sbalzarini

Multi-Level Intermediate Representation (MLIR) is a novel compiler infrastructure that aims to provide modular and extensible components to facilitate building domain specific compilers. However, since MLIR models programs at an…

Programming Languages · Computer Science 2023-08-15 Maksim Levental , Alok Kamatar , Ryan Chard , Kyle Chard , Ian Foster

Partial differential equation (PDE) solvers are extensively utilized across numerous scientific and engineering fields. However, achieving high performance and scalability often necessitates intricate and low-level programming, particularly…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-12 Huanqi Cao , Shizhi Tang , Qianchao Zhu , Bowen Yu , Wenguang Chen

We propose an optimization approach for determining both hardware and software parameters for the efficient implementation of a (family of) applications called dense stencil computations on programmable GPGPUs. We first introduce a simple,…

Hardware Architecture · Computer Science 2017-12-26 Nirmal Prajapati , Sanjay Rajopadhye , Hristo Djidjev , Nandkishore Santhi , Tobias Grosser , Rumen Andonov

In the ever-evolving landscape of scientific computing, properly supporting the modularity and complexity of modern scientific applications requires new approaches to workflow execution, like seamless interoperability between different…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-12 Iacopo Colonnelli , Doriana Medić , Alberto Mulone , Viviana Bono , Luca Padovani , Marco Aldinucci