ΠΠΎΡΡΡΠΏΠ΅Π½ ΡΠ΅Π»ΠΈΠ· 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.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru