ProbabilisticCircuits.jl icon indicating copy to clipboard operation
ProbabilisticCircuits.jl copied to clipboard

Allow Multiple InputNode type for CUDA Kernels

Open khosravipasha opened this issue 2 years ago • 0 comments

Having multiple distribution type for inputs fails gpu kernels due to Union split limiation. Currently, can have at most 3 types in the Union of a CuArray for cuda kernels. https://github.com/JuliaGPU/CUDA.jl/issues/1385.

Another example here

For nodes, we already have Sum and Mul node types, so we can at most have one InputNode type for our cuda kernels.

Possible Workarounds:

  • Merge all input node types into one
  • Merge Sum and Mul nodes into one, (then we can have two input types at most)

khosravipasha avatar Mar 17 '22 07:03 khosravipasha