高TLB击落计数影响性能

我们正在RHEL 6.7上运行JBoss EAP中的一个应用程序,并且在集群中的性能差异很大。 在8个虚拟机中,大多数会在〜200ms内响应请求,但是其中一个或两个会有2或4秒的响应时间。

研究这个问题,我们从vmstat观察到,速度较慢的服务器每五秒报告几十万个系统中断,而在快速服务器上则几千个。 移动到/ proc / interrupts,我们看到中断是TLB Shootdowns。 他们每隔几秒就有10万到20万的数据。

我已经做了一些阅读,以了解这些是什么( 我最喜欢这个描述)。 但是我不知道下一步该去哪里。 为什么TLB中断被发出?