I have a basic question about how the read/write ratio is enforced in fio. I am new to fio, and I am not well versed enough in C to dig into the source code myself, so I am asking here. For I/O in a fixed size region, I am assuming that fio dynamically throttles the number of requests in each direction as the job runs, rather than predetermining the number of requests based on total size and block sizes. Is this correct? 1. If so, how does it do this? Is there some sort of threshold where, if too much of one type of request is happening, it will limit that type and only allow the other to be requested? What happens if there are multiple jobs reading and writing concurrently? 2. Why choose to do it this way rather than predetermining the number of requests and limiting it that way? If you could also point me to where this logic is happening in the source code, that would also be immensely helpful. Thanks so much!