- 主题:多线程如何确保不同线程访问不同通道的内存
--
FROM 120.6.2.*
据我所知不能,或者说非常困难。
问题是:基本上没有这种必要啊,只要控制好NUMA节点就可以了。
其他的交给内存控制器就好了。
【 在 telangpujing 的大作中提到: 】
--
FROM 122.210.84.*
非numa系统呢
【 在 hyoga 的大作中提到: 】
: 据我所知不能,或者说非常困难。
: 问题是:基本上没有这种必要啊,只要控制好NUMA节点就可以了。
: 其他的交给内存控制器就好了。
--
FROM 120.6.2.*
结论是一样的,和有没有NUMA没有关系。
有NUMA通常意味着你有至少2套CPU+分配的内存,NUMA主要是保证CPU只使用近处的也就是
更快的内存。
如果没有NUMA那就假设只有一颗CPU,一样还是基本上不太能指定内存通道。
【 在 telangpujing 的大作中提到: 】
: 非numa系统呢
--
FROM 122.210.84.*
怎么可能控制啊?
【 在 telangpujing 的大作中提到: 】
--
FROM 114.246.238.*
主要是基本上没这种必要,内存控制器会做好它的本职工作的
【 在 ionlight 的大作中提到: 】
: 怎么可能控制啊?
--
FROM 122.210.84.*
内存控制器知道访问请求是哪个线程的?
【 在 hyoga 的大作中提到: 】
: 主要是基本上没这种必要,内存控制器会做好它的本职工作的
--
FROM 120.6.2.*
大前提是:你无法指定哪个线程使用哪条通道(或者哪条内存)
所以你这个问题没有实际意义,这不是内存控制器的工作方式。
我的意思是内存控制器“可以很好的分配内存给你的程序”。
你这个需求基本上没有必要。
能说说为什么会有这种需求吗?
【 在 telangpujing 的大作中提到: 】
: 内存控制器知道访问请求是哪个线程的?
--
FROM 122.210.84.*
提高访问效率啊,做到正真的并行,不然一直两个线程抢用一个通道?
【 在 hyoga 的大作中提到: 】
: 大前提是:你无法指定哪个线程使用哪条通道(或者哪条内存)
: 所以你这个问题没有实际意义,这不是内存控制器的工作方式。
: 我的意思是内存控制器“可以很好的分配内存给你的程序”。
: ...................
--
修改:telangpujing FROM 120.6.2.*
FROM 120.6.2.*
你是否真的遇到了两个线程一直抢用一个通道导致未能发挥内存带宽的事情?
【 在 telangpujing 的大作中提到: 】
: 提高访问效率啊,做到正真的并行,不然一直两个线程抢用一个通道?
--
FROM 122.210.84.*