O driver Intel Habana Labs AI se prepara para mudar para o novo subsistema acelerador do Linux.
Com o kernel Linux 6.2 em desenvolvimento, há o novo subsistema/estrutura “accel” do acelerador de computação como parte da área do Direct Rendering Manager. A criação desse novo subsistema foi reunida pela Intel (Habana Labs) e agora seu driver acelerador de IA está se preparando para passar do catch-all “char/misc” para este novo subsistema.
O principal desenvolvedor do driver do acelerador “habanalabs” é Oded Gabbay, que também liderou a criação do subsistema/framework accel. Voltando anos atrás, houve discussões sobre ter um subsistema de acelerador de hardwarepara o número crescente de dispositivos que não são exatamente GPUs no sentido tradicional e, portanto, não necessariamente se encaixam inteiramente na área DRM, mas também “char/misc” continua a proliferar como a área abrangente para drivers aleatórios.
Driver Intel Habana Labs AI se prepara para mudar para o novo subsistema acelerador do Linux
Com mais drivers de kernel AI de código aberto continuando a aparecer, finalmente, nos últimos meses, esse subsistema de acelerador de computação se uniu. Também foram necessários alguns acordos de design entre as partes interessadas, originalmente havendo algumas diferenças se deveria ser um subordinado da área de DRM e suas interfaces. Mas como os aceleradores de IA têm muito em comum com as GPUs e já existe muito código DRM comum, faz sentido incluir a estrutura do acelerador como parte do código DRM.
Com o Linux 6.2, o subsistema/framework do acelerador de computação está sendo introduzido, enquanto para o Linux 6.3 provavelmente serão os primeiros drivers na árvore. O driver “VPU” da Unidade de Processamento Versátil em desenvolvimento da Intel para Meteor Lake foi adaptado para a nova estrutura e agora o driver do Habana Labs tem patches para mover casas de char/misc para a área de aceleração.
Oded Gabbay postou os patches movendo os cabeçalhos da API do espaço do usuário e, em seguida, o próprio driver do diretório “drivers/misc” para “drivers/accel”.
Com essa mudança, os arquivos e as alterações no sistema de compilação são resolvidos. No entanto, patches futuros ainda estão por vir para registrar corretamente no subsistema do acelerador, bem como expor os novos arquivos de caracteres /dev/accel* em vez dos arquivos de caracteres de dispositivo Habana Labs existentes. Dado o tempo, presumivelmente este movimento de driver do Habana Labs será resolvido para a janela de mesclagem do Linux 6.3 em fevereiro.
É bom ver essa atividade inicial enquanto também há outro trabalho de driver de IA de código aberto para Toshiba DNN Visconti, NVIDIA NVDLA, Samsung Trinity NPU, Intel GNA, Qualcomm QAIC e um número crescente de outros dispositivos/drivers que provavelmente terão como alvo subsistema.
O Intel Habana Labs certamente pode ser elogiado por seu trabalho contínuo em ser o principal acelerador de hardware de IA apoiado por espaço de usuário de código aberto e software de espaço de kernel, ao mesmo tempo em que são bons administradores upstream do kernel.