Futhark – это язык программирования, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ ΠΈ относящийся ΠΊ сСмСйству ML.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ:

  • Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ прСдставлСниС ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… конструкций Π±Ρ‹Π»ΠΎ пСрСсмотрСно ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ. Π—Π° Ρ€Π΅Π΄ΠΊΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ это ΠΌΠΎΠΆΠ΅Ρ‚ сильно ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° структурно Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏ-сумм ΠΈ сопоставлСниС с ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠΌ. Но ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с массивами Ρ‚ΠΈΠΏ-сумм, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сами содСрТат массивы.
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сокращСно врСмя компиляции Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.
  • Π—Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ‚ΠΈΠΏΠ° большС Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ.
  • ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° rotate ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΎ.

Π£Π΄Π°Π»Π΅Π½ΠΎ

  • ΠŸΡ€Π΅Ρ„ΠΈΠΊΡΠ½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ~ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π° ! Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ для выполнСния ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ отрицания Ρ†Π΅Π»Ρ‹Ρ… чисСл.

ИзмСнСно:

  • ΠžΠΏΡ†ΠΈΡ —futhark для futhark bench ΠΈ futhark test Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ соотвСтствуСт Π±ΠΈΠ½Π°Ρ€ΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌΡƒ для самих ΠΏΠΎΠ΄ΠΊΠΎΠΌΠ°Π½Π΄.
  • Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ°Ρ опция futhark -t (которая выполняла Ρ‚Ρƒ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎ ΠΈ futhark check) Π±Ρ‹Π»Π° ΡƒΠ΄Π°Π»Π΅Π½Π°.
  • stream_map стал map_stream, Π° stream_red – reduce_stream.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ:

  • futhark test Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ «ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚» —no-tuning Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡŒ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ.
  • ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ futhark bench ΠΈ futhark test Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ —exclude Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.
  • БэкСнд Π½Π° Python ΠΈ C# Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru