English
Related papers

Related papers: Higher-Order Concurrency for Microcontrollers

200 papers

Discrete GPU accelerators, while providing massive computing power for supercomputers and data centers, have their separate memory domain. Explicit memory management across device and host domains in programming is tedious and error-prone.…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-14 Bennett Cooper , Thomas R. W. Scogland , Rong Ge

Non-volatile memory (NVM) is a promising technology for low-energy and high-capacity main memory of computers. The characteristics of NVM devices, however, tend to be fundamentally different from those of DRAM (i.e., the memory device…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-08 Atsushi Koshiba , Takahiro Hirofuchi , Ryousei Takano , Mitaro Namiki

FPGA programming is more complex as compared to Central Processing Units (CPUs) and Graphics Processing Units (GPUs). The coding languages to define the abstraction of Register Transfer Level (RTL) in High Level Synthesis (HLS) for FPGA…

Hardware Architecture · Computer Science 2024-10-04 Rourab Paul , Alberto Ottimo , Marco Danelutto

The Adapteva Epiphany many-core architecture comprises a scalable 2D mesh Network-on-Chip (NoC) of low-power RISC cores with minimal uncore functionality. Whereas such a processor offers high computational energy efficiency and parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-04-28 David Richie , James Ross , Jamie Infantolino

In the last decade we have witnessed a rapid growth in data center systems, requiring new and highly complex networking devices. The need to refresh networking infrastructure whenever new protocols or functions are introduced, and the…

Hardware Architecture · Computer Science 2016-12-19 Jong Hun Han , Noa Zilberman , Bjoern A. Zeeb , Andreas Fiessler , Andrew W. Moore

BISM (Bytecode-Level Instrumentation for Software Monitoring) is a lightweight bytecode instrumentation tool that features an expressive high-level control-flow-aware instrumentation language. The language follows the aspect-oriented…

Programming Languages · Computer Science 2020-07-16 Chukri Soueidi , Ali Kassem , Yliès Falcone

Modern heterogeneous computing architectures, which couple multi-core CPUs with discrete many-core GPUs (or other specialized hardware accelerators), enable unprecedented peak performance and energy efficiency levels. Unfortunately, though,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-20 Daniel Castro , Paolo Romano , Aleksandar Ilic , Amin M. Khan

This paper presents a novel, non-standard set of vector instruction types for exploring custom SIMD instructions in a softcore. The new types allow simultaneous access to a relatively high number of operands, reducing the instruction count…

Hardware Architecture · Computer Science 2021-06-15 Philippos Papaphilippou , Paul H. J. Kelly , Wayne Luk

Semisort is a fundamental algorithmic primitive widely used in the design and analysis of efficient parallel algorithms. It takes input as an array of records and a function extracting a \emph{key} per record, and reorders them so that…

Data Structures and Algorithms · Computer Science 2023-04-21 Xiaojun Dong , Yunshu Wu , Zhongqi Wang , Laxman Dhulipala , Yan Gu , Yihan Sun

It has always been difficult to balance the accuracy and performance of ISSs. RTL simulators or systems such as gem5 are used to execute programs in a cycle-accurate manner but are often prohibitively slow. In contrast, functional…

Hardware Architecture · Computer Science 2020-05-26 Xuan Guo , Robert Mullins

We propose a high-performance state-vector emulator of a gate-based quantum processors developed in the Rust programming language. It supports OpenQASM 2.0 programming language for quantum circuits specification and has a user-friendly…

Quantum Physics · Physics 2023-11-17 Ilya A. Luchnikov , Oleg E. Tatarkin , Aleksey K. Fedorov

In this paper, we introduce the concept of a virtual machine with graph-organised memory as a versatile backend for both explicit-state and abstraction-driven verification of software. Our virtual machine uses the LLVM IR as its instruction…

Software Engineering · Computer Science 2019-07-10 Petr Ročkai , Vladimír Štill , Ivana černá , Jiří Barnat

A software model of a reversible processor ReveR with the stack is discussed in this paper. An architecture, the minimal set of elementary reversible operations together with an implementation of the basic control flow structures and…

Emerging Technologies · Computer Science 2011-06-01 Alexander Yu. Vlasov

This paper reports on initial experiments using J Moore's Codewalker to reason about programs compiled to the Low-Level Virtual Machine (LLVM) intermediate form. Previously, we reported on a translator from LLVM to the applicative subset of…

Logic in Computer Science · Computer Science 2015-09-22 David S. Hardin

Machine learning algorithms must be able to efficiently cope with massive data sets. Therefore, they have to scale well on any modern system and be able to exploit the computing power of accelerators independent of their vendor. In the…

Machine Learning · Computer Science 2022-09-07 Alexander Van Craen , Marcel Breyer , Dirk Pflüger

With wide spread acceptance of virtualization, virtual machines (VMs) find their presence in various applications such as Network Address Translation (NAT) servers, firewall servers and MapReduce applications. Typically, in these…

Operating Systems · Computer Science 2019-09-27 Shesha Sreenivasamurthy , Ethan Miller

Many virtual machines exist for sensor nodes with only a few KB RAM and tens to a few hundred KB flash memory. They pack an impressive set of features, but suffer from a slowdown of one to two orders of magnitude compared to optimised…

Programming Languages · Computer Science 2017-12-19 Niels Reijers , Chi-Sheng Shih

Shared Memory is a mechanism that allows several processes to communicate with each other by accessing -- writing or reading -- a set of variables that they have in common. A Consistency Model defines how each process observes the state of…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-26 Jordi Bataller Mascarell

Image bitmaps have been widely used in in-memory applications, which consume lots of storage space and energy. Compared with legacy DRAM, non-volatile memories (NVMs) are suitable for bitmap storage due to the salient features in capacity…

Hardware Architecture · Computer Science 2019-05-08 Zhangyu Chen , Yu Hua , Pengfei Zuo , Yuanyuan Sun , Yuncheng Guo

We describe Venture, an interactive virtual machine for probabilistic programming that aims to be sufficiently expressive, extensible, and efficient for general-purpose use. Like Church, probabilistic models and inference problems in…

Artificial Intelligence · Computer Science 2014-04-02 Vikash Mansinghka , Daniel Selsam , Yura Perov