English
Related papers

Related papers: CPC: programming with a massive number of lightwei…

200 papers

This paper introduces a versatile, multi-layered technology to help support teaching and learning core computer architecture concepts. This technology, called CodeAPeel is already implemented in one particular form to describe instruction…

Hardware Architecture · Computer Science 2021-11-30 A. Yavuz Oruc , A. Atmaca , Y. Nevzat Sengun , A. Semi Yenimol

Thread pooling is a common programming idiom in which a fixed set of worker threads are maintained to execute tasks concurrently. The workers repeatedly pick tasks and execute them to completion. Each task is sequential, with possibly…

Formal Languages and Automata Theory · Computer Science 2021-11-18 Pascal Baumann , Rupak Majumdar , Ramanathan S. Thinniyam , Georg Zetzsche

Multicore is an integrated circuit chip that uses two or more computational engines (cores) places in a single processor. This new approach is used to split the computational work of a threaded application and spread it over multiple…

Operating Systems · Computer Science 2019-10-03 Reza Fotohi , Mehdi Effatparvar , Fateme Sarkohaki , Shahram Behzad , Jaber Hoseini balov

Common approaches to concurrent programming begin with languages whose semantics are naturally sequential and add new constructs that provide limited access to concurrency, as exemplified by futures. This approach has been quite successful,…

Programming Languages · Computer Science 2023-06-22 Klaas Pruiksma , Frank Pfenning

CHR is a declarative, concurrent and committed choice rule-based constraint programming language. We extend CHR with multiset comprehension patterns, providing the programmer with the ability to write multiset rewriting rules that can match…

Programming Languages · Computer Science 2014-06-10 Edmund S. L. Lam , Iliano Cervesato

Locks are a standard mechanism for synchronizing concurrent threads. The standard lock set construction assumes that critical sections are confined to a single thread, and therefore only accounts for locks acquired within that thread.…

Programming Languages · Computer Science 2026-04-08 Martin Sulzmann

OpenMP is a popular parallelization framework that lets users transform sequential code into parallel code with a few simple annotations. Unfortunately, it is also easy to inadvertently introduce errors by adding OpenMP pragmas into…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-28 Ke Du , Anshu Sharma , Liyi Li , William Mansky

Linear logic Concurrent Constraint programming (LCC) is an extension of concurrent constraint programming (CC) where the constraint system is based on Girard's linear logic instead of the classical logic. In this paper we address the…

Programming Languages · Computer Science 2011-08-02 Rémy Haemmerlé

A recent study of bugs in real-world concurrent and distributed systems found that, while implementations of individual protocols tend to be robust, the composition of multiple protocols and its interplay with internal computation is the…

Programming Languages · Computer Science 2017-08-09 Luís Cruz-Filipe , Fabrizio Montesi

Co-operative and pre-emptive scheduling are usually considered to be complementary models of threading. In the case of virtual machines, we show that they can be unified using a single concept, the bounded execution of a thread of control,…

Programming Languages · Computer Science 2013-12-11 Simon Dobson , Alan Dearle , Barry Porter

We consider the problem of transposing tensors of arbitrary dimension and describe TTC, an open source domain-specific parallel compiler. TTC generates optimized parallel C++/CUDA C code that achieves a significant fraction of the system's…

Mathematical Software · Computer Science 2016-07-06 Paul Springer , Aravind Sankaran , Paolo Bientinesi

Arrival of multicore systems has enforced a new scenario in computing, the parallel and distributed algorithms are fast replacing the older sequential algorithms, with many challenges of these techniques. The distributed algorithms provide…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-11-13 Rajendra Purohit , K R Chowdhary , S D Purohit

Modern high performance computing (HPC) systems exhibit a rapid growth in size, both "horizontally" in the number of nodes, as well as "vertically" in the number of cores per node. As such, they offer additional levels of hardware…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-06 Ahmed Eleliemy , Ali Mohammed , Florina M. Ciorba

In this paper, we introduce Heteroflow, a new C++ library to help developers quickly write parallel CPU-GPU programs using task dependency graphs. Heteroflow leverages the power of modern C++ and task-based approaches to enable efficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-03-17 Tsung-Wei Huang , Yibo Lin

Message-passing concurrency is a popular computation model that underlies several programming languages like, e.g., Erlang, Akka, and (to some extent) Go and Rust. In particular, we consider a message-passing concurrent language with…

Programming Languages · Computer Science 2022-10-07 Germán Vidal

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-05-24 Matthew Andres Moreno , Santiago Rodriguez Papa , Charles Ofria

To face the programming challenges related to heterogeneous computing, Intel recently introduced oneAPI, a new programming environment that allows code developed in Data Parallel C++ (DPC++) language to be run on different devices such as…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-22 Manuel Costanzo , Enzo Rucci , Carlos Garcia Sanchez , Marcelo Naiouf , Manuel Prieto-Matias

Syndicate is a new coordinated, concurrent programming language. It occupies a novel point on the spectrum between the shared-everything paradigm of threads and the shared-nothing approach of actors. Syndicate actors exchange messages and…

Programming Languages · Computer Science 2016-06-21 Tony Garnock-Jones

In the case of multi-threading as found in contemporary programming languages, parallel processes are interleaved according to what is known as a process-scheduling policy in the field of operating systems. In a previous paper, we extend…

Logic in Computer Science · Computer Science 2020-04-22 C. A. Middelburg

Choreographic Programming is a programming paradigm for building concurrent programs that are deadlock-free by construction, as a result of programming communications declaratively and then synthesising process implementations…

Programming Languages · Computer Science 2018-10-10 Luís Cruz-Filipe , Fabrizio Montesi
‹ Prev 1 3 4 5 6 7 10 Next ›