UPDF AI

Introducing the pseudorandom value generator selection in the compilation toolchain

Michael Leonard,Simone Campanoni

2020 · DOI: 10.1145/3368826.3377906
IEEE/ACM International Symposium on Code Generation and Optimization · 1 Citations

TLDR

This work builds PRV Jeeves, the first fully automatic PRVG selector and provides the first deep study into the tradeoffs among the PRVGs in the C++ standard, finding no silver bullet for all programs and architectures.

Abstract

As interest in randomization has grown within the computing community, the number of pseudorandom value generators (PRVGs) at developers' disposal dramatically increased. Today, developers lack the tools necessary to obtain optimal behavior from their PRVGs. We provide the first deep study into the tradeoffs among the PRVGs in the C++ standard, finding no silver bullet for all programs and architectures. With this in mind, we have built PRV Jeeves, the first fully automatic PRVG selector. We demonstrate that when compiling widely-used, highly optimized programs with PRV Jeeves, we are able to cut execution time by 34% on average. This enhancement comes at no cost to developers.