It just occurred to me that I can solve this by constructing a matrix on the GPU to convert G to its expanded version. This seems like a good solution, though it seems rather inelegant… if anyone has a better idea let me know!