Advertisement

深入分析 Memory barrier 的概念及其重要性

阅读量:

文章目录

  • 浅谈Memory barrier
    • 1. 内存乱序
    • 2. 锁机制
    • 3. 内存屏障
    • 4. 参考

浅谈Memory barrier

1. 内存乱序

按照我们的常规思维逻辑,在编程语言中程序代码中的指令运行顺序是由开发者预先设定好的。例如下面所示的情况:

复制代码
 读取程序计数器PC指向的指令
    2. PC指向下一条指令
    3. CPU执行当前指令
    4. 重复上述过程直到程序执行完成

这是基础性的内容,在实际教学中往往会被简化处理;类似于小学课本中关于泡茶的问题,在实际操作中,并非所有学生都会严格按照上述步骤执行;大多数聪明的学生会根据实际情况灵活调整流程,在保证处理流程的基本顺序的前提下,合理的策略是在保证处理流程的基本顺序的前提下适当调整操作顺序以缩短整体所需时间;这种优化方法被称为乱序执行策略,在计算机科学领域也被称为memory reordering(内存重排)技术。

中央处理器分为两类核心功能:执行计算运算以及处理存储空间的数据传输。举例如下:语句1主要专注于执行计算运算,在这种情况下中央处理器表现出色;而语句2则需要从内存区域读取数据字符串,在这一过程中中央处理器会经历较长的等待时间。由于其运算速度显著高于其他类型的操作,在同一时间段内

全部评论 (0)

还没有任何评论哟~