0
let absoluteSumModule = (new DeviceReduceModule<float32>(GPUModuleTarget.Worker(worker), fun a b -> a+b)).Create(128000)
我试过各种maxNumItems设置,但没有mater它抛出相同的异常。与上次不同,我不知道这个错误甚至可能是什么,所以我在这里包括了整个转储。DeviceReduceModule抛出一个OverflowException
Failure
(Description "$f0(sm52,64)",
Exception
System.OverflowException: Value was either too large or too small for a UInt16.
at [email protected](Object clrModuleInstance, IRModuleBuildingContext ctx, FieldInfo fieldInfo)
at [email protected](IRModuleBuildingContext ctx)
at <StartupCode$Alea-CUDA>[email protected][T](Template`1 template, FSharpOption`1 bitcodeCache, IRModuleBuildingContext ctx, Unit unitVar0)
at <StartupCode$Alea-CUDA>[email protected][T](Template`1 template, FSharpOption`1 bitcodeCache, IRModuleBuildingContext ctx, Unit unitVar0),
System.OverflowException: Value was either too large or too small for a UInt16.
at [email protected](Object clrModuleInstance, IRModuleBuildingContext ctx, FieldInfo fieldInfo)
at [email protected](IRModuleBuildingContext ctx)
at <StartupCode$Alea-CUDA>[email protected][T](Template`1 template, FSharpOption`1 bitcodeCache, IRModuleBuildingContext ctx, Unit unitVar0)
at <StartupCode$Alea-CUDA>[email protected][T](Template`1 template, FSharpOption`1 bitcodeCache, IRModuleBuildingContext ctx, Unit unitVar0))
System.Exception: Compiling failed.
at Alea.CUDA.Worker.LoadProgram[T](Template`1 template, CompileOptions options)
at <StartupCode$Alea-CUDA>[email protected](Unit _arg1)
at System.Lazy`1.CreateValue()
at System.Lazy`1.LazyInitValue()
at <StartupCode$Alea-CUDA>[email protected](Unit _arg1)
at System.Lazy`1.CreateValue()
at System.Lazy`1.LazyInitValue()
at Alea.CUDA.Unbound.DeviceReduceModule`1.Create(Int32 maxNumItems)
at <StartupCode$FSI_0002>[email protected]() in C:\Users\Marko\Documents\Visual Studio 2015\Projects\Load MNIST\Load MNIST\utils.fsx:line 28
Stopped due to error
非常感谢您耐心回答我的所有问题。 –