说到操作系统和浮点单元的事,我想到了之前看的LazyFP攻击的资料。以前的应用很少用FPU,如果用到FPU的话,第一条执行的FPU指令会触发异常,操作系统可以用这个方法知道这个进程用了FPU.
由于AMD64体系结构包含了SSE,现在AMD64的大多数C库和编译器都会用SSE指令,可以认为大多数的应用程序都会用FPU.
【 在 hgoldfish (老鱼) 的大作中提到: 】
: 但操作系统搞不清楚线程会不会使用浮点单元,所以调度算法应该和 SMT 差不多才对。
: 后来有分析推土机的取指、译码单元太少,所以性能不行。农企在 28nm 时代,把晶体管都投入到定点计算,其它单元的晶体管数量就少了。现在国产的 CPU 也在走同样的老路。
--
FROM 123.114.52.*