问题标签 [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.

0 投票
2 回答
348 浏览

chapel - bool 是否有任何 writef() 格式说明符?

我查看了writef()任何bool说明符的文档,但似乎没有。

在教堂计划中,我有: ...

最后一条语句可以正常工作。

0 投票
1 回答
65 浏览

chapel - 在 Chapel 文件中包含第二个源文件

在 C++ 中,当我需要 'actions.cpp' 中的类时,classes.cpp我会包含标题,例如#include <classes.h>. 但是尝试use classes.chpl失败了,有没有.h我应该使用的等价物?

0 投票
1 回答
34 浏览

chapel - 在 Chapel 构建中消除源文件的歧义

跟进这个关于包含源文件的问题。我包括一个包含一个名为的文件的教堂模块classes.chpl,但我当前的项目也有一个classes.chpl. 什么是正确的消歧模式?当我做

它记录了冲突,然后classes.chpl在当前目录中选择。我应该像本页那样编译模块以进行导出还是有其他模式。

== 更新 ==

目录结构看起来像

每个项目取决于各自classes.chpl文件中的类。尝试编译projA我目前正在使用

但这会导致冲突,因为它试图同时用于和projA/classes.cphl中的类。beta.chplalpha.chpl

0 投票
1 回答
183 浏览

pass-by-reference - Chapel 什么时候通过引用传递,什么时候通过常量传递?

我正在寻找通过引用传递的教堂的例子。这个例子有效,但它似乎是错误的形式,因为我正在“返回”输入。这会浪费内存吗?有没有明确的方法来操作一个类?

它产生输出

使用函数修改气泡的最有效方法是什么?

0 投票
2 回答
195 浏览

c++ - 用 Chapel 的“编译器”编译 C++

我想在我的教堂库中包含一些 C++ 代码,第一步是让教堂编译器根据这个页面编译 cpp 。但是,我遇到了一个奇怪的错误。我.cpp的是

但是当我运行时compileline出现错误

我觉得我正在关注文档,但我看不到我缺少什么。

0 投票
2 回答
111 浏览

chapel - 使用 Timer 时 pi 计算速度变慢

以下代码是我计算 pi = 3.1415... 的代码,大约使用这个公式:

当上面的代码编译为chpl --fast test.chpl并执行为time ./a.out时,它会以~4 秒的形式运行

另一方面,如果我取消注释 Lines [1--3]( to use Timer),程序运行速度要慢得多,大约10 秒

[4]当我只取消注释 Line (打印 pi 的内置值,Lines[1-3]保持注释掉)时,也会出现同样的减速:

所以我想知道为什么会出现这种减速...

我是否遗漏了上述代码中的某些内容(例如,错误使用Timer)?

我的环境是通过自制软件安装的 OSX10.11 + chapel-1.16。更多详情如下:


更新

按照这些建议,我按照这个这个页面并添加CHPL_TARGET_COMPILER=gnu~/.chplconfig(在运行之前make)从源代码安装了 Chapel。然后,上述所有三个案例都运行了约 4 秒。因此,问题可能与 OSX10.11 上的 clang 有关。根据评论,较新的 OSX (>= 10.12) 没有此问题,因此升级到较新的 OSX/clang (>= 9.0) 可能就足够了。仅供参考,更新的环境信息(使用 GNU)如下:

0 投票
1 回答
263 浏览

chapel - Is it possible to declare an array with config?

Or any similar data structure of dynamic length, which, can be cast easily to an array. The only workaround I have found is entering the array as a string and manually parsing it.

This works as intended, but is there a better way?

0 投票
1 回答
121 浏览

distributed - bigint 数组上的多语言环境计算

我正在使用 Chapel,并且正在尝试在多bigint语言环境设置中对数组执行计算。读取每行包含一个整数的文件。每行都转换为一条bigint记录,然后插入到单个数组中。我有 4 个语言环境,因此我要求每个语言环境仅读取输入文件的 1/4 并仅处理该部分。

我已将问题减少到以下最小示例,该示例也受到影响:

我希望语言环境可以并行执行操作,但事实并非如此。

但是,在运行代码时,似乎每个语言环境都按顺序进行处理。换句话说,语言环境 0 读取文件并进行处理,然后语言环境 1 读取文件并进行处理,依此类推。这可能是什么原因?

0 投票
1 回答
83 浏览

sparse-matrix - 稀疏矩阵作为教堂对象中的字段

跟进这个问题,我现在有一个Graph包含稀疏矩阵的类。定义为

产生错误

它出现SD没有被重新定义。什么是正确的模式?在上一篇文章中,我们谈到了密集数组,这是针对稀疏的。

我通过调用它

0 投票
2 回答
126 浏览

multithreading - 如果在“内部”虚拟机运行,我们会在 Chapel 中看到预期的加速吗?

下学期我将在 Chapel 教书,我们正在考虑使用 VM 代替物理机器让学生进行编程。作为课堂的一部分,我希望学生能够在使用多个线程时看到加速。我担心他们将无法看到这一点,因为 VM 将使用隐式超线程进行操作;一个线程的运行速度与多个线程一样快。

有人对这个有经验么?我有机会使用虚拟机而不是物理设备吗?