Почему такая большая разница во времени выполнения операции свертки с numpy?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Почему такая большая разница во времени выполнения операции свертки с numpy?

Сообщение Anonymous »


Используя функцию свертки numpy, я обнаружил, что ядра свертки размером 10000 или меньше выполняют гораздо более быстрое время свертки, чем ядра размера 10001 или больше. В чем причина такой большой разницы во времени, когда ядро ​​увеличивается всего на 1.

Вот тестовый код:

импортировать numpy как np со времени импортировать perf_counter как pfc данные = np.random.normal(размер=50000) kernel_low = np.random.normal (размер = 10000) kernel_high = np.random.normal (размер = 10001) t_start = пфк() np.convolve(данные, kernel_low, 'полный') t_stop = пфк() print('numpy свертка с ядром = 10000, time=', t_stop - t_start) t_start = пфк() np.convolve(данные, kernel_high, 'полный') t_stop = пфк() print('numpy свертка с ядром = 10001, time=', t_stop - t_start) Выход:

свертка numpy с ядром = 10000, временем = 0,0615867999731563 numpy-свертка с ядром = 10001, временем = 1,6918594000162557 Есть идеи?
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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