问题标签 [chapel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
chapel - 教堂语言中的 dmapped 域如何实际映射到?
我需要知道一些关于教堂
中域映射上的数组元素分配的事情
让我尽可能简短
现在Space
是分布式域。
所以这里进来了。
在分布式域中,我们是否必须将所有索引保留在每个位置,
例如上面的示例。
我们是否必须在所有语言环境中本地保留映射到语言环境的索引?我希望域映射支持全局视图编程,所以当我们访问时myarray[3,5]
,它会使用 dist 动态映射到关联区域设置。
如果我错了,请纠正我
以及如何在分布式域上分配数组?
域地图是否具有一些特征,它们在开始时根据给定的参数计算各个局部大小,并在每个语言环境中分配 local_size 元素?
就像
在 2 个语言环境中阻止 10 个元素一样,本地大小需要为 5。我想知道如何在分布式域上创建数组元素,以及根据分布映射到位置的索引是否存储在该位置?
如果这个问题需要更多信息,请告诉我
谢谢您的帮助
json - 如何从 JSON 填充 Chapel 类对象?
在 Python 中,我可以很容易地从 JSON 创建对象。我可以填充类或只创建一个通用对象。我看到 Chapel 有read
JSON 的方法,但我不知道如何使用它。
如果我有:
和一个字符串:
如何获得Fighter
对象?
是否有类似的方法:
或者:
谢谢!
chapel - 继续:“教堂语言中的 dmapped 域如何实际映射到?”
克雷,很抱歉再次为清晰的答案站起来!在这个答案之后,我还有一些关于域地图的问题。如果您能消除我对域映射的疑虑,我将不胜感激。
我希望,我已经按顺序排列了这些问题。
1.) 什么是域映射?- 域映射定义了从域和数组的全局数组索引到集群中的一组区域设置的映射。
我已经总结了我从研究论文和其他 ppts 中理解的内容,这可能是错误的。请随时更正答案。
这里{1..8,1..8}
是 indexspace( domain ),它使用Block
-distribution domain-map 和boundingBox = {1..8,1..8}
来自Block
domain-map 构造函数的分布到语言环境,
Block
domain-map 只想知道,boundingBoX
和'-stargetlocales
并且datapar*
不需要 a domain
, 在这种情况下{1..8,1..8}
。我发现很难让事情变得正确,因为有许多用于在教堂本身内创建域地图的界面,其中一些界面对用户隐藏了一些信息。
所以我的问题是:Block
domain-map 是否创建了实例 on targetlocales
,它保存了本地索引集,例如{1..2,3..4}
on locale 1
,{1..2,1..2}
on locale 2
(这些数字只是示例,以说明映射过程)?
在之前的回答中,Brad Chamberlain 博士提到过
“dmapped Block 子句()在目标语言环境上创建实例。Block 域地图类的每个实例都存储边界框和目标语言环境集”
我没有从中找到意义:(
总的来说,请解释域映射、域和数组如何协同工作。我研究了一些步骤,但都遗漏了一些我需要完全理解域映射的信息。
在幻灯片 No:34 的演示中,本地实例域映射和域仅存储索引空间,没有什么特别之处。
- 在之前的回答中,Brad Chamberlain 博士也提到过,
“给定的域映射实现可能非常节省空间和最小化,或者它可以冗余地分配每个语言环境中的所有内容,正如其作者认为的最好的那样”,
在这种情况下,“在每个语言环境中冗余分配所有内容”实际上是什么意思?是否将整个数组存储在每个位置?
- 在 PGAS 中,域映射、域、数组的全局实例在所有语言环境中都是可见的?我也希望对它们的每个查询都通过全局实例进行。
正如您在文档中提到的,我恳请您确定域映射所需的接口。
如果我对此有一些解释,我将不胜感激并感激不尽。
非常感谢。
chapel - Chapel 中带域的随机子集模式
这是我的设置。在曲棍球比赛中,球员们形成同时在冰上的“线”。“前锋”线是由左翼、中锋和右翼组成的三人组。“D”线是一对左 D 和右 D。在啤酒联赛中,您通常穿着 13 名滑手 = 3 名前锋线,2 名 D 线加上一名守门员。
假设我有 20 个人想玩。我想从 13 个随机滑冰者中构建线条。我必须保留他们的名字和球衣号码。我想知道这是否是Chapel Domains的工作。例如,像
这是一个简单的想法,但现在我想
关键n-1
是我必须能够在最后引用球员 ID 和球衣号码。
教堂中的正确模式是什么?
chapel - 查找教堂矩阵中的行数或列数
我创建了以下矩阵,并且我想确定矩阵现在具有的行/列数:
这返回{0..4, 0..4}
是有道理的,但我不能以A.domain[0]
获取长度为例。
chapel - 在 Chapel 中计算矩阵的 rowSums
继续我的教堂冒险...
我有一个矩阵A。
填充行和的最有效方法是什么?
chapel - 在 Chapel 中发送矩阵作为 proc 参数
当我尝试将矩阵发送到 proc 时出现错误。我很确定我做错了什么,无法弄清楚。
给我
我正在使用chpl Version 1.15.0
chapel - Chapel-1.16.0 pre-release 内部错误 (-999) 之前的域大小不可知声明还有什么其他方法?
原型设计返回了一个教堂内部错误:
虽然此特定设置的目的既无关紧要也不相关,
但编译器完成了以下调试通知,
对此,任何关于避免冲突语法的建议将不胜感激:
(编译器团队显然会对观察到的情况的内部处理有一些额外的兴趣和担忧,这不是本文的主要意图或主题)
代码,直播@ <TiO>-IDE::
减少<TiO>-IDE
(可惜没有代码折叠生产力,就像在其他 IDE 环境中一样。同意 Ben 的观点,根据个人喜好,experiments-under-review 自文档布局可能更具可读性)
仍然
chpl:30: internal error: IMP0586 chpl Version 1.16.0 pre-release (-999)
chpl:30:
存在:
>>> aClickThrough -with-an-updated-code,没有语法警告但 (-999) @<TiO>-IDE
chapel - 在 Chapel 中创建/操作对角矩阵
我有一个方阵A
我想构造对角矩阵D = 1/sqrt(a_ii)
。似乎我必须提取对角线,然后对每个元素进行操作。我希望这个矩阵非常大且稀疏,如果这改变了答案。