Utgivelse av Python-biblioteket for vitenskapelige beregninger NumPy 2.0.0

Ute er en utgave av Python-biblioteket for vitenskapelig beregning NumPy 2.0.0, som fokuserer pÄ arbeid med flerdimensjonale matriser og gir et stort utvalg av funksjoner som implementerer forskjellige algoritmer relatert til bruk av matriser. NumPy er et av de mest ettertraktede bibliotekene som brukes for vitenskapelige beregninger. Prosjektkoden er skrevet pÄ Python med optimaliseringer i C, og distribueres under BSD-lisensen.

NumPy 2.0.0 er merket som den fĂžrste betydelige utgivelsen siden 2006.
I den nye versjonen er det, i tillegg til nye funksjoner og ytelsesoptimaliseringer, endringer i ABI, Python API og C-API som bryter bakoverkompatibiliteten. For eksempel vil SciPy-biblioteket bygget med NumPy 1.x kreve recompiling for Ă„ fungere med NumPy 2.0. I enkelte tilfeller kan det vĂŠre nĂždvendig Ă„ gjĂžre endringer i koden for Ă„ bruke NumPy 2.0 i applikasjoner.

Det stĂžrste bruddet er relatert til presisjonen i skalĂŠre uttrykk; for eksempel vil “np.float32(3) + 3” nĂ„ returnere en verdi med typen float32, ikke float64, og i uttrykk med flere typer vil resultatet bruke typen med hĂžyest presisjon. For eksempel vil “np.array([3], dtype=np.float32) + np.float64(3)” returnere en verdi med typen float64. Hentet heltalls-typene som brukes som standard pĂ„ Windows-plattformen er endret; pĂ„ 64-biters systemer brukes nĂ„ 64-biters heltall, mens pĂ„ 32-biters systemer brukes 32-biters heltall (tidligere ble en tilsvarende C-type kalt long brukt, nĂ„ er det ekvivalent til np.intp).

Noen definisjoner i C-API er blitt erstattet eller fjernet; for eksempel er strukturen PyArray_Descr endret. Det maksimale antall dimensjoner og argumenter som er tilgjengelig via makroene NPY_MAXDIMS og NPY_MAXARGS er Þkt til 64. Alle komplekse typer er oversatt til Ä bruke standardtyper fra C99-spesifikasjonen (cfloat_t, cdouble_t, clongdouble_t). En ny C API for Ä lage egne dtype-er er lagt til. Nye forenklede funksjoner for initialisering PyArray_ImportNumPyAPI og PyUFunc_ImportUFuncAPI er foreslÄtt.

I Python API er det oppnÄdd en tydeligere separasjon mellom offentlig og privat API, og en ny modulkonstruksjon er foreslÄtt. Omtrent 100 funksjoner, moduler og konstanter er fjernet fra hovednavnerommet 'np', erklÊrt som utdaterte eller slettet.
Navnet til np.lib er rense. Antallet av objekter i hovednavnerommet er redusert med 10 %, og i navnerommet numpy.lib med 80 %. Det er omklassifisert til private navnerom numpy.core. Noen metoder i klassene np.ndarray og np.generic er fjernet. Et nytt navnerom numpy.stringsf med strengeoperasjoner er opprettet.

Blant de nye funksjonene kan vi nevne stĂžtte for datatyper som float32 og longdouble i alle funksjoner i numpy.fft, stĂžtte for standard API Array i hovednavnerommet, et nytt navnerom og typer for variable lengde strenger. Ytelsesoptimalisering er gjennomfĂžrt med bruk av Intel x86-simd-sort og Google Highway-biblioteker for strengefunksjonene sort, argsort, partition og argpartition, og operasjoner med faste strenger i numpy.char har blitt akselerert. Ny API
opt_func_info for sporing og introspeksjon.

Kilde: opennet.ru

KjĂžp pĂ„litelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere đŸ”„ KjĂžp pĂ„litelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster