编译器和处理器优化如何加速代码执行?
How compiler and processor optimization works to speed up code execution?
在 Linux Kernel Development (3rd Edition) 中,内核同步方法、排序和障碍。有个例子:
我对这本书中的陈述感到困惑:
Again, without memory barriers, it would be possible for b to be set
to pp before pp was set to p.
那么,作者的意思是如果没有read_barrier_depends()
,b = *pp
会先于pp = p
执行?这怎么可能?
我对你的问题很感兴趣,所以搜索了更长的时间。我在内核列表中找到了 read_barrier_depends 功能的 post,并做了一些解释:
在 Linux Kernel Development (3rd Edition) 中,内核同步方法、排序和障碍。有个例子:
我对这本书中的陈述感到困惑:
Again, without memory barriers, it would be possible for b to be set to pp before pp was set to p.
那么,作者的意思是如果没有read_barrier_depends()
,b = *pp
会先于pp = p
执行?这怎么可能?
我对你的问题很感兴趣,所以搜索了更长的时间。我在内核列表中找到了 read_barrier_depends 功能的 post,并做了一些解释: