optimization
-
Хабрахабр
Сказка про Branch prediction
В предыдущих сериях Микрооптимизации: Сказка про Method as Parameter #dotnet #methods #gc Инструменты анализа эффективности работы приложения. PerfView #performance_analysis #trace #perfview Пародия на замыкания #dotnet #methods #gc yield return #dotnet #il-code Про тредпул: ThreadPool. Intro #dotnet #threadpool ThreadPool. async/await #dotnet #threadpool #il_code Про низкоуровневое: Reciprocal throughput #microoptimization #low-level Разное: Сказка про Guid. NewGuid() #os_specific #dotnet #microoptimization Конвейер трудится изо всех сил, чтобы повысить производительность твоей программы. А злобные…
Читать далее » -
Хабрахабр
Reciprocal throughput
В предыдущих сериях Современные процессоры очень круты. Они таят в себе великое множество секретов и невероятных возможностей. И просто восхитительно, что некоторые из способностей процессоров легко продемонстрировать даже из такого высокоуровневого языка, как C#, буквально за десять строчек кода! Художественное отступление, шутка на текущую тему. Для того, чтобы узнать самое интересное, читать текст под катом совершенно не обязательно. Представьте себе…
Читать далее » -
Хабрахабр
Детокс для i18n
NPM библиотека для интернационализации и локализации i18n очень популярна, однако за последние годы она сильно располнела. В ней много возможностей для локализации дат, чисел, установки нужных склонений, поддержки RTL языков, загрузки локалей с сервера и кучи еще чего. На сайте i18next она называется уже даже "интернационализационным фреймворком". в тему Новый авиалайнер. Входит стюардесса в пассажирский салон: — Вы находитесь на…
Читать далее » -
Хабрахабр
Webpack. Создание WebP вместе с Jpeg и Png
Как вы знаете, формат изображений WebP в большинстве случаев имеет меньший вес, по сравнению со своими братьями: png и jpeg. Поэтому использовать его в своих приложениях - это хорошая практика. А как же пользователи, устройства которых не поддерживают данный формат? В этом случае нам помогает тег <picture> или значение image-set свойства background-image. Просто пишем такие магические конструкции и браузер сам…
Читать далее » -
Хабрахабр
Сказка про Method as Parameter
Привет. Меня зовут Саша Денисов, я инженер в Контуре. Я веду блог во внутренних ресурсах компании и хочу поделиться им с вами. Это серия преимущественно развлекательных статей на инженерные темы, которые не претендуют на научность и полноту знаний в них. Каждая следующая статья зарождается в моменте, когда при решении очередной рабочей задачи в Контуре я (или мои близкие коллеги) сталкиваюсь с…
Читать далее » -
Хабрахабр
Проблема построения оптимального плана выполнения запроса при использовании коллекций. Применение Extensible Optimizer
Привет! Я работаю в компании Bercut, мы более 20 лет занимается разработкой и поддержкой ПО для операторов сотовой и фиксированной связи. Прошел путь от инженера в отделе сопровождения до менеджера продукта. В последние годы работаю ведущим специалистом в отделе администрирования (Senior DBA) и решаю проблемы производительности высоконагруженных биллинговых баз данных, обслуживающих от сотен тысяч до десятков миллионов абонентов. Сегодня я хочу рассказать про проблему построения оптимального плана выполнения запроса при использовании коллекций в качестве…
Читать далее » -
Хабрахабр
Cache pollution? Запасайтесь тестами
Всем ведь приходилось заниматься улучшением производительности? Для игр особенно актуально, ну может какая-то три-в-ряд не страдает этим. Как обычно серебряной пули нет, начинаем со структур данных, алгоритмов, спускаемся ниже, а если не помогает, придумываем SoA, AoS шаблоны. Если проблема не решается, подтягиваем профайлеры и предметно разбираем узкие места, но все чтобы мы не делали зачастую таким узким местом всегда будет…
Читать далее » -
Хабрахабр
Flutter Flame: ускоряем в 32 раза работу со столкновениями
Как я уже писал ранее, на FPS в Flame в основном влияют операции, производимые на CPU. Если в вашей игре достаточно много взаимодействующих объектов, то одной из самых дорогих операций будет определение столкновений. Настолько дорогой, что на экране performance-метрики она закроет собой любые другие неоптимизированные участки. Сами авторы Flame отлично осознают, что их алгоритм – не идеальный, а просто «дающий…
Читать далее » -
Хабрахабр
Использование slots | Python
Для начала небольшой дисклеймер. Эта статья вдохновлена моим обучением. Когда я только начинал свой Python-way, на одном из форумов увидел новое для себя понятие - слоты. Но сколько я не искал, в сети было крайне мало статей на эту тему, поэтому понять и осознать слоты было достаточно сложно. Данная статья призвана помочь начинающим в этой теме, но даже опытные разработчики,…
Читать далее » -
Хабрахабр
[Перевод] Создаем слайдер с изображением и текстом на React.js с нуля и оптимизируем
В этой статье я хочу затронуть задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Image Slider. За последние 5 месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других. (Больше информации можно прочитать в моем Telegram-канале) Вы должны реализовать этот виджет за ~45–50 минут и рассказать об оптимизации. Эту…
Читать далее »