Perfilado en PyTorch (Parte 2): de nn.Linear a un MLP fusionado

Resumen del corpus

Segunda entrega de la serie "Profiling in PyTorch", que enseña a leer trazas del perfilador para optimizar modelos. El artículo parte de nn.Linear, muestra que el sesgo ya está plegado en el epílogo del kernel GEMM (addmm) y que torch.compile no tiene nada que fusionar en una sola capa. Luego apila tres capas en un MLP con activación GeGLU: en modo eager se lanzan cinco kernels y el intermedio pasa por HBM, mientras que compile fusiona GeLU y mul en un único kernel Triton; finalmente compara con kernels ajustados a mano de Liger, que logran la misma fusión sin costo de compilación.

Periodista: Aritra Roy Gosthipaty, Rémi Ouazan Reboul, Sergio Paniego, Pedro Cuenca, Sayak Paul

Noticia original

Ver todas las noticias de Hugging Face Blog