问题标签 [aleagpu]
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.
c# - 使用原子操作 (atomic_add) 调试 ALEA 内核时“无法解析名称”
我正在使用 ALEA GPU 进行 GPU 编程(C#)。如果我在内核中使用 atomic_add 之类的原子操作,则在内核调试期间,我的变量在 CUDA WarpWatch 窗口中出现“无法解析名称”错误。我看到了 blockIdx.x、blockDim.x、threadIdx.x 和数组的值,但无法解析变量名。内核按预期工作,但在调试期间无法监控变量,因此难以修复任何错误。CUDA 8 Toolkit 已安装,我正在使用 Visual Studio 2015。
有任何想法吗?
c# - clrobj() 将结构数组传递给 GPU 内核(ALEA 库)时没有 llvm
对于我尝试使用 ALEA 库将结构数组传递给 NVIDIA 内核的代码,我收到“Fody/Alea.CUDA:clrobj(cGPU) 没有 llvm”构建错误。这是我的代码的简化版本。我删除了输出收集功能以保持代码简单。我现在只需要能够将结构数组发送到 GPU。
c# - 无法加载 DLL 'curand64_80'
这是我第一次尝试在我的机器上运行 Alea TK MNIST 示例。
我按照http://www.aleagpu.com/release/3_0_2/doc/installation.html安装了 CUDA 8 和所有内容
但是运行它我总是得到这个错误:Unable to load DLL 'curand64_80': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
尽管我可以清楚地看到curand64_80.dll
里面C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
我已经将配置设置为(app.config):
这是完整的异常堆栈跟踪:
我缺少什么以及如何成功运行示例?
cuda - cuDNN Error ARCH_MISMATCH on a Kepler GPU
I'm just running the Alea TK samples. As long as I don't activate cuDNN things work will except for the CNN, since it uses Pooling2D which relies on cuDNN.
If I now activate cuDNN (via app.config) I get this error [cuDNN Error] ARCH_MISMATCH
as soon as I call Context.GpuContext(0)
.
If I run Context.GpuContext(0) without cuDNN I can clearly see, it's my 'GT 730' which should have compute 3.0 capabilities.
Any idea, what's going wrong here?
c# - 如何在 C# 中使用递归与 ALEA 库
我正在尝试使用 ALEA 库将递归算法从 CPU 转换为 GPU。如果我构建代码,我会收到以下错误:
“Fody/Alea.CUDA:AOTCompileServer 意外退出,退出代码为 -1073741571”
如果您使用 ALEA 库为 C# 中的递归示例提供任何文档或链接,我将不胜感激。
提前致谢
c# - 使用 ALEA 库在 GPULaunch 或内核中循环
我需要使用一个整数 (0-99) 作为参数,使用相同的数据运行我的 GPU 内核(ALEA 库)100 次。我试图在内核中实现这个循环,但我得到了奇怪的结果。我必须将循环从内核中取出并围绕 GPULaunch 函数,如下所示:
代码的 CPU 版本经过高度优化,高效使用 4 个内核 (%100)。根据合并的内存访问原则重新组织内存中的数据后,我可以获得 %92 的占用率和 %96 的全局负载效率。但是,GPU 版本仅比 CPU 版本快 %50。我怀疑以这种方式循环 GPULaunch 是否有效。
正如您在下图中看到的,我没有在 NVIDIA Visual Profiler 中看到重复的内存传输。一旦我将数据加载到 GPU(图中看不到,但对我来说并不重要),我会得到 100 个循环输出的短暂内存传输,如右端所示。所以我的问题是:
- 这种在循环中调用 GPULaunch 的方法是否对相同数据进行了看不见的内存传输?
- 如果有这样的开销,我需要在内核中有这个循环。我该怎么做。我试过但结果不稳定,认为这种方法不适合 GPU 并行编程架构。
提前致谢
vb.net - 使用 Alea GPU 迭代一组自定义类
我是一名业余爱好者,想将我的 GPU 用于我的个人项目。我已经安装并运行了 Alea GPU 包。
下面产生相同的输出:
两者都返回 90。这是最基本的,但我需要的更多。
我正在尝试将我的其他资源密集型 parallel.foreach 循环转换为 GPU.Default.For,这样我就可以充分利用我的 PC 的功能。
请记住,所有这些都作为一个 parallel.foreach 循环完美地工作。其余代码目前已被注释掉,这是阻止它工作的原因。
“Inventory”是一个自定义类,其中“ItemsInventory”是一个字典(字符串,InventoryItem)“InventoryItem”也是一个自定义类。
我得到的例外是:
引发 ArgumentException:Alea.dll 中的“System.Exception”附加信息:无法获取字段“$VB$Local_Inventory”。
接下来,我尝试定义一个“InventoryItem”数组,因为这是我对这个特定循环感兴趣的内容。
这就是我现在得到的:
抛出异常:Alea.dll 中的 'System.Exception' 附加信息:不允许传输非 blittable 数组 MyApp.MainWindow+InventoryItem[],您可以通过 app.config 更改此设置。
但我不知道那部分是什么样子的,我“可以”添加到 app.config 文件中,我还没有在网上找到任何东西来解决这个问题。
aleagpu - 你能在设备上有一个可以从内核调用的函数吗
道歉 - 我是 AleaGPU 的新手。我有一个函数,我希望能够从几个不同的内核调用。是否可以在设备上放置一个可以从不同内核调用的函数 - 我已经搜索了文档但找不到相关部分 - 可能是因为我不知道它叫什么。
谢谢你的帮助。
c# - 如何将指向非托管内存(IntPtr)的指针传递给 Alea CUDA 内核?
我有一个IntPtr hData
指向存储在非托管内存中的数据数组的开头。当我尝试使用下面描述的 CUDA 内核传递它时,我得到一个System.Exception: i64 is not a struct type
. 我应该如何使用 Alea CUDA 内核传递指向非托管内存中的数组的指针?
arrays - 如何在内核中从 int[,] 复制到 int[]?
在我的内核中,我比较了两个大的 int[,] lemmaA 和 lemmaB。它们由 gpu.Allocate() 分配给 GPU。我的内核看起来像:
在计算方法中,我只在每个 int[,] 数组中使用一个 int[] 行/数组,我想知道如果我将每个 row/int[] 分配给一个本地数组并使用本地数组。
但是如何从内核中的 int[,] 复制 row/int[] 呢?