Maktaba ya Python ya Kisayansi ya NumPy 2.0.0 Imetolewa

Kutolewa kwa maktaba ya Python kwa kompyuta ya kisayansi NumPy 2.0.0 inapatikana, ililenga kufanya kazi na safu nyingi na matrices, na pia kutoa mkusanyiko mkubwa wa kazi na utekelezaji wa algorithms mbalimbali zinazohusiana na matumizi ya matrices. NumPy ni mojawapo ya maktaba maarufu zaidi zinazotumiwa kwa hesabu za kisayansi. Nambari ya mradi imeandikwa kwa Python kwa kutumia uboreshaji katika C na inasambazwa chini ya leseni ya BSD.

NumPy 2.0.0 inaashiria toleo la kwanza muhimu tangu 2006.
Katika toleo jipya, pamoja na vipengele vipya na uboreshaji wa utendakazi, mabadiliko yamefanywa kwa ABI, Python API na C-API, ambayo yanakiuka uoanifu wa nyuma. Kwa mfano, maktaba ya SciPy iliyokusanywa na NumPy 1.x itahitaji urejeshaji ili kufanya kazi na NumPy 2.0. Katika baadhi ya matukio, mabadiliko ya msimbo yanaweza kuhitajika ili kutumia NumPy 2.0 katika programu.

Наиболее крупное нарушение связано с сохранением точности скалярных выражений, например, «np.float32(3) + 3» теперь вернёт значение с типом float32, а не float64, а в выражениях с несколькими типами для результата будет использован тип с наивысшей точностью, т.е. «np.array([3], dtype=np.float32) + np.float64(3)» вернёт значение с типом float64. Изменены целочисленные типы, применяемые по умолчанию на платфoрме Windows — на 64-разрядных системах теперь применяется 64-разрядный целый тип, а на 32-разрядных — 32-разрядный (ранее использовался аналог Си-типа long, а теперь эквивалент np.intp).

Baadhi ya ufafanuzi katika C-API yamebadilishwa au kuondolewa, kwa mfano, muundo wa PyArray_Descr umebadilishwa. Idadi ya juu zaidi ya vipimo na hoja iliyowekwa kupitia NPY_MAXDIMS na NPY_MAXARGS makro imeongezwa hadi 64. Aina zote changamano zimebadilishwa kwa kutumia aina za kawaida kutoka kwa vipimo vya C99 (cfloat_t, cdouble_t, clongdouble_t). Imeongeza API mpya ya C ya kuunda dtypes maalum. Vipengele vipya vya uanzishaji vilivyorahisishwa PyArray_ImportNumPyAPI na PyUFunc_ImportUFuncAPI vimependekezwa.

API ya Python hutoa utengano wazi zaidi kati ya API za umma na za kibinafsi na inaleta muundo mpya wa moduli. Takriban vitendaji 100, moduli, na viambatisho vimehamishwa kutoka kwa nafasi kuu ya majina ya "np", imeacha kutumika, au kuondolewa.
Imesafisha nafasi ya majina ya np.lib. Idadi ya vitu katika nafasi kuu ya majina imepunguzwa kwa 10%, na katika nafasi ya majina ya numpy.lib kwa 80%. Nafasi ya majina ya numpy.core imehamishwa hadi ya faragha. Imeondoa baadhi ya mbinu kutoka kwa madarasa ya np.ndarray na np.generic. Imeunda nafasi mpya ya majina numpy.stringsf yenye shughuli za mfuatano.

Vipengele vipya ni pamoja na uwezo wa kutumia float32 na aina za muda mrefu katika vipengele vyote vya kukokotoa vya numpy.fft, uwezo wa kutumia API ya Array ya kawaida katika nafasi kuu ya majina, nafasi mpya ya majina na aina za mifuatano ya urefu tofauti. Uboreshaji wa utendakazi umefanywa kwa kutumia maktaba za Intel x86-simd-sort na Google Highway kwa aina za vitendakazi vya kamba, argsort, partition na argpartition, shughuli zilizo na nyuzi zisizobadilika katika moduli ya numpy.char zimeharakishwa. API mpya imeongezwa
opt_func_info kwa ufuatiliaji na uchunguzi.

Chanzo: opennet.ru

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster