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

0 投票
0 回答
92 浏览

f# - Alea.CUDA。从 v2 迁移到 v3.0

是否有从 Alea.CUDA v2 迁移到 Alea.CUDA v3 的手册?

我们使用来自 Nuget 的包 Alea.CUDA.Fody 和 Alea.CUDA.Unbound,以及下一个命名空间:Alea.CUDA.Utilities.Array2D、Alea.CUDA、Alea.CUDA.CULib、Alea.CUDA.Utilities、Alea.CUDA.IL .

现在我们要迁移到 v3(因为 Nuget 上没有 v2)。我们应该使用哪些包和哪些命名空间?

0 投票
1 回答
101 浏览

c# - 如何将 Alea GPU 告诉 AOT?

我想 AOT 编译一个内核。我尝试使用 AOT 属性,但看起来 Alea.Fody 是 Alea v2 的一部分并且被继续使用。Alea 可以预编译代码吗?如果是这样,我如何告诉 Alea 预编译它?

0 投票
1 回答
278 浏览

c# - 如何在 Alea 中使用/转换 C# 类?

我正在开发一个 RayMarching 程序(HomeWork),我希望它运行得更快,所以我使用带有 ALEA 扩展的 GPU。我有一个问题,因为我不能并行使用类相机(GPU)。谢谢你的帮助。

我已经尝试更改类的标签并在 Parallel 中创建它们

而向量类”只是一个重载运算符的自定义类。

0 投票
0 回答
150 浏览

c# - Alea Gpu 可以只复制数组中的最后一个元素吗?

我正在使用 Alea GPU 使用 C# 语言在 GPU 上编程。在我的项目中,我想减少 GPU 上数组中的所有零元素,因此我计划使用独占和扫描来实现它。下一步是我必须获取扫描结果的最后一个元素,以便在算法中找到所有非零元素。在这一步中,我不想将所有结果复制到主机,因为它非常昂贵,但是我没有找到一种方法可以在不复制所有元素的情况下提取最后一个元素(也许有一种我不知道的方法?) .

这是我的扫描部分的代码。d_voxeOccupy是设备上的一个 sprase 数组。我应该怎么做才能获得d_voxeOccupyScan的最后一个元素?

===更新===

我做了一个例子来清楚地解释这个问题。

运行这段代码,我们会得到一个数组,最后一个元素是45。如何从这个数组中提取最后一个元素而不是复制所有元素?

0 投票
0 回答
43 浏览

c# - 在 AleaGPU C# 中调用 KernelScan

我正在尝试使用 Alea Gpu 在 Alea.LibParallel.KernelScan 库中提供的 AllInOne<> 函数。但是我一直遇到这个错误:

System.Exception:'共享数组的长度必须是内核编译时常量。

这是我用来调用函数的代码:

有没有办法让这个函数工作,所以我可以从另一个运行在 GPU 上的内核中调用它?还是我必须编写自己的扫描内核?

我不能使用 GPUExtension.Scan() 函数,因为无法从已经运行的内核中调用它,但是使用此函数应该可以。

0 投票
0 回答
280 浏览

c# - Alea GPU 项目设置

我试图让“简单易用”的 Alea Libary 工作(我有一个 RTX2080,所以这不应该是问题)。

UI 基于 WPF,并在 .NET Core 3.1 项目中实现。它将“GpuCalculator”对象注入“Core.Lib”(.Net Standard 2.1)。

我为执行创建了一个 .Net Standard 2.0 类库(Core.Calculations 项目)。GpuCalculator 在这里实现。我安装了 Alea NuGet 包(版本 3.0.4)以及 Alea 需要的 FSharp.Core(版本 5.0.1)。起初我遇到了这里描述的同样的问题:How to setup project using Alea GPU

这就是为什么我将以下行添加到我的 csproj 文件中:

现在的问题是,每当我想访问“Gpu.Default”时,都会从 F# 代码中引发异常 (NullReferenceException)。即使是对 Default 的简单访问也不起作用:

导致这样的错误:

我还尝试将目标平台从“任何 CPU”切换到“x64”,因为我在某处看到了提示。虽然它没有效果:(

我感谢每一个帮助!

我需要任何其他 NuGet 包吗?我应该改用不同的东西吗?库达菲?OpenGL(通过 OpenTK)计算着色器?火神(C#?)...?

编辑:在我的 Latop 上,当我想访问 Gpu.Default 时出现以下错误: