FERRAMENTAS LINUX: O uso da Glibc de melhorar o desempenho "RSEQ" ainda está se unindo

quarta-feira, 25 de março de 2020

O uso da Glibc de melhorar o desempenho "RSEQ" ainda está se unindo



Confira !!



Introduzida no kernel do Linux 4.18 em junho de 2018 foi a nova chamada do sistema RSEQ para "Sequências reinicializáveis" para fornecer as operações mais rápidas do espaço do usuário em dados por CPU, evitando atualizações de operações atômicas. Infelizmente, ver o espaço do usuário fazer uso do RSEQ tem sido um processo lento.

As seqüências reinicializáveis ​​podem facilitar a consulta mais rápida do número atual de CPU, incrementar contadores por CPU, modificar dados protegidos por spinlocks por CPU, gravar / ler buffers de anel por CPU e operações similares. Um dos grandes usuários em potencial do RSEQ em que esperamos sua adoção foi a Biblioteca GNU C (Glibc).

Foi lançada na segunda-feira, a versão mais recente de um patch Glibc para usar o RSEQ para sched_getcpu () , a chamada para determinar o núcleo da CPU no qual o thread de chamada está executando.

Utilizando a chamada do sistema RSEQ, o sched_getcpu () da Biblioteca C do GNU pode ser 5.5x mais rápido. Ou se o uso de uma carga embutida do ID da CPU do __rseq_abi TLS for uma velocidade de 17.1x. O Glibc ainda retornaria ao comportamento existente, caso ele estivesse em um kernel mais antigo sem o suporte a Sequências Reiniciáveis.

Esperamos ver mais adoção do RSEQ na Glibc e em outros lugares à medida que o ano avança.

Fonte

Até a próxima !1

Nenhum comentário:

Postar um comentário