Pull to refresh
42
0
Алексей @alordash

Студент МежГалактическогоТехническогоУниверситета

Send message

Используем клиентский процессор по максимуму. Часть 2: SIMD + мультипоточность

Reading time25 min
Views9.5K

Снова поговорим об ускорении работы клиентской стороны веб-приложения и о том, как для этого задействовать все вычислительные ресурсы процессора.

В предыдущей части мы нарисовали фрактал Ньютона с помощью WebAssembly на Rust. В этой части мы задействуем SIMD команды и параллельные вычисления, чтобы добиться ещё большей производительности.

Вживую увидеть прирост скорости можно на онлайн-демо. На моём компьютере она составляет ~900% по сравнению с обычной реализацией на wasm.
Читать дальше →
Total votes 70: ↑70 and ↓0+70
Comments11

Используем клиентский процессор по максимуму. Часть 1: Rust + WebAssembly

Reading time19 min
Views11K

На Хабре существует немало статей, посвящённых повышению производительности программ за счёт параллельных вычислений и использования векторных команд. Я решил дополнить этот список и рассказать о том, как можно оптимально задействовать все ресурсы процессора клиентской стороны веб-приложения.

В этой части мы поговорим о том, как, используя Rust в связке с WebAssembly, можно ускорить тяжёлые вычисления на примере программы для рендеринга фрактала Ньютона. В следующей части будет подробно рассказано о векторных командах и мультипоточных вычислениях в браузере.

Прирост производительности при использовании всех техник оптимизации по сравнению с реализацией на чистом JS может составлять ~1000%: от 8–9 до 100–110 фпс. Это можно проверить на интерактивном онлайн-демо, позволяющем также поиграться с числом потоков, способом вычислений и формой фрактала.
Читать дальше →
Total votes 64: ↑64 and ↓0+64
Comments9

Ускоряем pow

Reading time7 min
Views27K

В этой статье я хочу поделиться несколькими нестандартными алгоритмами для быстрого возведения числа в степень, а также продемонстрировать их реализацию и сравнить их быстродействие в C++, C# и Java.

Сравнить точность алгоритмов можно прямо сейчас на этой странице.

В конце будет краткая памятка по тому, где и когда лучше применять какой из методов. При правильном выборе можно добиться увеличения скорости вычислений в 5 раз при погрешности ~1%, а иногда и вовсе без неё.

Ускорь мои степени!
Total votes 52: ↑52 and ↓0+52
Comments40

«ОПЭДИ»: мой первый опыт создания IoT устройства

Reading time9 min
Views10K

Доброго времени суток, Хабр. Думаю многие люди задумывались о том, какое, к примеру, потребление электричества или уровень углекислого газа у них дома.



Проект умного календаря «ОПЭДИ» создан именно для того, чтобы моментально и понятно передавать телеметрию дома в реальном времени.


В этой статье я расскажу о функционале этого девайса и о том как он делался.

Total votes 21: ↑19 and ↓2+25
Comments22

Бот «Умный планировщик»: понимает с полуслова

Reading time5 min
Views30K
Если вы когда-нибудь желали иметь личного слугу, который бы напоминал вам обо всем, о чем вы ему скажете, но не имели возможности нанять такого, то разработанный мною бот станет ему достойной заменой.



Хотите проверить функционал? Напишите в лс боту по этой ссылке и он ответит вам.

А тем, кому интересно как он работает и как 16-летний школьник смог написать его, я с удовольствием расскажу всё в подробностях в этой статье.
Читать дальше →
Total votes 29: ↑27 and ↓2+34
Comments41

Information

Rating
Does not participate
Works in
Registered
Activity

Specialization

Backend Developer, ‏‏‎ ‎
Junior