Lëshimi i bibliotekës Python për llogaritjen shkencore NumPy 2.0.0

Një version i bibliotekës Python për llogaritjen shkencore NumPy 2.0.0 është i disponueshëm, i fokusuar në punën me vargje dhe matrica shumëdimensionale, si dhe ofron një koleksion të madh funksionesh me zbatimin e algoritmeve të ndryshme që lidhen me përdorimin e matricave. NumPy është një nga bibliotekat më të njohura që përdoret për llogaritjet shkencore. Kodi i projektit është shkruar në Python duke përdorur optimizime në C dhe shpërndahet nën licencën BSD.

NumPy 2.0.0 shënon lëshimin e parë të madh që nga viti 2006.
Në versionin e ri, përveç veçorive të reja dhe optimizimeve të performancës, janë bërë ndryshime në ABI, Python API dhe C-API, të cilat shkelin përputhshmërinë e prapambetur. Për shembull, biblioteka SciPy e përpiluar me NumPy 1.x do të kërkojë ripërpilim për të punuar me NumPy 2.0. Në disa raste, mund të kërkohen ndryshime të kodit për të përdorur NumPy 2.0 në aplikacione.

Gabimi mĂ« i rĂ«ndĂ«sishĂ«m lidhet me ruajtjen e precizitetit tĂ« shprehjeve skalare, pĂ«r shembull, "np.float32(3) + 3" tani do tĂ« kthejĂ« njĂ« vlerĂ« tĂ« tipit float32, jo float64, dhe nĂ« shprehjet me lloje tĂ« shumĂ«fishta, lloji me precizitetin mĂ« tĂ« lartĂ« do tĂ« pĂ«rdoret pĂ«r rezultatin, d.m.th. "np.array([3], dtype=np.float32) + np.float64(3)" do tĂ« kthejĂ« njĂ« vlerĂ« tĂ« tipit float64. Llojet e numrave tĂ« plotĂ« tĂ« parazgjedhur tĂ« pĂ«rdorura nĂ« platformĂ« janĂ« ndryshuar. Windows — nĂ« sistemet 64-bit, tani pĂ«rdoret njĂ« tip i plotĂ« 64-bit, dhe nĂ« sistemet 32-bit, njĂ« tip 32-bit (mĂ« parĂ«, pĂ«rdorej analogu i tipit C long, por tani ekuivalenti np.intp).

Disa përkufizime në C-API janë zëvendësuar ose hequr, për shembull, struktura PyArray_Descr është ndryshuar. Numri maksimal i dimensioneve dhe argumenteve të vendosura përmes makrove NPY_MAXDIMS dhe NPY_MAXARGS është rritur në 64. Të gjitha llojet komplekse janë kaluar në përdorimin e llojeve standarde nga specifikimi C99 (cfloat_t, cdouble_t, clongdouble_t). U shtua API e re C për krijimin e llojeve të personalizuara d. Funksionet e reja të thjeshtuara të inicializimit PyArray_ImportNumPyAPI dhe PyUFunc_ImportUFuncAPI janë propozuar.

Python API siguron një ndarje më të qartë midis API-ve publike dhe private dhe një strukturë të re moduli. Rreth 100 funksione, module dhe konstante janë zhvendosur nga hapësira kryesore e emrave "np", janë zhvlerësuar ose hequr.
U pastrua hapĂ«sira e emrave np.lib. Numri i objekteve nĂ« hapĂ«sirĂ«n kryesore tĂ« emrave Ă«shtĂ« zvogĂ«luar me 10%, dhe nĂ« hapĂ«sirĂ«n e emrave numpy.lib me 80%. HapĂ«sira e emrave numpy.core Ă«shtĂ« zhvendosur nĂ« private. U hoqĂ«n disa metoda nga klasat np.ndarray dhe np.generic. Krijoi njĂ« hapĂ«sirĂ« ​​tĂ« re emri numpy.stringsf me operacione string.

VeçoritĂ« e reja pĂ«rfshijnĂ« mbĂ«shtetjen pĂ«r llojet float32 dhe longdouble nĂ« tĂ« gjitha funksionet numpy.fft, mbĂ«shtetjen pĂ«r API-nĂ« standarde tĂ« Array nĂ« hapĂ«sirĂ«n kryesore tĂ« emrave, njĂ« hapĂ«sirĂ« ​​tĂ« re emri dhe llojet pĂ«r vargjet me gjatĂ«si tĂ« ndryshueshme. Optimizimi i performancĂ«s Ă«shtĂ« kryer duke pĂ«rdorur bibliotekat Intel x86-simd-sort dhe Google Highway pĂ«r funksionet e vargut sort, argsort, ndarje dhe argpartition, operacionet me vargje fikse nĂ« modulin numpy.char janĂ« pĂ«rshpejtuar. U shtua API e re
opt_func_info për gjurmim dhe introspeksion.

Burimi: opennet.ru

Bleni njĂ« host tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, serverĂ« VPS VDS đŸ”„ Bleni hosting tĂ« besueshĂ«m tĂ« faqeve tĂ« internetit me mbrojtje DDoS, servera VPS VDS | ProHoster