NOTES_OF_PROGRAMMER Telegram 224
Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ всрато-тСст - считаСм StdDev.

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ LINQ ΠΈ Vector256 - Π² Ρ€Π°Π·Ρ‹ Π½Π° малСнькой ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ Π΄Π²Π° порядка Π½Π° большой (gist, .net 7)

Для Ρ‚Π΅Ρ… ΠΊΡ‚ΠΎ Π½Π΅ понял Ρ‡Ρ‚ΠΎ дСлаСтся Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Average:
* загруТаСтся ΠΏΠΎ 4 double Π² Π²Π΅ΠΊΡ‚ΠΎΡ€ (256 Π±ΠΈΡ‚ / 8 Π±Π°ΠΉΡ‚ (64 Π±ΠΈΡ‚Π°) ΠΎΠ΄ΠΈΠ½ double = 4 ΡˆΡ‚ΡƒΠΊΠΈ Π²Π»Π΅Π·Π°Π΅Ρ‚ Π² 1 Π²Π΅ΠΊΡ‚ΠΎΡ€)
* Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ дСлаСтся опСрация Avx.Add - добавляСм ΠΊ Π²Π΅ΠΊΡ‚ΠΎΡ€Ρƒ-аккумулятору Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Π²Π΅ΠΊΡ‚ΠΎΡ€ с 4 ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ double (Vector256.Load Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ 4 double ΠΏΠΎ адрСсу pointer)
* послС ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΏΠΎ всСм элСмСнтами - складываСм 4 ΡˆΡ‚ΡƒΠΊΠΈ double ΠΈΠ· vsum - ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠΎΠ»Π½ΡƒΡŽ сумму всСх элСмСнтов
* Π΄Π΅Π»ΠΈΠΌ Π½Π° src.Count - ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ срСднСС ΠΈΠ· Ρ‡Π΅Π³ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅ΠΊΡ‚ΠΎΡ€ vectorMean - ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ 4 ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… значСния Π² своих элСмСнтах.

Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎ 4 элСмСнта - дСлаСтся опСрация Sum( (p-mean) * (p-mean) )
Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΌ дСлится Π½Π° src.Count ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Average.

Если Π±Ρ‹ опСрация Π±Ρ‹Π»Π° Π½Π°Π΄ float - ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π² 256 Π±ΠΈΡ‚ ΡƒΠ»ΠΎΠΆΠΈΡ‚ΡŒ сразу ΠΏΠΎ 8 float'ΠΎΠ²: 256 Π±ΠΈΡ‚ / 4 Π±Π°ΠΉΡ‚Π° (32 Π±ΠΈΡ‚Π°) float

#csharp #avx
πŸ‘2



tgoop.com/notes_of_programmer/224
Create:
Last Update:

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ всрато-тСст - считаСм StdDev.

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ LINQ ΠΈ Vector256 - Π² Ρ€Π°Π·Ρ‹ Π½Π° малСнькой ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ Π΄Π²Π° порядка Π½Π° большой (gist, .net 7)

Для Ρ‚Π΅Ρ… ΠΊΡ‚ΠΎ Π½Π΅ понял Ρ‡Ρ‚ΠΎ дСлаСтся Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Average:
* загруТаСтся ΠΏΠΎ 4 double Π² Π²Π΅ΠΊΡ‚ΠΎΡ€ (256 Π±ΠΈΡ‚ / 8 Π±Π°ΠΉΡ‚ (64 Π±ΠΈΡ‚Π°) ΠΎΠ΄ΠΈΠ½ double = 4 ΡˆΡ‚ΡƒΠΊΠΈ Π²Π»Π΅Π·Π°Π΅Ρ‚ Π² 1 Π²Π΅ΠΊΡ‚ΠΎΡ€)
* Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ дСлаСтся опСрация Avx.Add - добавляСм ΠΊ Π²Π΅ΠΊΡ‚ΠΎΡ€Ρƒ-аккумулятору Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Π²Π΅ΠΊΡ‚ΠΎΡ€ с 4 ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ double (Vector256.Load Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ 4 double ΠΏΠΎ адрСсу pointer)
* послС ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΏΠΎ всСм элСмСнтами - складываСм 4 ΡˆΡ‚ΡƒΠΊΠΈ double ΠΈΠ· vsum - ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠΎΠ»Π½ΡƒΡŽ сумму всСх элСмСнтов
* Π΄Π΅Π»ΠΈΠΌ Π½Π° src.Count - ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ срСднСС ΠΈΠ· Ρ‡Π΅Π³ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅ΠΊΡ‚ΠΎΡ€ vectorMean - ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ 4 ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… значСния Π² своих элСмСнтах.

Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎ 4 элСмСнта - дСлаСтся опСрация Sum( (p-mean) * (p-mean) )
Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΌ дСлится Π½Π° src.Count ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Average.

Если Π±Ρ‹ опСрация Π±Ρ‹Π»Π° Π½Π°Π΄ float - ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π² 256 Π±ΠΈΡ‚ ΡƒΠ»ΠΎΠΆΠΈΡ‚ΡŒ сразу ΠΏΠΎ 8 float'ΠΎΠ²: 256 Π±ΠΈΡ‚ / 4 Π±Π°ΠΉΡ‚Π° (32 Π±ΠΈΡ‚Π°) float

#csharp #avx

BY πŸ““ Записки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅Ρ€Π°





Share with your friend now:
tgoop.com/notes_of_programmer/224

View MORE
Open in Telegram


Telegram News

Date: |

The imprisonment came as Telegram said it was "surprised" by claims that privacy commissioner Ada Chung Lai-ling is seeking to block the messaging app due to doxxing content targeting police and politicians. Ng, who had pleaded not guilty to all charges, had been detained for more than 20 months. His channel was said to have contained around 120 messages and photos that incited others to vandalise pro-government shops and commit criminal damage targeting police stations. Healing through screaming therapy Channel login must contain 5-32 characters Select β€œNew Channel”
from us


Telegram πŸ““ Записки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅Ρ€Π°
FROM American