Freeze & Shortcut
Freeze Freeze
ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Ρ‚Ρ‹ ΡƒΠΆΠ΅ тСстировал Π½ΠΎΠ²Ρ‹Π΅ SIMD-Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ для AES? Π₯ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, смоТСм Π»ΠΈ ΠΌΡ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ.
Shortcut Shortcut
Π’ΠΎΡ‚, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» свСТиС тСсты AES с SIMD, всё Π΅Ρ‰Ρ‘ Π²Ρ‹ΠΆΠΈΠΌΠ°ΡŽ максимум. Новая вСрсия с AVX‑512 ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ ΡΡ‚Π°Ρ€ΡƒΡŽ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π½Π° 200 микросСкунд Π·Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³ΠΎΠ½ ΠΈΠ· 16 Π±Π»ΠΎΠΊΠΎΠ², Π½ΠΎ Ссли Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ» Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, ΠΌΠΎΠΆΠ½ΠΎ Π΅Ρ‰Ρ‘ 50 микросСкунд ΡΡ€Π΅Π·Π°Ρ‚ΡŒ. Π₯ΠΎΡ‡Π΅ΡˆΡŒ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π²ΠΆΠΈΠ²ΡƒΡŽ? Π”Π°Π²Π°ΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅ΠΌ, посмотрим, сходится Π»ΠΈ тСория Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.
Freeze Freeze
ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Π΄ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ тСст Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΈΠ·ΠΌΠ΅Ρ€ΡŒ врСмя, Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π’Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, состояниС кэша ΠΈ частота процСссора ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π½ΠΈΡ†Π° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π° этой ΠΏΡ€Π°Π²ΠΊΠΎΠΉ. Π― ΡΡ€Π°Π²Π½ΡŽ количСство Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŽ Π·Π°ΡΠ²Π»Π΅Π½Π½ΡƒΡŽ Π²Ρ‹Π³ΠΎΠ΄Ρƒ Π² 50 микросСкунд. ΠœΡ‹ ΡƒΠ»ΠΎΠΆΠΈΠ»ΠΈΡΡŒ Π² Ρ€Π°ΠΌΠΊΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ.
Shortcut Shortcut
ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ. БСйчас Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽ процСссор, ΠΏΠΎΠ΄ΠΊΡ€ΡƒΡ‡Ρƒ частоту, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅. Π—Π°ΠΏΡƒΡ‰Ρƒ ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° ΠΈ ΡΡ€Π°Π²Π½ΡŽ врСмя ΠΈ количСство Ρ†ΠΈΠΊΠ»ΠΎΠ². БСйчас Ρ‚Π΅ΡΡ‚ΠΎΠ²ΡƒΡŽ срСду поднимаю.
Freeze Freeze
Π—Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Π”Π΅Ρ€ΠΆΠΈ обвязку ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ памяти соотвСтствуСт трСбованиям AVX‑512. Π― Π±ΡƒΠ΄Ρƒ Π³ΠΎΡ‚ΠΎΠ²Π° Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ счСтчик Ρ†ΠΈΠΊΠ»ΠΎΠ², ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡˆΡŒ.