Oh yea your right, I forgot to add the forward call in the conceptual class! Disregard the first error then.
The second error is what was originally my problem. I have tried running it on two GTX 1080ti as well as two different nvidia GPUs.
The code was originally running on a single GPU without using DataParallel. Using DataParallel with a single GPU has no effect, the code runs fine.