See #52 (closed to experiment with those concepts outside of Adapt/ArrayInterfaceCore for a while before proposing a new common scheme for computing units/devices).
Exploring this within HeterogeneousComputing.jl , this issue is intended as a reminder to bring it back into Adapt/ArrayInterfaceCore, the GPU packages and KernelAbstractions once a clean and field-tested concept is ready.