@ajbrock the fundamental problem with throwing more informative errors is that they are not allowed by CUDA. CUDA can only do device asserts, and wont even tell you what the triggered assert it. We are constrained by this to make stuff more user-friendly.