Состоялся релиз Python-библиотеки для научных вычислений NumPy 1.19
Состоялся релиз Python-библиотеки для научных вычислений NumPy 1.19
Состоялся релиз библиотеки Python для научных вычислений NumPy 1.19, ориентированной на работу с многомерными массивами и матрицами, а также предоставляющей большую коллекцию функций с реализацией различных алгоритмов, связанных с использованием матриц. NumPy является одной из наиболее востребованных библиотек, применяемых для научных расчётов. Код проекта написан на языке Python с применением оптимизаций на языке Си и распространяется под лицензией BSD.
В NumPy 1.19 прекращена поддержка Python 3.5 и удаленён код для обеспечения работы с Python 2 (прослойка numpy.compat пока оставлена). В качестве поддерживаемых версий заявлены Python 3.6, 3.7 и 3.8. Продолжено развитие модуля numpy.random для работы со случайными выборками. Улучшена поддержка wheel-пакетов NumPy на архитектуре Aarch64 и при использовании реализации Python PyPy. Расширена функциональность numpy.frompyfunc, np.str_, numpy.copy, numpy.linalg.multi_dot, numpy.count_nonzero и numpy.array_equal. Улучшено определение возможностей CPU, таких как поддержка AVX. Добавлена работающая 5-7 раз быстрее реализация np.exp на базе AVX512, применяемая для входных данных с типом np.float64.
NumPy 1.19.0 Release Notes
This NumPy release is marked by the removal of much technical debt:support for Python 2 has been removed, many deprecations have been expired, and documentation has been improved. The polishing of the random module continues apace with bug fixes and better usability from Cython.
The Python versions supported for this release are 3.6-3.8. Downstream developers should use Cython >= 0.29.16 for Python 3.8 support and OpenBLAS >= 3.7 to avoid problems on the Skylake architecture.
Highlights
-
Code compatibility with Python versions < 3.6 (including Python 2) was dropped from both the python and C code. The shims in
numpy.compatwill remain to support third-party packages, but they may be deprecated in a future release. Note that 1.19.x will not compile with earlier versions of Python due to the use of f-strings.
