NumPy 2.0.0 ғылыми есептеулерге арналған Python кітапханасының шығарылымы

NumPy 2.0.0 ғылыми есептеулерге арналған Python кітапханасының шығарылымы бар, ол көпөлшемді массивтермен және матрицалармен жұмыс істеуге бағытталған, сонымен қатар матрицаларды қолданумен байланысты әртүрлі алгоритмдерді жүзеге асырумен функциялардың үлкен жинағын қамтамасыз етеді. NumPy - ғылыми есептеулер үшін қолданылатын ең танымал кітапханалардың бірі. Жоба коды C тіліндегі оңтайландырулар арқылы Python тілінде жазылған және BSD лицензиясы бойынша таратылады.

NumPy 2.0.0 2006 жылдан бері бірінші маңызды шығарылымды білдіреді.
Жаңа нұсқада жаңа мүмкіндіктер мен өнімділікті оңтайландырудан басқа, кері үйлесімділікті бұзатын ABI, Python API және C-API өзгерістер енгізілді. Мысалы, NumPy 1.x көмегімен құрастырылған SciPy кітапханасы NumPy 2.0 нұсқасымен жұмыс істеу үшін қайта құрастыруды қажет етеді. Кейбір жағдайларда қолданбаларда NumPy 2.0 пайдалану үшін кодты өзгерту қажет болуы мүмкін.

Наиболее крупное нарушение связано с сохранением точности скалярных выражений, например, «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).

C-API ішіндегі кейбір анықтамалар ауыстырылды немесе жойылды, мысалы, PyArray_Descr құрылымы өзгертілді. NPY_MAXDIMS және NPY_MAXARGS макростар арқылы орнатылған өлшемдер мен аргументтердің максималды саны 64-ке дейін ұлғайтылды. Барлық күрделі түрлер C99 спецификациясынан стандартты түрлерді пайдалануға ауыстырылды (cfloat_t, cdouble_t, clongdouble_t). Пайдаланушы dтиптерін жасау үшін жаңа C API қосылды. PyArray_ImportNumPyAPI және PyUFunc_ImportUFuncAPI жаңа жеңілдетілген баптандыру функциялары ұсынылды.

Python API жалпы және жеке API интерфейстерін айқынырақ ажыратуды қамтамасыз етеді және жаңа модуль құрылымын енгізеді. 100-ге жуық функциялар, модульдер және тұрақтылар негізгі "np" аттар кеңістігінен шығарылды, ескірген немесе жойылған.
np.lib аттар кеңістігін тазартты. Негізгі аттар кеңістігіндегі нысандар саны 10%-ға, ал numpy.lib аттар кеңістігіндегі 80%-ға қысқарды. numpy.core аттар кеңістігі жекеге жылжытылды. Np.ndarray және np.generic сыныптарынан кейбір әдістер жойылды. Жол әрекеттерімен numpy.stringsf жаңа аттар кеңістігі жасалды.

Жаңа мүмкіндіктер барлық numpy.fft функцияларындағы float32 және longdouble түрлерін қолдауды, негізгі аттар кеңістігіндегі стандартты Array API қолдауын, жаңа аттар кеңістігін және айнымалы ұзындық жолдарының түрлерін қамтиды. Өнімділікті оңтайландыру Intel x86-simd-sort және Google Highway кітапханалары арқылы сұрыптау, argsort, бөлім және argpartition жол функциялары үшін жүзеге асырылды, numpy.char модуліндегі тіркелген жолдармен операциялар жеделдетілді. Жаңа API қосылды
бақылау және интроспекцияға арналған opt_func_info.

Ақпарат көзі: opennet.ru

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster