问题标签 [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# - 是否可以在带有 .NET Core 的 Linux 上使用 Alea GPU?
是否可以通过定位.NET Core在 Linux 上使用Alea GPU?
谢谢。
c# - AleaGPU 适用于矩形内的点
挑战是检查点数组(双 x,双 y)是否在矩形内。
.
有数学公式可以完成它,我已经使用 CPU 并行性实现了这一点,但是数千点的性能很难,因此我正在探索 gpu 路线。
想法?谢谢!
c# - 无法在 Alea GPU (C#) 中启动内核
我一直在参考 Alea GPU 网站 ( http://www.aleagpu.com/release/3_0_3/doc/gpu_programming_csharp.html ) 上的示例,但我无法启动内核。我相信我已经正确设置了所有内容,但即使他们的示例也会出现编译问题。
给定一个内核:
以及运行它的代码:
Visual Studio(2017 社区)抱怨:“Gpu”不包含“Launch”的定义,并且找不到接受“Gpu”类型的第一个参数的扩展方法“Launch”(您是否缺少 using 指令或程序集引用?)
我相信我已经正确设置了 Alea GPU。我使用 nuget 按照其网站( http://www.aleagpu.com/release/3_0_3/doc/installation.html)上的说明安装它和 Fody 。我还安装了 Alea GPU 所需的 F# 包。
我的安装正确吗?如果是这样,我是在使用过时的文档还是我尝试启动内核的方式有什么问题?
c# - 尝试使用 Alea GPU 查找大素数
当我尝试使用 Alea GPU 查找第 100,000 个素数时发生异常。如果我试图找到一个较小的素数,例如第 10,000 个素数,该算法就可以正常工作。
我正在使用 Alea v3.0.4、NVIDIA GTX 970、Cuda 9.2 驱动程序。
我是 GPU 编程的新手。任何帮助将不胜感激。
以下是异常详细信息:
System.Exception 发生 HResult=0x80131500 Message=[CUDAError] CUDA_ERROR_LAUNCH_FAILED Source=Alea StackTrace: at Alea.CUDAInterop.cuSafeCall@2939.Invoke(String message) at Alea.CUDAInterop.cuSafeCall(cudaError_enum result) at A.cf5aded17df9f7cc4c132234dda010fa7.Copy@98 -22.Invoke(Unit _arg9)
at Alea.Memory.Copy(FSharpOption1 streamOpt, Memory src, IntPtr srcOffset, Memory dst, IntPtr dstOffset, FSharpOption
1 lengthOpt)
at Alea.ImplicitMemoryTrackerEntry.cdd2cd00c052408bcdbf03958f14266ca(FSharpFunc2 c600c458623dca7db199a0e417603dff4, Object cd5116337150ebaa6de788dacd82516fa) at Alea.ImplicitMemoryTrackerEntry.c6a75c171c9cccafb084beba315394985(FSharpFunc
2 c600c458623dca7db199a0e417603dff4, Object cd5116337150ebaa6de788dacd82516fa) at Alea.ImplicitMemoryTracker.HostReadWriteBarrier(Object instance) at Alea.GlobalImplicitMemoryTracker.HostReadWriteBarrier(Object instance) at A.cf5aded17df9f7cc4c132234dda010fa7.clo@2359-624.Invoke(Object arg00) at Microsoft.FSharp.Collections.SeqModule .Iterate[T](FSharpFunc2 action, IEnumerable
1 source) at Alea.Kernel.LaunchRaw(LaunchParam lp, FSharpOption1 instanceOpt, FSharpList
1 args) at Alea.Parallel.Device.DeviceFor.For(Gpu gpu, Int64 fromInclusive, Int64 toExclusive, Action1 op) at Alea.Parallel.GpuExtension.LongFor(Gpu gpu, Int64 fromInclusive, Int64 toExclusive, Action
1 op) at TestingGPU C:\Users..\source\repos\TestingGPU\TestingGPU\Program.cs 中的 .Program.Execute(Int32 t):
TestingGPU.Program.Main(String[] args) 的第 148 行
工作解决方案:
f# - F# 中的 AleaGPU 动态并行性?如何?
这可能是一个简单的问题,但我找不到任何关于这个主题的参考资料:如何从另一个内核中启动一个内核?. 我遇到的唯一相关示例是帖子:(Alea GPU 支持动态并行吗?),它提供了 C# 中的示例。
鉴于 F# 使用代码引用,我假设有一种直接的方法来执行我无法找到的此操作。
请提供建议,或将我指向相关资源。任何帮助将不胜感激。
问候。
c# - 将 CPU Parallel.For 转换为 GPU Gpu.For
我在代码中创建了一个 CPU Parallel.For 循环,如下所示:
上面的代码工作正常,可以在我的 CPU 内核上运行。
希望我想使用“Alea GPU”库将此代码转换为 GPU For 循环。所以我尝试了以下方法:
您可以看到它与上面的代码完全相同,但将 Parallel.For 更改为 Gpu.Default.For。但是当我运行它时,我收到以下错误:
我不知道如何解决这个错误。任何帮助,将不胜感激。
更新我在 NineBerry 评论后尝试的内容:
所以事实证明问题可能是 Vector2 类型,因为它可能使用属性。所以我创建了自己的结构,它使用如下字段:
其余的代码与以前几乎相同。但我仍然得到相同的“i32 不是结构类型”。错误。
如果我放弃所有结构并改用浮点数组,则会出现同样的错误:
根据评论转储代码。创建该类的新实例应使其运行。您将需要安装 nuget ALEA 和 ALEA.FODY 。另外我认为你需要 FSharp.Core 来运行 Alea
c# - Alea GPU 可用内存
任何人都知道如何确定free/available
GPU 上的全局内存,类似于CUDA "cudaMemGetInfo(&free_byte, &total_byte);?
.
我在Alea
网站上搜索了 API,试图找到一个属性来确定空闲字节,但似乎没有任何东西符合要求。
谢谢。
c# - Alea GPU 内存分配限制
我正在使用带有 GTX-1081ti 的 Alea GPU,它具有 11GB 的全局内存。
当我使用该Alea Gpu.Default.Allocate
方法在 GPU 上分配内存时,当我接近 3+ GB 时,我收到“内存不足”错误。
我的代码是:
这应该分配大约 8GB 的 GPU RAM,但它给出了 CUDA 内存不足异常。我尝试了较低的长度值,并且根据任务管理器的报告,GPU 专用内存在出现错误之前仅上升到大约 3 GB。
但是,当我对原始 CUDA 代码(在 Alea 之外)执行相同操作时,我的限制是 11 GB 的 80% 多一点,或者几乎是 9 GB(因为 W10 限制了分配)。
有谁知道为什么我在只有 3 GB 时会出现“内存不足”错误?
谢谢。
aleagpu - “‘发现了不止一个没有前辈的基本方块。” 使用我的 alea/c# 代码,我不知道为什么?
所以我试图用 Alea/C# 实现一些代码。目前,它是基本代码。我尝试了 Alea 网站上提供的教程和示例。这些示例工作得很好,但是当我编写自己的代码版本时,即使用随机游走并为每次游走动态定义步数时,它似乎不起作用。
我如下设置一个双精度数组并将其初始化为0:
然后我使用 gpumanaged 方法:
然后我使用并行函数,在 alea 网站上有大量示例。
但是,当我运行它时,我得到了错误:
源位置堆栈:
对此的任何帮助都会有所帮助。我对使用这些 gpu 架构非常感兴趣,但我整天都在努力解决这个问题,当我尝试不同的方法(例如启动内核和操作以及使用共享内存)时,我变得越来越困惑,但这些方法都不起作用。