Problem with CUDAv3

  1. Yes, that’s unfortunate, but using Int32 indices is probably worth it since it can result in significant register usage reductions. Besides, for code to work on 32-bit platforms you better make those methods generically-typed anyway, so can’t you update those methods to accept an ::Integer? For structures, you can just provide a generically-typed constructor (so again ::Integer or <:Integer) that converts whenever appropriately, and there’s no need to make the structures parametric.

  2. Ah, now I understand, it was just a rendering issue. This is a known issue on Julia 1.6, due to how code reflection methods interact with method redefinitions. It has been fixed in Julia 1.7, so you can try upgrading (or at least test if it works as expected).