Embora por muitos anos estejamos acostumados a ver a Intel lançar seu novo trabalho de habilitação de recursos de hardware no kernel do Linux e componentes relacionados bem antes do envio de produtos, ocasionalmente ocorrem lapsos devido a vários sincronismos internos e externos. O lançamento do Sapphire Rapids está se aproximando rapidamente e uma das principais adições é o Advanced Matrix Extensions, com seu suporte a Linux ainda em .
Voltando a junho de 2020, a Intel postou os patches em torno do AMX para o kernel Linux, as cadeias de ferramentas de código aberto e componentes relacionados. No lado do kernel Linux, esse trabalho pesado ainda está em andamento, sem nenhum kernel Linux lançado, mas com suporte para AMX.
Vários patches AMX para o kernel do Linux foram postados várias vezes junto com melhorias relacionadas ao código do kernel . Enviado na quinta-feira, está a quarta e "última parte" do kernel AMX para Linux.
O engenheiro da Intel Linux, Chang S. Bae, explicou:
Esta é a última parte do esforço para dar suporte ao AMX. Esta série segue a parte KVM.
Com AMX, o buffer de estado do registro FPU que faz parte de task_struct :: thread :: fpu não será estendido incondicionalmente para todas as tarefas em um sistema habilitado para AMX, pois isso desperdiçaria um mínimo de 8K por tarefa.
AMX fornece um mecanismo para interceptar no primeiro uso. Essa armadilha será utilizada para alocar um buffer de estado de registro maior quando a tarefa (processo) tiver permissão para usá-lo. O buffer padrão task_struct só carregará estados até AVX512.
O custo de comutação XFD só importa para um sistema habilitado para AMX. Com a limpeza do manuseio do KVM FPU, o XFD / AMX do lado do host é completamente independente do XFD / AMX do lado do convidado.
O recurso por tarefa e as informações de tamanho ajudam a oferecer suporte a recursos dinâmicos organicamente em comparação com as versões anteriores.
Cada tarefa tem um comprimento de sigframe exclusivo com recursos dinâmicos. sigaltstack () tem um novo verificador de tamanho para suportar um tamanho de sigframe por tarefa.
Esta versão também corrige a implementação syscall e a alternância de estado XFD em caminhos ativos.
Esses patches da parte 4 somam 23 novos patches com cerca de mil linhas de novo código para as mudanças de signaltstack, novas chamadas de sistema para controlar componentes XSTATE dinâmicos, estado de XFD e suporte de comutação e habilitar AMX com manipulação de XFD #NM.
Estamos chegando bem perto da janela de mesclagem do Linux 5.16 iniciando em uma ou duas semanas, então resta saber se todos esses patches AMX estarão prontos para esta próxima versão do kernel ... Pelo menos os patches de limpeza x86 FPU e alguns dos outros trabalhos parecem que irão pousar no Linux 5.16, mas dado o tempo, seria um tanto surpreendente se este lote final fosse revisado e considerado pronto a tempo. Assim, avançando até o Linux ~ 5.17 antes que o kernel esteja totalmente pronto para as extensões de matriz avançada e isso também chegando perto de onde o Ubuntu 22.04 LTS provavelmente cortará seu kernel para o próximo lançamento empresarial.
Até a próxima !!
Nenhum comentário:
Postar um comentário