valueError when using multi_gpu_model in keras
I had the same issue. Tensorflow-gpu 1.14 installed, CUDA 10.0, and 4 XLA_GPUs were displayed with device_lib.list_local_devices().
I have another conda environement and there is just Tensorflow 1.14 installed and no tensorflow-gpu, and i don't know why, but i can run my multi_gpu model on all gpus with that environment.
I am using google cloud VM with 4 Tesla K80 GPU's. 
I am running a keras model using multi_gpu_model with gpus=4(since i have 4 gpu's). But, i am getting the following error

ValueError: To call multi_gpu_model with gpus=4, we expect the
  following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1',
  '/gpu:2', '/gpu:3']. However this machine only has: ['/cpu:0',
  '/xla_cpu:0', '/xla_gpu:0', '/gpu:0']. Try reducing gpus.

I can see that there are only two gpu's here namely '/xla_gpu:0', '/gpu:0'. so, i tried with gpus = 2 and again got the following error

ValueError: To call multi_gpu_model with gpus=2, we expect the
  following devices to be available: ['/cpu:0', '/gpu:0', '/gpu:1'].
  However this machine only has: ['/cpu:0', '/xla_cpu:0', '/xla_gpu:0',
  '/gpu:0']. Try reducing gpus.

can anyone help me out with the error. Thanks!