O backend hexagon introduz suporte para dividir modelos entre vários dispositivos usando uma estratégia de divisão por linhas. Esta alteração permite a distribuição de trabalho em núcleos fundidos e atualiza a configuração do dispositivo para lidar com grupos de dispositivos.

  • Adiciona capacidades de divisão por linhas em múltiplos dispositivos à arquitetura hexagon.
  • Implementa a lógica de divisão de trabalho para núcleos fundidos e várias operações como matmul e argsort.
  • Atualiza a inicialização da sessão, o tratamento de fence e a recuperação de erros para maior robustez em cenários multi-dispositivo.
  • Refatora a lógica de particionamento e sincroniza o estado entre grupos de dispositivos.

Esta melhoria permite distribuir modelos entre vários núcleos ou dispositivos Hexagon, potencialmente melhorando a taxa de transferência e permitindo inferência de modelos maiores.