message: Don't try to call cuMemAlloc with size 0.
  This will result in a failure, so we can just immediately return nullptr.
  The caller code currently already needs to accept nullptr as a valid result if
  size == 0, and only treat it as an error if size > 0.
diff: @@ -837,6 +837,10 @@ GpuDriver::ContextGetSharedMemConfig(GpuContext* context) {
  /* static */ void* GpuDriver::DeviceAllocate(GpuContext* context,
  uint64 bytes) {
  + if (bytes == 0) {
  + return nullptr;
  + }
  +
  ScopedActivateContext activated{context};
  CUdeviceptr result = 0;
  CUresult res = tensorflow::wrap::cuMemAlloc(&result, bytes);
  