Skip to content

Commit a55e549

Browse files
authored
add pydrofoil bibliography entry (#38)
1 parent 8190ec5 commit a55e549

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

_bibliography/publications.bib

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,14 @@ @inproceedings{vericheri2024
5555
booktitle = {Accepted for publication at the 43rd International Conference on Computer-Aided Design (ICCAD `24)},
5656
abstract = {Protecting data in memory from attackers continues to be a concern in computing systems. CHERI is a promising approach to achieve such protection, by providing and enforcing fine-grained memory protection directly in the hardware. Creating trust for the entire system stack, however, requires a gap-free verification of CHERI's hardware-based protection mechanisms. Existing verification methods for CHERI target the abstract ISA model rather than the underlying hardware implementation. Fully ensuring the CHERI security guarantees for a concrete RTL implementation is a challenge in previous flows and demands high manual efforts. This paper presents VeriCHERI, a novel approach to security verification. It is conceptionally different from previous works in that it does not require any ISA specification. Instead of checking compliance with a golden ISA model, we check against well-established global security objectives of confidentiality and integrity. Fully covering these objectives, VeriCHERI uses as few as four unbounded properties to exhaustively prove or disprove any vulnerability. We demonstrate the effectiveness and scalability of VeriCHERI on a RISC-V based processor implementing a CHERI variant.}
5757
}
58+
59+
@misc{bolztereick2025pydrofoil,
60+
author = {Carl Friedrich Bolz-Tereick and Luke Panayi and Ferdia McKeogh and Tom Spink and Martin Berger},
61+
title = {Pydrofoil: accelerating Sail-based instruction set simulators},
62+
year = {2025},
63+
eprint = {arXiv:2503.04389},
64+
note = {To appear in ECOOP 2025},
65+
pdf = {https://arxiv.org/pdf/2503.04389},
66+
abstract = {We present Pydrofoil, a multi-stage compiler that generates instruction set simulators (ISSs) from processor instruction set architectures (ISAs) expressed in the high-level, verification-oriented ISA specification language Sail. Pydrofoil shows a > 230x speedup over the C-based ISS generated by Sail on our benchmarks, and is based on the following insights. (i) An ISS is effectively an interpreter loop, and tracing just-in-time (JIT) compilers have proven effective at accelerating those, albeit mostly for dynamically typed languages. (ii) ISS workloads are highly atypical, dominated by intensive bit manipulation operations. Conventional compiler optimisations for general-purpose programming languages have limited impact for speeding up such workloads. We develop suitable domain-specific optimisations. (iii) Neither tracing JIT compilers, nor ahead-of-time (AOT) compilation alone, even with domain-specific optimisations, suffice for the generation of performant ISSs. Pydrofoil therefore implements a hybrid approach, pairing an AOT compiler with a tracing JIT built on the meta-tracing PyPy framework. AOT and JIT use domain-specific optimisations. Our benchmarks demonstrate that combining AOT and JIT compilers provides significantly greater performance gains than using either compiler alone.
67+
}
68+
}

0 commit comments

Comments
 (0)