Ошибка времени выполнения Pytorch: at :: cuda :: blas :: gemm <float>Аргумент ldb должен быть положительным - PullRequest
0 голосов
/ 28 января 2020

Я использую Ax для BO, который заканчивается через Botorch и GPytorch, используя Pytorch. В какой-то момент при вызове loss.backward() появляется следующая ошибка:

  File ".../model.py", line 496, in train_loop
    loss.backward()
  File ".../torch/tensor.py", line 166, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph)
  File ".../torch/autograd/__init__.py", line 99, in backward
    allow_unreachable=True)  # allow_unreachable flag
RuntimeError: at::cuda::blas::gemm<float> argument ldb must be positive and less than 2147483647 but got 0

Глядя на оригинальный файл CUDABlass. cpp, ошибка соответствует проверке положительного целого числа:

#define CUDABLAS_POSINT_CHECK(FD, X)         \
  TORCH_CHECK(                               \
      (X > 0 && X <= INT_MAX),               \
      "at::cuda::blas::" #FD " argument " #X \
      " must be positive and less than ",    \
      INT_MAX,                               \
      " but got ",                           \
      X)

Я не знаю причину ошибки. Я подозреваю, что это какая-то переменная Search Space, но я не вижу в них ошибок (или того же, что проблема не имеет ничего общего с Ax, Botorch или Gpytorch). Кто-нибудь сталкивался с этой ошибкой раньше? Как ты это решил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...