我想知道是否在操作系统中实现了一种通用机制来最小化TLB刷新,例如将同一进程中的线程一起分组到“待安排”列表中。
我认为这是决定在使用进程与线程之间的一个重要因素。如果操作系统不关心下一个线程是否在同一个进程空间中,那么线程“最小化TLB刷新”的所谓优势可能会被高估。是这样的吗?
考虑一个拥有数百个线程和数十个进程的系统。如果这些方法没有以同步方式在同一进程中调度线程进行优化,那么我们对线程性能的期望可能不会那么大。
如果问题不清楚,我会举例说明。
答案 0 :(得分:2)
CPU设计似乎是evolving towards hardware support for tagged TLB entries。这消除了冲洗TLB的需要。因此,即使假设TLB潮红是当今处理器的一个问题,它可能在几年内不再相关。我不会根据它做任何设计决定。