English
Related papers

Related papers: Veracity: Declarative Multicore Programming with C…

200 papers

There is an ever-present need for shared memory parallelization schemes to exploit the full potential of multi-core architectures. The most common parallelization API addressing this need today is OpenMP. Nevertheless, writing parallel code…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-23 Tal Kadosh , Nadav Schneider , Niranjan Hasabnis , Timothy Mattson , Yuval Pinter , Gal Oren

Developers of low-level systems code providing core functionality for operating systems and kernels must address hardware-level features of modern multicore architectures. A particular feature is pipelined "out-of-order execution" of the…

Logic in Computer Science · Computer Science 2024-07-31 Robert J. Colvin , Ian J. Hayes , Scott Heiner , Peter Höfner , Larissa Meinicke , Roger C. Su

Commutativity has proven to be a powerful tool in reasoning about concurrent programs. Recent work has shown that a commutativity-based reduction of a program may admit simpler proofs than the program itself. The framework of…

Programming Languages · Computer Science 2023-11-07 Azadeh Farzan , Dominik Klumpp , Andreas Podelski

We introduce process-oriented programming as a natural extension of object-oriented programming for parallel computing. It is based on the observation that every class of an object-oriented language can be instantiated as a process,…

Programming Languages · Computer Science 2014-07-22 Edward Givelberg

We define a programming language independent transaction controller and an operator which when applied to concurrent programs with shared locations turns their behavior with respect to some abstract termination criterion into a…

Databases · Computer Science 2017-06-07 Egon Börger , Klaus-Dieter Schewe

Context: Secure Multiparty Computation (MPC) refers to a family of cryptographic techniques where mutually untrusting parties may compute functions of their private inputs while revealing only the function output. Inquiry: It can be hard to…

Cryptography and Security · Computer Science 2023-02-21 Ian Sweet , David Darais , David Heath , William Harris , Ryan Estes , Michael Hicks

This paper introduces several techniques that improve the scalability of the deductive verification of data-level programs working on arrays and matrices. First of all, we introduce a technique to rewrite expressions with (nested)…

Software Engineering · Computer Science 2026-05-14 Lars B. van den Haak , Anton Wijs , Marieke Huisman

We propose a novel, operational framework to formally describe the semantics of concurrent programs running within the context of a relaxed memory model. Our framework features a "temporary store" where the memory operations issued by the…

Programming Languages · Computer Science 2012-08-30 Gérard Boudol , Gustavo Petri , Bernard Serpette

Heterogeneous many-cores are now an integral part of modern computing systems ranging from embedding systems to supercomputers. While heterogeneous many-core design offers the potential for energy-efficient high-performance, such potential…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-11 Jianbin Fang , Chun Huang , Tao Tang , Zheng Wang

The expanding hardware diversity in high performance computing adds enormous complexity to scientific software development. Developers who aim to write maintainable software have two options: 1) To use a so-called data locality abstraction…

Software Engineering · Computer Science 2023-11-10 Andreas Hadjigeorgiou , Christodoulos Stylianou , Michele Weiland , Dirk Jacob Verschuur , Jacob Finkenrath

Recent work showed that compiling functional programs to use dense, serialized memory representations for recursive algebraic datatypes can yield significant constant-factor speedups for sequential programs. But serializing data in a…

Programming Languages · Computer Science 2021-07-02 Chaitanya Koparkar , Mike Rainey , Michael Vollmer , Milind Kulkarni , Ryan R. Newton

The transactional robustness problem revolves around deciding whether, for a given workload, a lower isolation level than Serializable is sufficient to guarantee serializability. The paper presents a new characterization for robustness…

Databases · Computer Science 2023-02-20 Brecht Vandevoort , Bas Ketsman , Christoph Koch , Frank Neven

A well-established approach to proving progress properties such as deadlock-freedom and termination is to associate obligations with threads. For example, in most existing work the proof rule for lock acquisition prescribes a standard usage…

Programming Languages · Computer Science 2024-12-20 Justus Fasse , Bart Jacobs

Recent work has shown that we can dramatically improve the performance of computer games and simulations through declarative processing: Character AI can be written in an imperative scripting language which is then compiled to relational…

Databases · Computer Science 2009-09-15 Benjamin Sowell , Alan Demers , Johannes Gehrke , Nitin Gupta , Haoyuan Li , Walker White

Predicting program behavior and reasoning about code execution remain significant challenges in software engineering, particularly for large language models (LLMs) designed for code analysis. While these models excel at understanding static…

Software Engineering · Computer Science 2025-02-11 Cuong Chi Le , Hoang-Chau Truong-Vinh , Huy Nhat Phan , Dung Duy Le , Tien N. Nguyen , Nghi D. Q. Bui

Multi-Variant Execution Environments (MVEEs) are a promising technique to protect software against memory corruption attacks. They transparently execute multiple, diversified variants (often referred to as replicae) of the software…

Cryptography and Security · Computer Science 2016-07-27 Stijn Volckaert , Bjorn De Sutter , Koen De Bosschere , Per Larsen

Non-volatile memory (NVM), also known as persistent memory, is an emerging paradigm for memory that preserves its contents even after power loss. NVM is widely expected to become ubiquitous, and hardware architectures are already providing…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-22 Eleni Bila , John Derrick , Simon Doherty , Brijesh Dongol , Gerhard Schellhorn , Heike Wehrheim

When programming resource-scarce embedded smart devices, the designer often requires both the low-level system programming features of a language such as C and higher level capability typical of a language like Java. The choice of a…

Programming Languages · Computer Science 2019-10-09 Vincenzo De Florio , Chris Blondia

The memory model of a shared-memory multiprocessor is a contract between the designer and programmer of the multiprocessor. The sequential consistency memory model specifies a total order among the memory (read and write) events performed…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Shaz Qadeer

The additional complexity caused by concurrently communicating processes in distributed systems render the verification of such systems into a very hard problem. Multiparty session types were developed to govern communication and…

Logic in Computer Science · Computer Science 2019-08-20 Kirstin Peters , Christoph Wagner , Uwe Nestmann
‹ Prev 1 3 4 5 6 7 10 Next ›