当前位置: 首页 > wzjs >正文

任经理 徐州网站建设做影视网站不备案

任经理 徐州网站建设,做影视网站不备案,游戏加盟招商,成都原画培训机构排行一、理解内存屏障(Memory Barrier) 开发者显然不明白一个事实——程序实际运行时很可能并不完全按照开发者编写的顺序访问内存,因为现代计算机为了提高性能而采取乱序执行,内存乱序访问主要发生在如下两个阶段: 编译…

一、理解内存屏障(Memory Barrier)

开发者显然不明白一个事实——程序实际运行时很可能并不完全按照开发者编写的顺序访问内存,因为现代计算机为了提高性能而采取乱序执行,内存乱序访问主要发生在如下两个阶段:

  • 编译时。编译器优化导致内存乱序访问。
  • 执行时。多个 CPU 的交互引起内存乱序访问。

1.1 编译

编译器会把符合人类思维逻辑的高级语言代码(如 C 语言的代码)翻译成符合 CPU 运算
规则的汇编指令。编译器会在翻译成汇编指令时对其进行优化,如内存访问指令的重新排序可
以提高指令级并行效率。然而,这些优化可能会与程序员原始的代码逻辑不符,导致一些错误
发生。编译时的乱序访问可以通过 barrier()函数来规避。
#define barrier() __asm__ __volatile__ ("" ::: "memory")

1.2 执行

于现代处理器普遍采用超标量架构、乱序发射以及乱序执行等技术来提高指令级并行效
率,因此指令的执行序列在处理器流水线中可能被打乱, 与程序代码编写时的序列不一致,这
就产生了程序员错觉——处理器访问内存的次序与代码的次序相同。
另外,现代处理器采用多级存储结构,如何保证处理器对存储子系统访问的正确性也是一
大挑战。


二、内存屏障指令

ARMv8 指令集提供了 3 条内存屏障指令。

2.1 数据存储屏障(Data Memory Barrier, DMB)指令: 仅当所有在它前面的存储器访问操作都执行完毕后, 才提交(commit) 在它后面的访问指令。 DMB 指令保证的是DMB 指令之前的所有内存访问指令和 DMB 指令之后的所有内存访问指令的执行顺序。也就是说, DMB 指令之后的内存访问指令不会被处理器重排到 DMB 指令的前面。 DMB 指令不会保证内存访问指令在内存屏障指令之前完成, 它仅仅保证内存屏障指令前后的内存访问的执行顺序。 DMB 指令仅仅影响内存访问指令、 数据高速缓存指令以及高速缓存管理指令等,并不会影响其他指令(例如算术运算指令等)的顺序。


2.2 数据同步屏障(Data Synchronization Barrier, DSB)指令: 比 DMB 指令要严格一些,仅当所有在它前面的内存访问指令都执行完毕后,才会执行在它后面的指令,即任何指令都要等待 DSB 指令前面的内存访问指令完成。 位于此指令前的所有缓存(如分支预测和 TLB 维护)操作需要全部完成。


2.3 指令同步屏障(Instruction Synchronization Barrier, ISB)指令: 确保所有在 ISB 指令之后的指令都从指令高速缓存或内存中重新预取。 它刷新流水线(flush pipeline)和预取缓冲区后才会从指令高速缓存或者内存中预取 ISB 指令之后的指令。 ISB 指令通常用来保证上下文切换(如 ASID 更改、 TLB 维护操作等)的效果。
 

参考:

什么是内存屏障(Memory Barriers) - CharyGao - 博客园

https://zhuanlan.zhihu.com/p/675488927

http://www.dtcms.com/wzjs/591715.html

相关文章:

  • 官方网站建设计划书wordpress主题2019
  • 哪个博客可以做单页网站有经验的赣州网站建设
  • 如何做学校网站上海网络维护哪家品质好
  • 网站中全景是怎么做的公司网站用服务器
  • 广州网站设计工作室wordpress 广告插件
  • 搜索引擎提交网站做瑞士网站
  • 上海网站建设公司指南百度收录网站之后又怎么做
  • 做育儿类网站用什么程序好宝安网站建设方案外包
  • 网站设计侵权养生门户网站源码
  • 公司网站建设要求书腾讯短网址在线生成
  • 网站建设合理化建议方案网站关键字怎么做
  • 宣传 网站建设方案模板下载网站开发合同需要交印花税吗
  • 任何人任意做网站销售产品违法吗手机 网站开发软件
  • 手机 网站开发aspx中国公共信息服务平台
  • 广州购物网站开发携程网站模板
  • 做豆腐交流经验的网站网站改手机版
  • 电商网站开发团队wordpress 显示一个类目
  • 电商网站建设c微fzsszai平台公司代理注册
  • 广西建设厅考试网站首页北京网下载
  • 哪些网站可宣传如何抄袭网站
  • 嘉兴网嘉兴网站建设网站改版降权多久恢复
  • 单页面网站教程清河网站建设设计
  • 那个网站可以做数学题赚钱广告网站定制
  • 蚌埠网站建设公司cztv业务流程外包
  • 免费企业网站建设免费html家具网站源代码
  • 佛山免费自助建站模板网站了建设
  • 北京海淀建设工程律师推荐镇江网站seo公司
  • 二级网站内容建设要求教学网站建设计划
  • 制作网站需要哪些技术人员免费空间建网站
  • 株洲企业网站制作用angular做的网站