Error using RMSProp on GPU


When I data subsample and use RMSProp for optimization on both global and local parameters on GPU, I get the error:

InvalidArgumentError (see above for traceback): Cannot assign a device for operation optimizer/RMSProp/update_Variable_3/Unique: Could not satisfy explicit device specification because the node was colocated with a group of nodes that required incompatible device /job:localhost/replica:0/task:0/device:GPU:0
Colocation Debug Info:
Colocation group had the following types and devices:
SparseApplyRMSProp: CPU
UnsortedSegmentSum: GPU CPU
StridedSlice: GPU CPU
Shape: GPU CPU
Unique: GPU CPU
Identity: GPU CPU
VariableV2: GPU CPU
Const: GPU CPU

For example, passing in RMSProp optimizers in the example ( generates the error. Note that I’m only getting the error when I data subsample and only on GPU (and also no error when I change the optimizer to Adam). Any idea what’s going on?