- 主题:CPU指令乱序执行的好处是啥?
【 在 wjhtingerx 的大作中提到: 】
: 如果多线程共享全局变量之类的场景,指令乱序执行怎么确保运行正确呢?
这个时候资深码农的作用就显现出来了。
你得知道什么时候需要barrier...
--
FROM 111.197.112.*
【 在 wjhtingerx 的大作中提到: 】
: 但是C语言呢,没几个人会知道插入barry啊
:
那是因为大多数人用C搞的是协议栈等上层应用吧。
做OS内核和外设驱动的,对barrier一定要深刻理解,否则就不是一个合格码农
--
FROM 111.197.112.*
【 在 RichyMong 的大作中提到: 】
: 我感觉回答都没到一个点啊,为啥cpu要乱序执行指令,和多线程无关吧
: 发自「今日水木 on iOS」
为了充分填满流水线啊,最理想的情况,一个节拍能一个issue,就是能出一个结果。
如果不乱序,取指->译指->进加法器... ->issue流出,n多个节拍。 现在动不动就是8级以上的流水线,不乱序执行,依次来的话,就得8个tick才能有一个issue
--
修改:beanspower FROM 111.197.112.*
FROM 111.197.112.*