Могу ли я оптимизировать вызов torch::where для быстрого выполнения с помощью других функций?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Могу ли я оптимизировать вызов torch::where для быстрого выполнения с помощью других функций?

Сообщение Anonymous »

Сейчас я работаю над проектом, который требует быстрого выполнения и использует много libtorch для необходимых тензорных операций. Во время отладки я заметил, что следующая строка работает очень медленно:

Код: Выделить всё

auto res = torch::where(tensor_A != 0.0, tensor_A - tensor_B, tensor_A);
с tensor_A.sizes() == [1, N, 10, 2], tensor_B.sizes() == [N, 1, 1, 2]< /код>. Очень медленно означает ~15 мс для N=128, что будет максимальным размером N. Как я могу это оптимизировать? Есть ли более быстрая альтернатива с использованием других функций в этом случае приложения?
Заранее спасибо
Я уже пробовал предварительно вычислить условие и вычитание, но получилось не улучшает общую производительность.
Изменить:

Это проект ros2, поэтому я компилирую с использованием сборки colcon и уже включил -03 и -march=native. Я измеряю время с помощью std::chrono::high_solve_lock::now()

Подробнее здесь: https://stackoverflow.com/questions/793 ... -functions
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как я могу оптимизировать код Python для более быстрого выполнения?
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как я могу оптимизировать код Python для более быстрого выполнения? [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как я могу оптимизировать код Python для более быстрого выполнения?
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Я не понимаю поведение torch.Tensor при передаче в него объекта torch.Size.
    Anonymous » » в форуме Python
    0 Ответы
    88 Просмотры
    Последнее сообщение Anonymous
  • Torch.optim — AttributeError: частично инициализированный модуль «torch» не имеет атрибута «_jit_internal» (скорее всего
    Anonymous » » в форуме Python
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»