On 27/02/2019 15:49, Thomas Gleixner wrote: > Vincenzo, > > On Wed, 27 Feb 2019, Vincenzo Frascino wrote: >> >> The clocksource array has two elements (CLOCKSOURCE_RAW, CLOCKSOURCE_MONO) and >> the situation with my scheme should be the following: > > Oops. I misread the patch, but still... > >> u32 seq: + 0 >> s32 clock_mode; + 4 >> u64 cycle_last; + 8 >> struct vdso_cs cs[2]; + 16 >> struct vdso_ts basetime[VDSO_BASES]; + 48 >> >> which I agree makes still things a bit worse. > >>> It's easy enough to benchmark these implementations and without trying I'm >>> pretty sure that you can see the performance drop nicely. Please do so next >>> time and provide the numbers in the changelogs. >>> >> >> I did run some benchmarks this morning to quantify the performance impact and >> seems that using vdsotest[1] the difference in between a stock linux kernel >> 5.0.0-rc7 and one that has unified vDSO, running on my x86 machine (Xeon Gold >> 5120T), is below 1%. Please find the results below, I will add them as well to >> the next changelog. > > I have some doubts about 1%. > NEW STOCK > clock-gettime-monotonic: vdso: 31 28 ~ 10% slower > clock-gettime-realtime: vdso: 32 29 ~ 10% slower > Sorry, there was an error in my script that I used to extract percentages. I agree! Luckily I shared the numbers. Thanks Thomas. > Thanks, > > tglx > -- Regards, Vincenzo