От 798 до 16 нс: как оптимизация debounce привела меня в Swift Runtime

Все началось с простой идеи: перестать создавать новую Task для каждого значения. Уже это сократило среднее время вызова с 798 до 216 нс.

Но мне стало интересно, куда уходят оставшиеся наносекунды. Так оптимизация debounce превратилась в исследование Swift Runtime, работы компилятора и влияния расположения блокировки в памяти.

В статье расскажу, какие предположения подтвердились, что меня удивило и как в итоге удалось дойти до 16 нс на вызов.

Читать далее

Щелкните ниже, чтобы поставить оценку!
Всего: 0 В среднем: 0

Написать комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *