ΠΠΎΡΡΠ°ΠΏΠ½ΠΎ ΠΈΠ·Π΄Π°Π²Π°ΡΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Python Π·Π° Π½Π°ΡΡΠ½ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅ NumPy 1.19, ΡΠΎΠΊΡΡΠΈΡΠ°Π½ Π½Π° ΡΠ°Π±ΠΎΡΠ° ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅Π΄ΠΈΠΌΠ΅Π½Π·ΠΈΠΎΠ½Π°Π»Π½ΠΈ Π½ΠΈΠ·ΠΈ ΠΈ ΠΌΠ°ΡΡΠΈΡΠΈ, Π° ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π³ΠΎΠ»Π΅ΠΌΠ° ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ ΡΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° Π½Π° ΠΌΠ°ΡΡΠΈΡΠΈ. NumPy Π΅ Π΅Π΄Π½Π° ΠΎΠ΄ Π½Π°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΡΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° Π½Π°ΡΡΠ½ΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠΊΠΈ. ΠΡΠΎΠ΅ΠΊΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎ Python ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΎ C ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½ΠΈ ΠΎΠ΄ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° BSD.
Π NumPy 1.19 ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Python 3.5 ΠΈ ΡΠ΄Π°Π»Π΅Π½ΡΠ½ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ Python 2 (ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ° numpy.compat ΠΏΠΎΠΊΠ° ΠΎΡΡΠ°Π²Π»Π΅Π½Π°). Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ
Π²Π΅ΡΡΠΈΠΉ Π·Π°ΡΠ²Π»Π΅Π½Ρ Python 3.6, 3.7 ΠΈ 3.8. ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ Π²ΡΠ΅ΠΏΠ΅Π½Π΅Π½.ΡΠ»ΡΡΠ°Π΅Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ Π²ΡΠ±ΠΎΡΠΊΠ°ΠΌΠΈ. Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° 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.
ΠΠ·Π²ΠΎΡ: opennet.ru