问题标签 [arrayfire]

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 投票
0 回答
254 浏览

python - arrayfire 中的 GPU 内存管理:在同一个 Python 控制台中多次运行同一个脚本

有没有办法在每次运行时通过 arrayfire 重置 GPU 而无需重新启动 Python 控制台?

我有一个 python 脚本,它使用 arrayfire 调用许多要在 GPU 上执行的函数。该脚本在运行一次时会给出预期的结果,但如果第二次运行而不更改任何参数,它会返回NaN值。一旦我重新启动 Python 控制台,或者等效地运行以下命令,这就会停止:

清除所有分配的设备内存后重新启动控制台。

我很难看出这里可能出了什么问题;该程序第一次运行良好,所以我认为它很可能是我在我丢失的文档中找不到的命令。

我已经尝试了文档中看起来很有希望的大多数功能(device_gc, free_device, free_pinned,device.init等),但运气不佳。我也尝试过使用reload(arrayfire)

这可能是一个错误吗?任何意见,将不胜感激。

我正在使用:nvidia quadro M4000、Python 2.7、Windows 7、Spyder 3

0 投票
1 回答
353 浏览

python - 如何从 C++ 创建 c_void_p PyObject,将其传递给 Python 并将其检索回 C++

我需要将在 C++ 中创建的 ArrayFire 数组共享给 Python。这工作正常:

现在,如果我的 Python 脚本返回一个 ArrayFire 数组,我需要读取 arr 属性并取回我的指针并将其分配给 C++ 数组

这里的问题是 PyLong_AsVoidPtr 失败并带有“TypeError”类:需要一个整数。

ctypes doc (16.16.1.4. Fundamental data types) 说 c_void_p 的 Python 类型是 int 或 None。显然在我的情况下它不是

如何使用 C API 将 c_void_p 转换为 python?

谢谢!

0 投票
0 回答
155 浏览

c++ - TIFF 文件被 ArrayFire (C++) 乱码

我注意到这个简单的 ArrayFire 程序导致加载的 TIFF 图像严重失真:

然后我在一个简单的(单色)图像上编译并运行:

具有以下输出:

当我可视化这些图像时,我得到以下结果: ArrayFire TIFF 图像失真

这当然不是 ArrayFire 所期望的;我希望它会转储完全相同的图像,因为我没有对其进行任何更改。不幸的是,我对 TIFF 图像格式或 ArrayFire 的图形后端知之甚少,无法理解发生了什么。加载图像时我做错了吗?(我遵循了 ArrayFire 文档loadImagesaveImage)。

我也尝试过使用loadImageNativeand saveImageNative,但后者返回 4 层 TIFF 图像,而原始图像只是 1 层 TIFF。

ArrayFire 专家的任何帮助都会很棒。

谢谢!

0 投票
0 回答
33 浏览

svd - arrayfire SVD jobu 和 jobvt 参数

Arrayfire 提供的svdandsvdInPlace函数被硬连线'A'用作jobuand的参数jobvt。有没有办法'S'代替这个参数?我需要计算一个非常高但很窄的矩阵的 SVD,我只关心少数奇异向量/值。

我知道该'S'参数以前不受支持cusolverDnDgesvd,但在 CUDA 8.0 中似乎不再是这种情况。

我目前正在尝试cusolverDnDgesvd直接使用,但是当我尝试使用 Arrayfire 的设备指针时遇到问题(这可能会导致一个单独的问题)。

0 投票
0 回答
180 浏览

c++ - Arrayfire - 使用可用的颜色图将热图渲染为图像/数组

我正在使用 Arrayfire 进行 2D 传热模拟。我的数据集是一个温度矩阵,我想将其可视化为热图。我需要生成彩色数据集的帧并将其保存为磁盘上的图像。因此,我的数据集中的每个温度都必须根据某种配色方案映射到一种颜色。

我发现您可以使用 fig() 在带有颜色图的窗口中渲染数据集:http: //blog.accelereyes.com/blog/2013/07/03/arrayfire-examples-part-7-of-8-pde /

我还发现可用的颜色图:http: //arrayfire.org/docs/defines_8h.htm#a553ceda8a1d8946efac3b08e642574ae

到目前为止,我的计划是在隐藏窗口中使用 window.image() 渲染彩色数据集,然后从结果中提取数组/图像,以便我可以使用 saveImage() 保存此结果。但我找不到提取窗口呈现的图像的方法。

有没有更好的方法使用图像处理功能来做到这一点?我想避免定义自己的配色方案。(即制作我自己的将温度映射到颜色的函数)

0 投票
1 回答
90 浏览

image - Arrayfire 支持的图像格式

我想开始一个小项目来识别硬盘上的重复图像 - 主要是尝试 GPU 和 Swift。我在看 Arrayfire,想知道它是否真的能够加载 RAW 图像。我阅读了文档并看到它使用 FreeImage,但无法弄清楚支持哪些 RAW 格式。任何提示表示赞赏。

0 投票
1 回答
78 浏览

arrayfire - 如何在 ArrayFire 中做一个行列式?

如何在 af::array 中创建一个简单的行列式?

尝试在 af::array x 中使用:af::det(x) det(x) x.det()

并且不工作。

有人可以帮助我吗?

谢谢。

0 投票
1 回答
458 浏览

arrayfire - 访问 ArrayFire 数组上的值

我有一个 af::array 并且需要连续访问值,例如 z(8),例如但是,当我尝试这样做时,在带有增量 i 的循环中,编译器返回

有人知道我怎样才能访问数组中的值?谢谢。

0 投票
0 回答
70 浏览

c++ - 使用 ArrayFire 的矢量化 LUT 分类

有没有办法使用 ArrayFire 编写矢量化表查找?

我正在尝试使用 255x255 查找表来实现二进制 2D 像素分类器。此表包含应分类的 2 个通道值组合 [0,255]: 例如
channel[0] == 127 && channel[1] == 200,可用于查找为lut[127][200] == True

非向量化伪代码示例:

ArrayFire 的可能方法:

  • [Gfor 循环]
    以下似乎不是一个有效的语法,所以我不确定这是否完全可能:

    gfor(af::seq i, line.dims(0)) { classification(i) = lut(line(i)); }

  • [自定义 CUDA 内核]
    上传查找表和输入行(可能分段)并分布在块上。

  • 其他的?

任何帮助将不胜感激!

0 投票
2 回答
456 浏览

arrayfire - ArrayFire seq 到 int c++

想象一个带有 seq j 的 gfor...

如果我需要使用实例 j 的值作为索引,我可以这样做吗?

就像是:

有人可以(再次)帮助我吗?谢谢。