Horace He (блог) – товарищ из команды питорча, который очень любит неожиданные микробенчмарки. На картинке – обычное матричное умножение на обычных A100, вот только почему-то для более "простых" данных вроде разных констант или нулей производительность существенно быстрее, почти на треть. Для любителей подумать 🤪 перед ответом – код для воспроизведения, а ответ – под спойлером ниже.



По заветам Данилы Багрова, правда в силе (тока). В смысле, в энергопотреблении. ⚡️ Дело в том, что транзисторы в GPU потребляют существенно больше электричества, если они меняют своё состояние. Если мы используем весь GPU на полную, с такой мощностью источник питания видеокарты не справляется, и частота снижается (троттлится), снижая скорость вычислений. Если мы забиваем матрицы нулями, это позволяет большему количеству транзисторов не менять своё состояние, увеличивая производительность. Больше деталей – в блогпосте автора.



Железо порой интереснее, чем все эти ваши новомодные нейроархитектуры. 👌