Demo Data from EDBT 2026 / reviewers in the wild / expert
Ulan Degenbaev
dblp:63/7264
· DBLP profile ↗
4ranked-venue papers
3as first author
1since 2021 · last 2023
—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-authorSystems, architecture and hardware · 1 · 1 since 2021
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.
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Cloud and datacenter computing · 100% | |
| Software engineering, system software, and programming languages
2 papers |
Runtime systems and virtual machines · 60% Operating systems · 40% | |
| Network and information security
1 paper |
Blockchain and cryptocurrency security · 100% |
Topics — the 5 heaviest of 7, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Cloud and datacenter computing
serverless computing |
0.7 | 1 | 2023 | Decentralized and Stateful Serverless Computing on the Internet Computer Blockchain · USENIX ATC 2023 |
Cloud and datacenter computing › serverless computing
stateful serverless |
0.7 | 1 | 2023 | Decentralized and Stateful Serverless Computing on the Internet Computer Blockchain · USENIX ATC 2023 |
Runtime systems and virtual machines
garbage collection |
0.6 | 2 | 2018 | Cross-component garbage collection · Proc. ACM Program. Lang. 2018 Idle time garbage collection scheduling · PLDI 2016 |
Operating systems › resource management
memory management |
0.3 | 1 | 2018 | Cross-component garbage collection · Proc. ACM Program. Lang. 2018 |
Runtime systems and virtual machines
managed runtime |
0.1 | 1 | 2016 | Idle time garbage collection scheduling · PLDI 2016 |
Methods — techniques the papers use, named apart from their topics
heap snapshot analysis · 0.3cross-component tracing algorithm · 0.3frame time discrepancy metric · 0.2concurrent garbage collection · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Decentralized and Stateful Serverless Computing on the Internet Computer Blockchain
Maksym Arutyunyan, Andriy Berestovskyy, Adam Bratschi-Kaye, Ulan Degenbaev, Manu Drijvers, Islam El-Ashi, Stefan Kaestle, Roman Kashitsyn, Maciej Kot, Yvonne-Anne Pignolet, Rostislav Rumenov, Dimitris Sarlis, Alin Sinpalean, Alexandru Uta, Bogdan Warinschi, Alexandra Zapuc |
USENIX ATC | 4 |
| 2019 | Concurrent marking of shape-changing objectsabstractEfficient garbage collection is a key goal in engineering high-performance runtime systems. To reduce pause times, many collector designs traverse the object graph concurrently with the application, an optimization known as concurrent marking. Traditional concurrent marking imposes strict invariants on the object shapes: 1) static type layout of objects, 2) static object memory locations, 3) static object sizes. High performance virtual machines for dynamic languages, for example, the V8 JavaScript virtual machine used in the Google Chrome web browser, generally violate these constraints in pursuit of high throughput for a single thread. Taking V8 as an example, we show that some object shape changes are safe and can be handled by traditional concurrent marking algorithms. For unsafe shape changes, we introduce novel wait-free object snapshotting and lock-based concurrent marking algorithms and prove that they preserve key invariants. We implemented both algorithms in V8 and achieved performance improvements on various JavaScript benchmark suites and real-world web workloads. Concurrent marking of shape-changing objects using the wait-free object snapshotting algorithm is enabled by default in Chrome since version 64. Ulan Degenbaev, Michael Lippautz, Hannes Payer |
ISMM | 1 |
| 2018 | Cross-component garbage collectionabstractEmbedding a modern language runtime as a component in a larger software system is popular these days. Communication between these systems often requires keeping references to each others' objects. In this paper we present and discuss the problem of cross-component memory management where reference cycles across component boundaries may lead to memory leaks and premature reclamation of objects may lead to dangling cross-component references. We provide a generic algorithm for effective, efficient, and safe garbage collection over component boundaries, which we call cross-component tracing. We designed and implemented cross-component tracing in the Chrome web browser where the JavaScript virtual machine V8 is embedded into the rendering engine Blink. Cross-component tracing from V8's JavaScript heap to Blink's C++ heap improves garbage collection latency and eliminates long-standing memory leaks for real websites in Chrome. We show how cross-component tracing can help web developers to reason about reachability and retainment of objects spanning both V8 and Blink components based on Chrome's heap snapshot memory tool. Cross-component tracing was enabled by default for all websites in Chrome version 57 and is also deployed in other widely used software systems such as Opera, Cobalt, and Electron. Ulan Degenbaev, Jochen Eisinger, Kentaro Hara, Marcel Hlopko, Michael Lippautz, Hannes Payer |
Proc. ACM Program. Lang. | 1 |
| 2016 | Idle time garbage collection schedulingabstractEfficient garbage collection is increasingly important in today's managed language runtime systems that demand low latency, low memory consumption, and high throughput. Garbage collection may pause the application for many milliseconds to identify live memory, free unused memory, and compact fragmented regions of memory, even when employing concurrent garbage collection. In animation-based applications that require 60 frames per second, these pause times may be observable, degrading user experience. This paper introduces idle time garbage collection scheduling to increase the responsiveness of applications by hiding expensive garbage collection operations inside of small, otherwise unused idle portions of the application's execution, resulting in smoother animations. Additionally we take advantage of idleness to reduce memory consumption while allowing higher memory use when high throughput is required. We implemented idle time garbage collection scheduling in V8, an open-source, production JavaScript virtual machine running within Chrome. We present performance results on various benchmarks running popular webpages and show that idle time garbage collection scheduling can significantly improve latency and memory consumption. Furthermore, we introduce a new metric called frame time discrepancy to quantify the quality of the user experience and precisely measure the improvements that idle time garbage collection provides for a WebGL-based game benchmark. Idle time garbage collection is shipped and enabled by default in Chrome. Ulan Degenbaev, Jochen Eisinger, Manfred Ernst, Ross McIlroy, Hannes Payer |
PLDI | 1 |