Various runtime techniques can make use of read barriers in the code. In this context, we mean some piece of code that executes as part of a read operation and not necessarily the particular kind of memory barrier. Examples include instrumentation and certain kinds of concurrent garbage collection techniques. The concern with read barriers is their impact on throughput since reads are common (and relatively cheap when good cache behavior is achieved). The goal of this work is to measure the impacts of a read barrier in .NET across our available microbenchmarks and real-world code examples. We will implement basic optimizations only to limit the time investment at this point.
Q4 2022
No work
Q1 2023
No work
Remaining 2023
Unfunded
Various runtime techniques can make use of read barriers in the code. In this context, we mean some piece of code that executes as part of a read operation and not necessarily the particular kind of memory barrier. Examples include instrumentation and certain kinds of concurrent garbage collection techniques. The concern with read barriers is their impact on throughput since reads are common (and relatively cheap when good cache behavior is achieved). The goal of this work is to measure the impacts of a read barrier in .NET across our available microbenchmarks and real-world code examples. We will implement basic optimizations only to limit the time investment at this point.
Q4 2022
No work
Q1 2023
No work
Remaining 2023
Unfunded