腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
搜索
关闭
文章
问答
(9999+)
视频
开发者手册
清单
用户
专栏
沙龙
全部问答
原创问答
Stack Exchange问答
更多筛选
回答情况:
全部
有回答
回答已采纳
提问时间:
不限
一周内
一月内
三月内
一年内
问题标签:
未找到与 相关的标签
筛选
重置
2
回答
内存
屏障
和缓存刷新
即使在缓存刷新的情况下,也有实现
内存
屏障
的archs吗?我读到
内存
屏障
只影响CPU重新排序,但我读到了与
内存
屏障
相关的语句:确保所有cpu都看到值.,但对我来说,这意味着缓存刷新/失效。
浏览 4
提问于2012-07-01
得票数 11
3
回答
C++“
内存
屏障
”实例
我读到了这个问题的答案,关于易失性关键字: 如何在C++中实现这个“
内存</e
浏览 7
修改于2021-11-16
得票数 12
6
回答
有效的
内存
屏障
然而,在计数器每增加一次时执行
内存
围栏将显著减慢程序速度。 现在我要做的是,当一个线程将要读取其他线程的计数器时,才会创建一个
内存
栅栏,并且所有线程的计数器都会在此时更新
内存
中的计数器。
浏览 1
修改于2011-09-08
得票数 4
回答已采纳
3
回答
内存
屏障
与互锁操作
假设我们有一个弱
内存
模型,并采用了。是否有可能通过添加
内存
屏障
使其在弱
内存
模型下正常工作?因此,我们可以正确地期望没有弱
内存
模型系统只提供
内存<
浏览 9
提问于2010-07-22
得票数 8
回答已采纳
1
回答
内存
屏障
/栅栏的开销
我目前正在编写C++代码,并且在代码中使用了很多
内存
屏障
/栅栏。我知道,MB命令编译器和硬件不要重新排序读写操作。但我不知道这个操作在运行时对处理器来说有多复杂。我的问题是:这种
屏障
的运行时开销是多少?我在谷歌上没有找到任何有用的答案...开销可以忽略不计吗?或者导致大量使用MBs导致严重的性能问题? 诚挚的问候。
浏览 0
提问于2009-11-29
得票数 7
3
回答
boost::atomic是否充当了硬件
内存
屏障
?
据我所知,编译器(软件)和CPU (硬件)会出于性能原因对指令进行重新排序,而
内存
缓冲器可以防止重新排序,它们是在编译器级别或CPU级别。MSDN说"Interlockedxxxx函数生成一个完整的
内存
屏障
(或栅栏)来确保
内存
操作按顺序完成“,我不知道”完整
内存
屏障
“是指硬件
屏障
还是软件
屏障
? boost::atomic做了什么?
浏览 2
提问于2013-08-28
得票数 1
1
回答
使用
内存
屏障
强制按顺序执行
试图继续我的想法,使用软硬件
内存
屏障
,我可以禁用在编译优化编译的代码中的某个特定函数的无序优化,因此我可以使用不需要无序执行的算法(如Peterson或Deker )来实现软件信号量,我已经测试了以下代码预期的结果是,包含
内存
屏障
的代码的输出文件将包含我在源代码中的所有赋值,其中包含mfence。但是,正如您所看到的,带
内存
屏障
的代码和没有
内存
障碍的代码之间唯一的区别是,前者包含mfence的方式是我没有预料到的,而且不是所有的赋值都包括在内。为什么带有
内存</
浏览 2
修改于2017-05-23
得票数 6
回答已采纳
1
回答
glGenerateMipmap需要哪些
内存
屏障
?
我使用GL_ARB_shader_image_load_store编写了纹理的第一个mipmap级别。文档指出,在其他操作中使用此映像的内容之前,我需要调用glMemoryBarrier,以便适当地刷新缓存。但是,在确保glGenerateMipmap使用最新的书面数据之前,需要设置哪些障碍?
浏览 5
提问于2014-07-11
得票数 8
回答已采纳
1
回答
全
内存
屏障
和ExclusiveReceiverGroup
persistent Receiver registered here )是否需要在totalSum += computationResult.Result周围生成完整的
内存
屏障
我读到线程池为它调用的回调生成一个
内存
屏障
,但这仅仅保证了回调引用本身的新鲜性吗?
浏览 3
修改于2012-10-09
得票数 0
1
回答
如何决定何时使用
内存
屏障
作为编写驱动程序代码的一部分,我遇到了使用
内存
屏障
(栅栏)的代码。在通过Google阅读和浏览之后,了解了为什么它在SMP中被使用和帮助。考虑到这一点,在多线程编程中,我们会发现许多存在
内存
竞争的实例,而在所有地方设置障碍将花费系统CPU。我想知道如何: 有什么具体的技巧或技巧可以帮我找出这个陷阱吗?
浏览 3
提问于2015-07-06
得票数 0
2
回答
Java中
内存
屏障
的行为
在阅读了更多的博客/文章等之后,我现在对
内存
障碍之前/之后加载/存储的行为感到非常困惑。但是,当我查看另一个关于
内存
障碍的时,我得到了以下内容: 在x86上的一个存储
屏障
,“sfence”指令,强制在
屏障
之前的所有存储指令发生在
屏障
之前,并让存储缓冲区被冲到缓存以缓存其发出的CPU。一个负载
屏障
,x86上的“lfence”指令,强制在
屏障
之后发生所有加载指令,然后等待负载缓冲区为该CPU耗尽。,W01/W02之间将有一个Sto
浏览 5
修改于2014-07-08
得票数 35
1
回答
如何使用IAR插入
内存
屏障
?
如何使用ARM的IAR嵌入式工作台插入编译器级别的
内存
屏障
?在《GCC》中,对应的词应该是asm volatile ("" : : : "memory") 中没有
屏障
和栅栏这两个词。
浏览 0
提问于2015-09-10
得票数 3
5
回答
函数调用是
内存
屏障
吗?
因此,问题是:单独的函数调用是否足以发出防止重新排序的
内存
屏障
,或者是在调用memcpy()之前和之后需要的显式
内存
屏障
? 如果我误会了,请纠正我。
浏览 2
提问于2011-04-17
得票数 22
回答已采纳
2
回答
linux内核中
内存
屏障
的用途
如果适用,它还提供了一个
内存
屏障
,以便在其他处理器上强制排序(这只在SMP系统上是需要的),否则它等同于task->state = state 我的问题是:
内存
屏障
如何在其他处理器上强制排序?
浏览 0
提问于2015-06-18
得票数 5
1
回答
使用
内存
屏障
的线程安全事件
为了确保读取非易失性字段的当前值,必须发出
内存
屏障
或将复制操作包装在锁中(并且必须是事件添加/删除方法获得的相同锁),而不必进入痛苦的详细级别。 我对他没有解释的细节很感兴趣。从技术上讲,在这里使用
内存
屏障
会发生什么?与上述方法有什么不同?
浏览 3
提问于2014-07-15
得票数 1
回答已采纳
1
回答
单线程中的
内存
屏障
在多线程应用程序中,如果数据在它们之间共享,则必须使用
内存
屏障
,因为在一个内核上运行的线程中的写可能不会被另一个内核上的另一个线程看到。根据我从其他关于
内存
障碍的解释中所读到的,有人说,如果有一个线程处理某些数据,则不需要
内存
屏障
。 这是我的问题:可能是线程修改了特定内核上的一些数据,然后调度程序决定将该线程迁移到另一个核心。
浏览 1
提问于2014-04-15
得票数 4
回答已采纳
1
回答
InterlockedSubtract解决方案-
内存
屏障
我遇到了一种情况,我希望在HLSL中有一个InterlockedSubtract函数。InterlockedAdd对于整数很好,但是我只能使用uint的RWByteAddressBuffer --我使用的是每一个位,我不希望使用一个编码/解码函数来使ints的行为与uint完全一样。uint oldValue = Source.Load(oldParent, y);问题是,我理解这些操作有可能在几个线程中被混淆,如下所示: Thread 1:
浏览 10
提问于2022-02-17
得票数 0
1
回答
NDIS spinlock是否充当DMA的
内存
屏障
?
在NDIS驱动程序中,我需要将一些数据写入共享
内存
,然后通知HW获取这些数据。对共享
内存
的写入受NDIS自旋锁保护。在写入到共享存储器和通知HW数据已被写入之间可能存在竞争。自旋锁是否作为一种隐含的记忆
屏障
来阻止这场比赛?或者应该显式地添加
内存
屏障
?
浏览 4
修改于2021-11-09
得票数 1
2
回答
了解c++11
内存
屏障
我正在尝试理解c++11中的
内存
栅栏,我知道有更好的方法来做到这一点,原子变量等等,但我想知道这种用法是否正确。
浏览 0
修改于2012-11-30
得票数 41
回答已采纳
2
回答
linux的“互斥锁”是否使用“
内存
屏障
”实现?
我读过,其中Robert提到互斥锁是使用
内存
屏障
实现的,但我无法看到在互斥锁的中使用的
内存
屏障
指令。我想知道他是否指posix库中的互斥锁实现,它确实使用
内存
障碍指令,这样就不会对关键资源进行重新排序。我说的对吗?
浏览 3
修改于2020-08-26
得票数 4
回答已采纳
第 2 页
第 3 页
第 4 页
第 5 页
第 6 页
第 7 页
第 8 页
第 9 页
第 10 页
第 11 页
点击加载更多
领券