问题标签 [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 投票
3 回答
1651 浏览

editor - 为教堂编程语言推荐一个文本编辑器或 IDE

我想在教堂里写一些简短的数字程序。有人可以告诉一个支持教堂代码突出显示的IDE或文本编辑器(教堂感知),是否有一个elisp文件emacsvim即使存在脚本,我也不喜欢vim

我尝试搜索,但找不到任何东西。我既不知道emacs-lisp也不完全了解教堂的语法来配置它以使这个教堂感知。

0 投票
1 回答
258 浏览

profiling - 在 Cray Chapel 中收集有关 GASNet 通信操作的信息

开发一个基本的分析器,它将收集 Cray Chapel 中 GASNet 通信操作的开始和结束时间。想到的唯一想法是在 Chapel 通信函数中插入指令以获取函数调用时间。有没有办法在不弄乱语言源代码的情况下做到这一点?

0 投票
2 回答
257 浏览

database - 教堂编程语言。使用数据库

请你帮我解决以下问题:我如何从我的教堂程序中使用数据库?

谢谢

0 投票
1 回答
197 浏览

arrays - 在并行化期间在 Chapel 中使用同步变量时遇到问题

所以,我正在做这个项目,我正在用 Chapel 计算语言写作。我已经编写了该程序,并且在非并行运行时它可以完美运行。

但是当我添加forall需要并行化的语句时,程序运行速度确实快了很多,但它没有提供我需要的结果。我知道是因为我在步骤 1、3、5 和 7 中存在竞争条件,j = j - 1;因此我尝试创建j一个同步变量以防止这种竞争条件破坏我的结果,然后我编译、运行并且我的程序永远不会使它脱离了第 1 步,这是第一个同步变量所在的位置,所以我有理由相信这是因为同步变量j.

如果有人对我应该如何并行化或同步有任何见解,以便对我的最终网格进行排序,那就太好了。这是代码:

0 投票
1 回答
249 浏览

chapel - 教堂总和减少:未解决的呼叫'sum(eltType = type int(64))'

我正在尝试使用 Chapel 来解决一个简单的问题:

求 1000 以下 3 或 5 的倍数之和 (ProjectEuler001)

这是我的代码:

然后我收到消息:

但是如果我把这个词改成summax它会给我正确的答案:999。

我错过了什么?我不明白为什么max工作和sum不工作。

0 投票
1 回答
208 浏览

bash - Chapel Gasnet 在寻找匹配的“”时出现意外的 EOF

使用 Chapel 1.13.1、Gasnet 1.26.4、Fedora 24 版

尝试运行hello6-taskpar-dist.chpl会产生错误:

我的理解是gasnet将登录节点的环境导出到工作节点,并且一些格式错误的定义导致了这个问题(即这是一个环境错误)。

不幸的是,我不确定在执行 chapel 二进制文件期间正在执行哪些脚本,并且发现很难追踪不良事件发生的地点和时间。不幸的是,我以前曾通过取消设置模块函数 ( unset module) 来解决这个问题,但现在该修复不再有效:

(我已经更改了一些潜在的识别信息。用户名、主机名、IP 地址、路径等)

似乎这个BASH_FUNC_scl功能也有部分责任,但取消它会产生同样的错误。

环顾四周,在Github 上发现了这个 xonsh 问题,这表明取消设置 scl 和模块都可以解决问题。它没有,但错误返回到简短的“意外 EOF”错误。单独取消设置模块或 scl 并不能解决问题,并且会产生相同的错误。

我认为有两种方法可以解决这个问题。

  1. 让 Gasnet将环境推送到工作节点。当用户登录时,我们的集群已经加载了环境(网络文件系统),因此无需将整个环境推送过来(如有必要,我可以按顺序将内容添加到 rc 或配置文件脚本中) . 我最喜欢这个,因为它最大限度地减少了我必须做的工作。不幸的是,我对 Gasnet 或其使用几乎一无所知。

  2. 修复环境,使其没有不匹配'的 , 字符。我不喜欢这个想法,因为它需要大量工作,并且可能意味着要求系统管理员做系统管理员的事情;他们经常不愿意做的事情,尤其是对于小型项目和极端情况,两者兼而有之。

有任何想法吗?

编辑:有人建议我发布我现有的 PS1 和printchplenv.

PS1='$HOSTNAME> '

0 投票
3 回答
231 浏览

chapel - Chapel 有 HTTP 服务器吗?

一点背景知识:我想在 Chapel 中使用 Crate.io 数据库和 ODBC 驱动程序将我的 API 构建为 Azure(或 AppEngine)上的 docker 容器。

是否有我可以与 Chapel 一起使用的 HTTP 服务器?

0 投票
1 回答
215 浏览

chapel - Chapel 有动态数据结构吗?

Chapel 似乎专注于 n 维数组和固定大小的元组。乍一看,似乎没有动态数据结构。

一个特殊的问题是您似乎必须预先声明关联数组的大小。其他语言的地图和字典不受此限制。

Chapel 是否有更动态的地图/字典类型而我只是错过了它?

0 投票
1 回答
74 浏览

recursion - chapel 是否实现了尾调用优化?

Chapel 支持递归函数调用,但是否支持尾调用优化,使尾递归不使用额外的堆栈帧?

0 投票
1 回答
109 浏览

function - 如何在 Chapel 中编写模板函数的类型签名

在尝试编写算术平均函数时,最好编写一个模板函数而不是两个特定类型的函数。可以写: proc mean(data: [?] ?T): real 但是如何将 T 限制为intreal

也可以定义一个可以包含intreal数据的数组,即有没有一种方法可以表示数组内容的联合类型?