On 2022.02.24 04:08:30 Paul E. McKenney wrote: > On Thu, Feb 24, 2022 at 04:08:30PM +0800, Feng Tang wrote: >> On Wed, Feb 23, 2022 at 03:23:20PM +0100, Rafael J. Wysocki wrote: >>> On Wed, Feb 23, 2022 at 1:40 AM Feng Tang <feng.tang@xxxxxxxxx> wrote: >>> >>> But this is not related to idle as such, but to the fact that idle >>> sometimes stops the scheduler tick which otherwise would run the >>> cpufreq governor callback on a regular basis. >>> >>> It is stopping the tick that gets us into trouble, so I would avoid >>> doing it if the current performance state is too aggressive. >> >> I've tried to simulate Doug's environment by using his kconfig, and >> offline my 36 CPUs Desktop to leave 12 CPUs online, and on it I can >> still see Local timer interrupts when there is no active load, with >> the longest interval between 2 timer interrupts is 4 seconds, while >> idle class's task_tick_idle() will do nothing, and CFS' >> task_tick_fair() will in turn call cfs_rq_util_change() > > Every four seconds? Could you please post your .config? > > Thanx, Paul I steal the kernel config from the Ubuntu mainline PPA. See also earlier on this thread: https://lore.kernel.org/linux-pm/CAAYoRsXkyWf0vmEE2HvjF6pzCC4utxTF=7AFx1PJv4Evh=C+Ow@xxxxxxxxxxxxxx/ but relevant part copied here: > I steal the kernel configuration file from the Ubuntu mainline PPA > [1], what they call "lowlatency", or 1000Hz tick. I make these > changes before compile: > > scripts/config --disable DEBUG_INFO > scripts/config --disable SYSTEM_TRUSTED_KEYS > scripts/config --disable SYSTEM_REVOCATION_KEYS > > I [will] also send you the config and dmesg files in an off-list email. > > [1] https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.17-rc3/ I put the same one I sent Feng on my web site where I was sharing stuff with Srinivas (coded to avoid the barrage of bots): double u double u double u dot smythies dot com/~doug/linux/s18/hwp/srinivas/long_dur/ ... Doug