TGViewer
Channel Public Channel
📓 Записки программера

📓 Записки программера

@notes_of_programmer

Канал с регулярными постами о разных интересных материалах (статьи, видео, фреймворки и полезные инструменты).
Subscribers
1.1K
Photos
344
Videos
2
Links
656

Showing posts older than #252 · Back to latest

Older Posts 20 shown
Post #251 342
Не для собственной имплементации (потому что это помоему уже везде реализовано), но просто для понимания как можно использовать SIMD (недлинная статья с примерами на сишечке). #simd #sse
Post #249 351
Удобный (вроде бы) сервис JSONHERO для ковыряния JSON-ов в онлайне.

Я, правда, обычно использую https://jsonviewer.stack.hu
  • 👍 2
Post #246 1.16K
Кто-то где-то спрашивал, где бесплатно захостить приложение, вот вспомнилось
https://fly.io/docs/about/pricing

#hosting
  • 🔥 2
Post #239 382
Чятики принесли отличную книгу на 114 страниц в PDF "What every programmer should know about memory".

Там действительно все что надо бы знать про low level память и кэш.
Post #238 336

Forwarded from devdigest // dot net

⚠️ Moq получает ваш адрес электронной почты!

Moq, начиная с версии 4.20, включает в себя анализатор .NET, который сканирует вашу локальную конфигурацию git при сборке, получает ваш адрес электронной почты и отправляет его в какую-либо службу, размещенную в Azure, чтобы проверить, действительно ли вы спонсор.

🔗 https://devdigest.today/goto/2260

👉🏻 Наш канал | 💬 Наш чат
Reddit From the dotnet community on Reddit: Does Moq in it's latest version extract and send my email to the cloud via SponsorLink? Explore this post and more from the dotnet community
Post #236 424
Маленькие хитрости #docker - как подождать пока postgres (или любой другой сервис) придёт в норму после старта. У Postgres к примеру это занимает несколько секунд на холодный старт (=инициализация контейнера с созданием БД)
Post #235 324
Йее 100 подписчиков :)
  • 🔥 8
  • 👍 3
  • 🤯 1
Post #234 382
Имел неосторожност опубликовать в mastodon вопрос про SIMD - там где Vector128 был медленее Vector256, на что пришёл Alexandre Mutel (Director C#/.NET Tech Group at Unity) и потыкал меня носом в разные места этого кода. После чего он родил статью "10x Performance with SIMD Vectorized Code in C#/.NET"

#dotnet #simd #sse
  • 👍 7
Post #233 402
Очень простой пример реализации паттерна Mediator :)
Не идеальный с точки зрения красоты кода (особенно в районе метода AddMediator), но функциональный и понятный.

#dotnet
Steven-Giesel Create your own Mediator (like Mediatr) In this blog post, I'll show you the fundamentals of the Mediator pattern and how to implement it in your application from scratch. And yes, we basically implement the famous MediatR library.
  • 🔥 2
Post #229 388
Продолжаем ковырять SSE/AVX, но тут кажется мне не помешала бы пояснительная бригада. Для поиска элемента в int[] используется Sse2.CompareEqual, которая может сравнивать 4 (Vector128) или 8 (Vector256) элементов.

До 2048 (8 КБ данных) всё работает более менее - х1.5-2 для Vector128 и ещё больше для Vector256. Однако дальше Vector128 проседает по скорости до обычного цикла на 2048 элементов (8 КБ данных) и становится медленее, чем простой цикл для 4096+ (32 КБ данных) элементов.

Vector256 проседает попозже - начиная с 5120 (20 КБ данных) элементов он сравнивается со скоростью простого цикла.

Vector128 становится медленее всех, начиная с 3072 (12 КБ данных) элементов

Пока что у меня два объяснения:
🔸 влияние L2 кэша, он насыщается и за счёт того, что данные берутся из RAM скорость резко падает
🔸 процессор уходит в throttling, однако неясно почему Vector128 становица хуже чем простой цикл (хотя возможно JIT делает loop unroll и за счёт этого получается обычный цикл быстрее)

Второй вариант я попробовал исключить, переключив режим проца в Turbo (специальной утилитой Asus), скорости чуть-чуть подросли (буквально на 4-5%), но тренды не поменялись.

С ushort ситуация выглядит другим образом - самым быстрым практически везде является Vector128<ushort> 😳 однако разрыв по скорости в разы - только <=2048 элементов (4 КБ данных), дальше разрыв крайне незначительный.

gist_int gist_ushort #sse #simd #dotnet
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →