Linux内核在压力下具有更好的响应时间

我有一种我无法理解的stange行为:
出于性能测量的目的,我使用’旧’并行端口接口在debian内核3.2.0-4-amd64上生成IRQ(我使用连接到ACK引脚的外部信号发生器).

我编写了自己的内核模块(仅限上半部分)来处理中断并将外部信号发送回并行端口,并在示波器上显示两个信号,以便测量内核响应时间.
一切都按预期工作,我可以看到平均70μs的时间响应,一些20μs的“爆发”.我正在运行“Intel(R)Core(TM)i3-3240 cpu @ 3.40GHz”.

现在,“无法解释”的部分.
如果我使用“压力”程序加载cpu,内存和I / O,我预计平均时间最差,但是相反的情况发生:我的平均响应时间下降到20μs.
我尝试了3个不同的内核:
vanilla,PREEMT-RT anf vanilla,NO_HZ选项设置为false.
有人可以解释这个的魔力吗?

我将“调控器”配置更改为“性能”,但不会更改任何内容.

解决方法

您的中断处理程序的优先级高于压力程序. 因此,压力程序的唯一影响是防止cpu休眠,这避免了cpu在中断到来时从休眠状态唤醒所需的延迟.

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...