操作系统尝试最小化TLB刷新有多难?

时间:2009-07-29 12:08:52

标签: multithreading caching scheduling tlb

我想知道是否在操作系统中实现了一种通用机制来最小化TLB刷新,例如将同一进程中的线程一起分组到“待安排”列表中。

我认为这是决定在使用进程与线程之间的一个重要因素。如果操作系统不关心下一个线程是否在同一个进程空间中,那么线程“最小化TLB刷新”的所谓优势可能会被高估。是这样的吗?

考虑一个拥有数百个线程和数十个进程的系统。如果这些方法没有以同步方式在同一进程中调度线程进行优化,那么我们对线程性能的期望可能不会那么大。

如果问题不清楚,我会举例说明。

1 个答案:

答案 0 :(得分:2)

CPU设计似乎是evolving towards hardware support for tagged TLB entries。这消除了冲洗TLB的需要。因此,即使假设TLB潮红是当今处理器的一个问题,它可能在几年内不再相关。我不会根据它做任何设计决定。