STAMP-Rust: Language and Performance Comparison to C on Transactional Benchmarks
Research output: Contribution to book/conference proceedings/anthology/report › Conference contribution › Contributed › peer-review
Contributors
Abstract
Software Transactional Memory has been used as a synchronization mechanism that is easier to use and compose than locking ones. The mechanisms continued relevance in research and application design motivates considerations regarding safer implementations than existing C libraries. In this paper, we study the impact of the Rust programming language on STM performance and code quality. To facilitate the comparison, we manually translated the STAMP benchmark suite to Rust and also generated a version using a state-of-the-art C-to-Rust transpiler. We find that, while idiomatic implementations using safe Rust are generally slower than both C and transpiled code, they guarantee memory safety and improve code quality.
Details
Original language | English |
---|---|
Title of host publication | Benchmarking, Measuring, and Optimizing - 14th Bench Council International Symposium, Bench 2022, Revised Selected Papers |
Editors | Ana Gainaru, Ce Zhang, Chunjie Luo |
Publisher | Springer Science and Business Media B.V. |
Pages | 160-175 |
Number of pages | 16 |
ISBN (print) | 9783031311796 |
Publication status | Published - 2023 |
Peer-reviewed | Yes |
Publication series
Series | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
---|---|
Volume | 13852 LNCS |
ISSN | 0302-9743 |
Conference
Title | 14th International Symposium on Benchmarking, Measuring, and Optimization, Bench 2022 |
---|---|
Duration | 7 - 9 November 2022 |
City | Virtual, Online |
External IDs
ORCID | /0000-0002-5007-445X/work/160049124 |
---|
Keywords
ASJC Scopus subject areas
Keywords
- Memory Safety, Parallelism, Software Transactional Memory