VLDB 2026 Research / reviewers in the wild / expert
Conor Hetland
dblp:180/8561
· DBLP profile ↗
6ranked-venue papers
2as first author
0since 2021 · last 2020
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 6 · 2 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.
| Computer architecture, parallel and distributed computing, and storage systems
3 papers |
Performance modeling and evaluation · 29% Parallel and multicore computing · 27% Embedded and real-time systems · 22% | |
| Software engineering, system software, and programming languages
2 papers |
Operating systems · 66% Debugging and program repair · 34% |
Topics — the 16 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Performance modeling and evaluation › program instrumentation
binary instrumentation |
0.4 | 1 | 2020 | Spying on the Floating Point Behavior of Existing, Unmodified Scientific Applications · HPDC 2020 |
Performance modeling and evaluation
program instrumentation |
0.4 | 1 | 2020 | Spying on the Floating Point Behavior of Existing, Unmodified Scientific Applications · HPDC 2020 |
Performance modeling and evaluation
tracing |
0.4 | 1 | 2020 | Spying on the Floating Point Behavior of Existing, Unmodified Scientific Applications · HPDC 2020 |
Parallel and multicore computing › synchronization
barrier synchronization |
0.4 | 1 | 2019 | Paths to Fast Barrier Synchronization on the Node · HPDC 2019 |
Processor architecture and microarchitecture
instruction set architecture |
0.4 | 1 | 2019 | Paths to Fast Barrier Synchronization on the Node · HPDC 2019 |
Processor architecture and microarchitecture › instruction set architecture
ISA extension |
0.4 | 1 | 2019 | Paths to Fast Barrier Synchronization on the Node · HPDC 2019 |
Parallel and multicore computing › synchronization
synchronization mechanisms |
0.4 | 1 | 2019 | Paths to Fast Barrier Synchronization on the Node · HPDC 2019 |
Embedded and real-time systems › real-time scheduling
hard real-time scheduling |
0.3 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Parallel and multicore computing
parallel programming runtimes |
0.3 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Embedded and real-time systems › real-time scheduling
parallel real-time task scheduling |
0.3 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Embedded and real-time systems
real-time scheduling |
0.3 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Operating systems › kernel
kernel design |
0.2 | 1 | 2016 | Automatic Hybridization of Runtime Systems · HPDC 2016 |
Debugging and program repair
fault localization |
0.1 | 1 | 2020 | Spying on the Floating Point Behavior of Existing, Unmodified Scientific Applications · HPDC 2020 |
Reconfigurable computing and FPGAs › FPGA SoC
CPU-FPGA integration |
0.1 | 1 | 2019 | Paths to Fast Barrier Synchronization on the Node · HPDC 2019 |
High-performance computing
barrier elimination |
0.1 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Parallel and multicore computing
synchronization |
0.1 | 1 | 2018 | Hard real-time scheduling for parallel run-time systems · HPDC 2018 |
Methods — techniques the papers use, named apart from their topics
tracing · 0.9binary instrumentation · 0.9simulation · 0.4performance evaluation · 0.4resource throttling · 0.3per-hardware-thread scheduling · 0.3runtime splitting · 0.2compiler toolchain · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | Spying on the Floating Point Behavior of Existing, Unmodified Scientific ApplicationsabstractScientific (and other) applications are critically dependent on calculations done using IEEE floating point arithmetic. A number of concerns have been raised about correctness in such applications given the numerous gotchas the IEEE standard presents for developers, as well as the complexity of its implementation at the hardware and compiler levels. The standard and its implementations do provide mechanisms for analyzing floating point arithmetic as it executes, making it possible to find and track problematic operations. However, this capability is seldom used in practice. In response, we have developed FPSpy, a tool that provides this capability when operating underneath existing, unmodified x64 application binaries on Linux, including those using thread- and process-level parallelism. FPSpy can observe application behavior without any cooperation from the application or developer, and can potentially be deployed as part of a job launch process. We present the design, implementation, and performance evaluation of FPSpy. FPSpy operates conservatively, getting out of the way if the application itself begins to use any of the OS or hardware features that FPSpy depends on. Its overhead can be throttled, allowing a tradeoff between which and how many unusual events are to be captured, and the slowdown incurred by the application, with the low point providing virtually zero slowdown. We evaluated FPSpy by using it to methodically study seven widely-used applications/frameworks from a range of domains (five of which are in the NSF XSEDE top-20), as well as the NAS and PARSEC benchmark suites. All told, these comprise about 7.5 million lines of source code in a wide range of languages, and parallelism models (including OpenMP and MPI). FPSpy was able to produce trace information for all of them. The traces show that problematic floating point events occur in both the applications and the benchmarks. Analysis of the rounding behavior captured in our traces also suggests the feasibility of an approach to adding adaptive precision underneath existing, unmodified binaries. Peter A. Dinda, Alex Bernat, Conor Hetland |
HPDC | 3 |
| 2019 | Paths to Fast Barrier Synchronization on the NodeabstractSynchronization primitives like barriers heavily impact the performance of parallel programs. As core counts increase and granularity decreases, the value of enabling fast barriers increases. Through the evaluation of the performance of a variety of software implementations of barriers, we found the cost of software barriers to be on the order of tens of thousands of cycles on various incarnations of x64 hardware. We argue that reducing the latency of a barrier via hardware support will dramatically improve the performance of existing applications and runtimes, and would enable new execution models, including those which currently do not perform well on multicore machines. To support our argument, we first present the design, implementation, and evaluation of a barrier on the Intel HARP, a prototype that integrates an x64 processor and FPGA in the same package. This effort gives insight into the potential speed and compactness of hardware barriers, and suggests useful improvements to the HARP platform. Next, we turn to the processor itself and describe an x64 ISA extension for barriers, and how it could be implemented in the microarchitecture with minimal collateral changes. This design allows for barriers to be securely managed jointly between the OS and the application. Finally, we speculate on how barrier synchronization might be implemented on future photonics-based hardware. Conor Hetland, Georgios Tziantzioulis, Brian Suchy, Michael Leonard, John Albers, Nikos Hardavellas, Peter A. Dinda |
HPDC | 1 |
| 2019 | Prospects for Functional Address TranslationabstractAddress translation fundamentally embodies a translation function that maps from virtual to physical addresses. In current systems, the translation function is encoded by the kernel in an in-memory radix tree structure (the page table hierarchy) which is then interpreted by the hardware (the pagewalker, pagewalk-caches, and TLBs). We consider implementing the translation function itself as reconfigurable hardware-does this make any sense? To study this question, we collected numerous in-situ Linux page tables for a wide range of workloads, including those from HPC, to serve as example translation functions. We then prototyped several potential mechanisms to implement the translation function, including inverted page tables with function-specific perfect hashing, translation functions directly implemented using Espresso-minimized PLAs, translation functions genetically-evolved in a language suitable for FPGA-like synthesis, and translation functions based on recovered/manufactured region (segment/mmap) lookup using multiplexor trees. Each mechanism was then evaluated using the Linux page tables, primarily for space and lookup speed. We report our findings and try to address the question. Conor Hetland, Georgios Tziantzioulis, Brian Suchy, Kyle C. Hale, Nikos Hardavellas, Peter A. Dinda |
MASCOTS | 1 |
| 2018 | Hard real-time scheduling for parallel run-time systemsabstractHigh performance parallel computing demands careful synchronization, timing, performance isolation and control, as well as the avoidance of OS and other types of noise. The employment of soft real-time systems toward these ends has already shown considerable promise, particularly for distributed memory machines. As processor core counts grow rapidly, a natural question is whether similar promise extends to the node. To address this question, we present the design, implementation, and performance evaluation of a hard real-time scheduler specifically for high performance parallel computing on shared memory nodes built on x64 processors, such as the Xeon Phi. Our scheduler is embedded in a kernel framework that is already specialized for high performance parallel run-times and applications, and that meets the basic requirements needed for a real-time OS (RTOS). The scheduler adds hard real-time threads both in their classic, individual form, and in a group form in which a group of parallel threads execute in near lock-step using only scalable, per-hardware-thread scheduling. On a current generation Intel Xeon Phi, the scheduler is able to handle timing constraints down to resolution of ∼13,000 cycles (∼10 μs), with synchronization to within ∼4,000 cycles (∼3 μs) among 255 parallel threads. The scheduler isolates a parallel group and is able to provide resource throttling with commensurate application performance. We also show that in some cases such fine-grain control over time allows us to eliminate barrier synchronization, leading to performance gains, particularly for fine-grain BSP workloads. Peter A. Dinda, Jinghang Wang, Chris Beauchene, Conor Hetland |
HPDC | 5 |
| 2018 | Do Developers Understand IEEE Floating Point?abstractFloating point arithmetic, as specified in the IEEE standard, is used extensively in programs for science and engineering. This use is expanding rapidly into other domains, for example with the growing application of machine learning everywhere. While floating point arithmetic often appears to be arithmetic using real numbers, or at least numbers in scientific notation, it actually has a wide range of gotchas. Compiler and hardware implementations of floating point inject additional surprises. This complexity is only increasing as different levels of precision are becoming more common and there are even proposals to automatically reduce program precision (reducing power/energy and increasing performance) when results are deemed ""good enough.'"" Are software developers who depend on floating point aware of these issues? Do they understand how floating point can bite them? To find out, we conducted an anonymous study of different groups from academia, national labs, and industry. The participants in our sample did only slightly better than chance in correctly identifying key unusual behaviors of the floating point standard, and poorly understood which compiler and architectural optimizations were non-standard. These surprising results and others strongly suggest caution in the face of the expanding complexity and use of floating point arithmetic. Peter A. Dinda, Conor Hetland |
IPDPS | 2 |
| 2016 | Automatic Hybridization of Runtime SystemsabstractThe hybrid runtime (HRT) model offers a plausible path towards high performance and efficiency. By integrating the OS kernel, parallel runtime, and application, an HRT allows the runtime developer to leverage the full privileged feature set of the hardware and specialize OS services to the runtime's needs. However, conforming to the HRT model currently requires a complete port of the runtime and application to the kernel level, for example to our Nautilus kernel framework, and this requires knowledge of kernel internals. In response, we developed Multiverse, a system that bridges the gap between a built-from-scratch HRT and a legacy runtime system. Multiverse allows existing, unmodified applications and runtimes to be brought into the HRT model without any porting effort whatsoever. Developers simply recompile their package with our compiler toolchain, and Multiverse automatically splits the execution of the application between the domains of a legacy OS and an HRT environment. To the user, the package appears to run as usual on Linux, but the bulk of it now runs as a kernel. The developer can then incrementally extend the runtime and application to take advantage of the HRT model. We describe the design and implementation of Multiverse, and illustrate its capabilities using the Racket runtime system. Kyle C. Hale, Conor Hetland, Peter A. Dinda |
HPDC | 2 |