克雷,对不起,为清晰的答案再次上升!在answer之后,我收到了关于域映射的更多问题。如果你清除我对域映射的怀疑,我将非常感激并非常感激。
我希望,我已经按顺序排列了问题。继续:“教堂语言中的dmapped域如何实际映射到?”
1.)什么是域映射? - 域映射定义从域和阵列的全局数组索引到群集中的一组语言环境的映射。
我总结了我从研究论文和其他可能存在错误的ppts中了解的内容。请随时纠正答案。
const Domain = {1..8,1..8} dmapped Block({1..8,1..8})
这里{1..8,1..8}
是空间indexspace(域),即分配给使用Block
- 配送域映射与boundingBox = {1..8,1..8}
从Block
域地图构造的语言环境,
proc block(boundingBox: domain,
targetlocales:[] locale = Locales,
datapartasks = ...,
dataparmingranularity = ...
)
Block
domain-map只想知道关于boundingBoX
,targetlocales
和datapar*
'-s并且不需要domain
,在这里是{1..8,1..8}
。由于在chapel本身内部有很多用于创建域映射的界面,我发现很难正确处理事物,其中一些界面隐藏了用户的一些信息。
所以我的问题是:难道Block
域地图上targetlocales
创建实例,其中包含本地索引集,如{1..2,3..4}
上locale 1
,{1..2,1..2}
上locale 2
(其中这些数字只是一个例子,所以以说明映射过程)?
在以前的答案,布拉德·张伯伦博士提到,
“dmapped座条款()在目标区域设置创建实例。块域地图类存储的每个实例的外接矩形框,并设置目标语言环境”
我没有找到这意味着从它:(
在全,请解释如何域地图,域和数组正在合作的态度。我研究了一些措施,但都错过了某种信息我需要完全理解领域地图。
In this presentation幻灯片No:34,本地实例域映射和域只存储索引空间,没什么特别的。
- 在之前的回答中,Dr.布拉德·张伯伦也提到,
“给定域映射实现可能是非常节省空间和最小的,也可以冗余分配在各个地区的一切,为笔者认为最好的”,
在这种情况下,“冗余地分配每个地区的所有内容”究竟意味着什么?是否将整个数组存储在每个地方?
- 在PGAS,域映射,域的全局实例,阵列是在所有区域设置可见?。我也希望每个查询都通过全局实例进行。
如您在文档中提到的,我恳请您确定域映射所需的接口。
如果我对此有所解释,我将非常感激并感激。
非常感谢。
我很早就意识到,我指出的幻灯片足够长,它们使用方括号而不是大括号来表示域值......几年前发生的句法变化:http:// chapel。 cray.com/docs/latest/language/evolution.html#domain-literals。出于这个原因,我编辑你的问题来更新当前的语法。 – Brad
我错过了。 – praveen