Device resident tensor types for the ILCuda framework: dense CudaTensor and sparse CSR storage, host/device buffer caches and the tensor kernel entry points.