【发布时间】:2017-07-22 15:24:17
【问题描述】:
我在 Chapel 中填充了一个稀疏数组,其中包含一个读取 CSV 的循环。
我想知道最好的模式是什么。
var dnsDom = {1..n_dims, 1..n_dims};
var spsDom: sparse subdomain(dnsDom);
for line in file_reader.lines() {
var i = line[1]:int;
var j = line[2]:int;
spsDom += (i,j);
}
这是一种有效的方法吗?
我是否应该创建一个临时的元组数组并每(比如)10,000 行追加 spsDom?
谢谢!
【问题讨论】:
-
正如在 >>> stackoverflow.com/q/45172614 中提出的那样,您介意提供一些细节吗?如果效率的定量衡量标准是 aTimeDOMAIN 值,您是否测量了基线实现的
Timer.start(); ... ;Timer.stop()以引用此类基线以进行比较?如果定量测量是内存占用或其他一些标准,请您说明一下,以便其他人能够分享您对这种效率指标的期望吗?谢谢。 (如果您仍然可以为您之前的问题同时发布repr( I ) + repr( V ),那就太好了。谢谢。) -
不要忽略,我一直在直接与 Chapel 团队合作,以解决其中的一些问题。我打算尽快更新/提供更好的答案
-
伟大的一步,布莱恩。组合 [PTIME,PSPACE] 或 [EXPTIME,EXPSPACE] 双麻烦角的情况,靠近复杂动物园的物理边界总是具有挑战性的。在这两个主要的 Turing SEQ 处理维度中的另一个维度中,一个维度中的每个权衡显然都非常昂贵,如果不是完全不可行的话。感谢您的注意,将等待更新。
-
在stackoverflow.com/q/45172614 对这篇文章进行机械更新方面有什么进展吗?就像输入
repr( I ); repr( V )+ 复制/粘贴一样简单 - 这一切都应该在几秒钟内就可以了,不是吗?感谢您重新考虑,Brian,使帖子上下文清晰且专业。 -
您是否介意提供有关稀疏矩阵的询问详细信息 - 正如上面记录和提醒的那样?谢谢你这样做。