Как стать автором
Обновить

Заставляем машинное обучение делать «брррр» через понимание базовых принципов компьютерных систем

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров3.6K
Всего голосов 6: ↑6 и ↓0+15
Комментарии3

Комментарии 3

Не все фьюжны операторов так же просты, как в случае с поэлементными операторами. Поэлементные операторы можно «сфьюзить», превратив их в редукцию (reduction) или в умножение матриц. ориг:(You can fuse pointwise operators onto reductions, or pointwise operators onto matrix multiplication. )

Это автор что имел в виду, интересно? Пример бы.

Даже само умножение матриц можно рассматривать в качестве фьюзинга умножения с автоматическим расширением размерности и размеров массивов (broadcasting multiply) и редукции.

Это понятно.

Насколько я понимаю это простые операции над векторами (a + b * c может быть одной операцией для видеокарты, которая вычисляет результат поэлементно, а не отдельно умножение потом сумму) и dot product (можно свести к умножению матриц (1,N) * (N,1)).

Поточечная `a + b * c` - это комбинация (фьюжн) поточечных `+` и `*`, это не перемножение матриц и не редукция ( мы тут программисты и "произведение Адамара" умножением матриц не называем ).

dot product - редукция. это не поточечная операция.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий