In file: CUDAGenerator.cpp, it looks like the seed() routine calls THCRandom_initialSeed
uint64_t CUDAGenerator::seed() {
  return THCRandom_initialSeed(context->getTHCState());
}

i.e. it returns the initial seed rather than resetting as in the CPU version:
uint64_t CPUGenerator::seed() {
  return THRandom_seed(generator);
}

Thanks