NumPy 2.0 traz desempenho mais rápido graças ao x86-simd-sort da Intel e ao Google

NumPy 2.0 traz desempenho mais rápido graças ao x86-simd-sort da Intel e ao Google

O NumPy 2.0 traz desempenho mais rápido graças ao x86-simd-sort da Intel e ao Google. Assim, temos o NumPy 2.0 que está em produção desde o ano passado. O primeiro lançamento ocorreu ainda em 2006. Embora venha com quebra de API/ABI, o NumPy 2.0 oferece novos recursos e melhorias de desempenho.

“Temos o prazer de anunciar que o NumPy 2.0 está planejado para ser lançado em 16 de junho de 2024. Este lançamento está há mais de um ano em produção, e é o primeiro grande lançamento desde 2006. É importante ressaltar que, além de muitas novidades recursos e melhoria de desempenho, ele contém alterações de quebra para o ABI, bem como as APIs Python e C. É provável que os pacotes a jusante e O código do usuário final precisa ser adaptado – se puder, verifique se o seu código funciona com NumPy”. 

Interessante em relação ao desempenho é que as funções de classificação do NumPy 2.0 como sort/argsort/partition/argpartition são muito mais rápidas do que antes. O NumPy agora está aproveitando a biblioteca x86-simd-sort da Intel e o Highway do Google para alcançar “grandes acelerações” com a nova versão do NumPy.

NumPy 2.0 traz desempenho mais rápido graças ao x86-simd-sort da Intel e ao Google

Ele possui um enorme potencial de desempenho do x86-simd-sort com classificação muito mais rápida graças ao aproveitamento do AVX-512 e outros recursos ISA modernos. O Highway do Google também ajuda com SIMD portátil de desempenho com despacho em tempo de execução. O Highway ajuda não apenas a segmentar AVX2 e AVX-512, mas muitos sub-alvos da família de processadores, RISC-V RVV, ARM NEON e outros processadores.

O NumPy 2.0 também traz opt_func_info como uma nova API de rastreamento e introspecção para sondar kernels específicos de hardware disponíveis e despachá-los. O NumPy 2.0 também traz um novo dtype de cadeia de caracteres de comprimento variável “StringDType”, muitas melhorias de string, suporte para float32 e longdouble em funções NumPy FFT e outras adições de API C e Python.

Downloads e mais detalhes sobre o NumPy 2.0 via NumPy.org.