x device:  cuda:0
b device:  cpu
w device:  cuda:0

It is indeed in the cpu, however, I have no idea why.
Neither one of them is pushed into any device in the layer class, the entire model is later pushed into cuda:0 before the training cycle.
Would defining a device in the layer class and pushing the bias there solve the issue? Won’t it cause problems when the DataParallel is used in the model later?