On Tue 21-01-25 13:51:11, Andreas Hindborg wrote: > "Jan Kara" <jack@xxxxxxx> writes: > > On Tue 21-01-25 12:13:48, Andreas Hindborg via Lsf-pc wrote: > >> I would like to propose that we have a session on Rust in the block > >> layer again this year. Specifically I would like to discuss some rather > >> puzzling results I observe when I benchmark the C and Rust null block > >> drivers. I did a write up of the challenges I face at [1]. The > >> observations are not tied to rust, they also manifest in the C driver. > > > > The results are indeed somewhat curious. One factor I didn't see addressed > > in your blog is CPU scheduling. I've seen in the past cases where IO tasks > > were getting migrated across cores leading to jumps in perfomance. Did you > > try binding fio jobs to one CPU each? > > Yes, I am pinning the io jobs to cores with fio options `cpus_allowed=0-<jobs>` > and `--cpus_allowed_policy=split` so I get 1 job per core. > > The kernel is configured with PREEMPT_NONE=y. Ah, OK. In that case no great ideas from me. Since you've mentioned that when you get to slow / fast case the performance tends to stay there, perhaps you could use perf to profile the slow / fast case and see where's the difference? Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR