ΠΡΡ ΠΎΠ΄ΠΈΠ½ ΡΡΡΠ°Π½Π½ΡΠΉ Π±Π΅Π½ΡΠΌΠ°ΡΠΊ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ (10Π - 100Π - 1M) #perf
π1
ΠΠΎΠΆΠ°Π»ΡΠΉ Π»ΡΡΡΠ°Ρ ΡΡΠ°ΡΡΡ Ρ ΠΎΠ±ΠΈΠ»ΠΈΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ - ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ (GPS, ΠΠ»ΠΎΠ½Π°ΡΡ, ....) #gps #doc
ciechanow.ski
GPS β Bartosz Ciechanowski
Interactive article explaining how GPS works.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ github Debugging stories - Π΄Π΅ΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΏΡΠΎ ΠΏΠΎΠΈΡΠΊ ΠΈ Π½Π°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π½ΡΡ
Ρ
ΠΈΡΡΠΎΠΆΠΎΠΏΡΡ
ΠΎΡΠΈΠ±ΠΎΠΊ, Π³Π΄Π΅ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΡΡΠΎ ΡΠ±ΠΈΠΉΡΠ° - ΡΠ°Π΄ΠΎΠ²Π½ΠΈΠΊ :)
How to Build Dynamic Queries With Expression Trees in C# - Π² Ρ.Ρ. Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π² LINQ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΏΠΎΠ»Ρ. #dotnet
π1
AWS CDK for .NET Developers - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ°ΠΏΠΏΠ΅ΡΠ° AWSS CDK Π½Π° C# Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ/ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ IaaS #dotnet
Π§ΡΡΠΈΠΊΠΈ ΠΏΡΠΈΠ½Π΅ΡΠ»ΠΈ, ΡΡΠΎ Π΅ΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° copilot, ΠΊΠΎΡΠΎΡΡΠΉ Π² Ρ.Ρ. ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π±Π΅Π· ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΡΡΠ°Π½Π°ΠΌ
Windsurf
Windsurf - The most powerful AI Code Editor
Windsurf is the world's most advanced AI coding assistant for developers and enterprises. Windsurf Editor β the first AI-native IDE that keeps developers in flow.
π3
ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠ°Π·Π΄Π΅Π» (ΡΠΊΠΎΡΠ΅Π΅ Π΄Π°ΠΆΠ΅ ΠΊΠ½ΠΈΠ³Π°, ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΌ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ Π² PDF) Architecting Cloud Native .NET Applications for Azure
#azure #dotnet
#azure #dotnet
Docs
Architecting Cloud Native .NET Applications for Azure - .NET
A guide for building cloud-native applications leveraging containers, microservices, and serverless features of Azure.
ΠΡΡ ΠΎΠ΄ΠΈΠ½ ΡΡΡΠ°Π½Π½ΡΠΉ ΡΠ΅ΡΡ Ρ SSE/AVX - ΠΏΠΎΠΈΡΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π΄Π²Π°ΠΆΠ΄Ρ, ΠΊΡΠΎΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° (ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π·Π°Π΄Π°ΡΠ° Π½Π° ΡΠΎΠ±Π΅ΡΠ°Ρ
). ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ XOR, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π° O(n) Π½Π°ΠΉΡΠΈ ΡΡΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ - Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠΊΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡΡΡΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅ π gist #simd #sse #dotnet
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ - Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠΊΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡΡΡΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅ π gist #simd #sse #dotnet
ΠΠ°ΠΊ Ρ ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π» - fine tuned model Π΄Π»Ρ ChatGPT ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ.
Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΡΡΠΏΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π΅ΡΡΡ ΡΠ²ΠΎΠΈ knowledge base, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ ΡΠΎΡΡΠ° ΠΈ Ρ.Π΄. ΠΠ΅ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΠ»ΠΈΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΌΠ΅ΡΠΆΠ΅Π½Π° Π΄Π»Ρ API-ΡΠΎΠΊΠ΅Π½Π° Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΡΡ ChatGPT ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° completion ΡΠ΅ΡΠ΅Π· API ΡΠΆΠ΅ Ρ ΡΡΡΡΠΎΠΌ ΡΠ΅Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠΎΡΠΌΠΈΠ»ΠΈ Π² fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ.
ΠΠ° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ - ΠΎΡΠ²Π΅Ρ ChatGPT ΠΊΠ°ΠΊ ΡΠ°Π· Ρ fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ·Π΄Π°Π½Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ PDF-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ (ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ - ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΊΠΎΡΠΌΠ»Π΅Π½Π½ΡΠ΅ Π΄ΠΎΠΊΠΈ Π±ΡΠ»ΠΈ Π½Π° Π½ΡΠΌ) - Π²Π·ΡΡΠΎ ΠΎΡΡΡΠ΄Π°, ΡΡΠΎΠ±Ρ Ρ ΠΌΠΎΠ³ Π²Π΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ²Π΅Ρ.
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ , Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠΎΠΈΡΠ° fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ. ΠΡΠ»ΠΈ ΡΡΠΎ print ready PDF - Π±ΡΠ΄Π΅Ρ Ρ Π΅ΡΠ½Ρ. ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎ - plain text ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π±Π΅Π· Π²ΡΡΠΊΠΎΠΉ Π»ΠΈΡΠ½Π΅ΠΉ Ρ ΡΠ΅Π½ΠΈ (ΡΠ΅Π³ΠΎΠ², ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ...).
ΠΠΎΠΊΠ° Π½Π΅ΡΡΠ½ΠΎ ΠΊΠ°ΠΊ Π±ΡΡΡ Ρ ΠΌΡΠ»ΡΡΠΈΡΠ·ΡΡΠ½ΠΎΡΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΠΊΠ°ΡΠΌΠ»ΠΈΠ²Π°Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ - ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ΅ΠΉΡΡ. #chatgpt
Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΡΡΠΏΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π΅ΡΡΡ ΡΠ²ΠΎΠΈ knowledge base, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ ΡΠΎΡΡΠ° ΠΈ Ρ.Π΄. ΠΠ΅ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΠ»ΠΈΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΌΠ΅ΡΠΆΠ΅Π½Π° Π΄Π»Ρ API-ΡΠΎΠΊΠ΅Π½Π° Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΡΡ ChatGPT ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° completion ΡΠ΅ΡΠ΅Π· API ΡΠΆΠ΅ Ρ ΡΡΡΡΠΎΠΌ ΡΠ΅Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠΎΡΠΌΠΈΠ»ΠΈ Π² fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ.
ΠΠ° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ - ΠΎΡΠ²Π΅Ρ ChatGPT ΠΊΠ°ΠΊ ΡΠ°Π· Ρ fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ·Π΄Π°Π½Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ PDF-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ (ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ - ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΊΠΎΡΠΌΠ»Π΅Π½Π½ΡΠ΅ Π΄ΠΎΠΊΠΈ Π±ΡΠ»ΠΈ Π½Π° Π½ΡΠΌ) - Π²Π·ΡΡΠΎ ΠΎΡΡΡΠ΄Π°, ΡΡΠΎΠ±Ρ Ρ ΠΌΠΎΠ³ Π²Π΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ²Π΅Ρ.
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ , Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠΎΠΈΡΠ° fine tuned ΠΌΠΎΠ΄Π΅Π»Ρ. ΠΡΠ»ΠΈ ΡΡΠΎ print ready PDF - Π±ΡΠ΄Π΅Ρ Ρ Π΅ΡΠ½Ρ. ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎ - plain text ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π±Π΅Π· Π²ΡΡΠΊΠΎΠΉ Π»ΠΈΡΠ½Π΅ΠΉ Ρ ΡΠ΅Π½ΠΈ (ΡΠ΅Π³ΠΎΠ², ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ...).
ΠΠΎΠΊΠ° Π½Π΅ΡΡΠ½ΠΎ ΠΊΠ°ΠΊ Π±ΡΡΡ Ρ ΠΌΡΠ»ΡΡΠΈΡΠ·ΡΡΠ½ΠΎΡΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΠΊΠ°ΡΠΌΠ»ΠΈΠ²Π°Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ - ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ΅ΠΉΡΡ. #chatgpt
π1
ΠΡΡ ΠΎΠ΄ΠΈΠ½ Π²ΡΡΠ°ΡΠΎ-ΡΠ΅ΡΡ - ΡΡΠΈΡΠ°Π΅ΠΌ 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 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° - Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ
ΠΡΠ»ΠΈ Π±Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π±ΡΠ»Π° Π½Π°Π΄ float - ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π² 256 Π±ΠΈΡ ΡΠ»ΠΎΠΆΠΈΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎ 8 float'ΠΎΠ²: 256 Π±ΠΈΡ / 4 Π±Π°ΠΉΡΠ° (32 Π±ΠΈΡΠ°) float
#csharp #avx
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΡΠ½ΡΠΌ 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
https://github.com/mizrael/Blazorex - Π²ΡΠ°ΠΏΠΏΠ΅Ρ Π΄Π»Ρ HTML Canvas Π΄Π»Ρ Blazor ΡΡΠΎΠ±Ρ ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ Π±Π»ΡΠΊΠ΄ΠΆΠ΅ΠΊ ΠΈ ΠΊΡΡΡΠΈΠ·Π°Π½ΠΎΠΊ Π½Π° ΠΊΠ°Π½Π²Π°ΡΠ΅ ΠΈΠ· C# ΠΊΠΎΠ΄Π° #blazor #dotnet
GitHub
GitHub - mizrael/Blazorex: Blazorex is an HTML Canvas wrapper library for Blazor.
Blazorex is an HTML Canvas wrapper library for Blazor. - mizrael/Blazorex
π₯1
ΠΡΡ ΠΎΠ΄Π½Π° ΠΏΡΠΎΡΡΠ°Ρ ΡΡΠ°ΡΡΡ ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ #chatgpt - ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΠΉ Π±Π°ΠΊΠ΅Π½Π΄, Π·Π°ΡΠ΅Π³Π°ΡΡ ΠΈ ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΡΠ΄Π°Π²Π°Ρ Π½ΡΠΆΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ #dotnet
Timheuer
Writing an OpenAI plugin for ChatGPT using ASP.NET Core
Unleash the power of your APIs into ChatGPT using ASP.NET Core and Visual Studio to quickly expose and develop an OpenAI ChatGPT plugin. You won't believe how easy it is!
Π₯ΠΎΡΠΎΡΠΈΠΉ Π΄ΠΎΠΊ ΠΏΠΎ Π³Π°ΠΉΠ΄Π»Π°ΠΉΠ½Π°ΠΌ ΠΎΡ Microsoft, Π΅ΡΠ»ΠΈ ΡΡ ΡΠΆ Π½Π°ΠΊΠΎΠ½Π΅Ρ Π²Π·ΡΠ»ΡΡ Π·Π° Π²Π΅ΠΊΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ΄Π°. ΠΠ΅ΠΊΡΠΎΡΠΈΠ·Π°ΡΠΈΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°ΡΡ ΠΈ Ρ.Π΄.
#dotnet #github #sse
#dotnet #github #sse