Demo Data from VLDB 2026 / reviewers in the wild / expert
Remigius Meier
dblp:162/1906
· DBLP profile ↗
3ranked-venue papers
3as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 3 · 3 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Concurrent programming · 67% Runtime systems and virtual machines · 33% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Parallel and multicore computing · 100% |
Topics — the 3 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming
memory models |
0.3 | 1 | 2018 | Virtual machine design for parallel dynamic programming languages · Proc. ACM Program. Lang. 2018 |
Concurrent programming › memory models
sequential consistency |
0.3 | 1 | 2018 | Virtual machine design for parallel dynamic programming languages · Proc. ACM Program. Lang. 2018 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2018 | Virtual machine design for parallel dynamic programming languages · Proc. ACM Program. Lang. 2018 |
Methods — techniques the papers use, named apart from their topics
software transactional memory · 0.7hardware capabilities · 0.7
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Reflections on the compatibility, performance, and scalability of parallel PythonabstractToday's hardware is increasingly parallel, and to increase performance, applications must be able to use this parallelism. Hence, programming languages must provide the means for parallel execution. The language Python offers a multithreading, shared-memory model for concurrency. However, simultaneous execution of threads, i.e., parallel execution, is not a standard feature of current virtual machines (VM) for Python. Instead, the predominant Python VMs depend on a global interpreter lock, which serializes the execution. Remigius Meier, Thomas R. Gross |
DLS | 1 |
| 2018 | Virtual machine design for parallel dynamic programming languagesabstractTo leverage the benefits of modern hardware, dynamic languages must support parallelism, and parallelism requires a virtual machine (VM) capable of parallel execution — a parallel VM. However, unrestricted concurrency and the dynamism of dynamic languages pose great challenges to the implementation of parallel VMs. In a dynamic language, a program changing itself is part of the language model. To help the VM, languages often choose memory models (MM) that weaken consistency guarantees. With lesser guarantees, local program state cannot be affected by every concurrent state change. And less interference allows a VM to make local assumptions about the program state which are not immediately violated. These local assumptions are essential for a VM’s just-in-time compiler for delivering state-of-the-art VM performance. Unfortunately, some dynamic languages employ MMs that give exceedingly strong consistency guarantees and thereby hinder the development of parallel VMs. Such is the case in particular for languages that depend on a global interpreter lock, which mandates a MM with sequential consistency and instruction atomicity. In this paper, we reflect on a first implementation of the Parallel RPython execution model, which facilitates the development of parallel VMs by decoupling language semantics from the synchronization mechanism used within the VM. The implementation addresses the challenges imposed by strong MMs through strict isolation of concurrent computations. This isolation builds on transactional parallel worlds, which are implemented with a novel combination of software techniques and the capabilities of modern hardware. We evaluate a set of parallel Python programs on a parallel VM that relies on Parallel RPython’s implementation. Compared with a serial baseline VM that relies on a global interpreter lock, the parallel VM achieves speedups of up to 7.5× on 8 CPU cores. The evaluation shows that our realization of Parallel RPython meets the challenges of dynamic languages, and that it can serve as a solid foundation for the construction of parallel dynamic language VMs. Remigius Meier, Armin Rigo, Thomas R. Gross |
Proc. ACM Program. Lang. | 1 |
| 2016 | Parallel virtual machines with RPythonabstractThe RPython framework takes an interpreter for a dynamic language as its input and produces a Virtual Machine (VM) for that language. RPython is being used to develop PyPy, a high-performance Python interpreter. However, the produced VM does not support parallel execution since the framework relies on a Global Interpreter Lock (GIL): PyPy serialises the execution of multi-threaded Python programs. Remigius Meier, Armin Rigo, Thomas R. Gross |
DLS | 1 |