a_jelly: (Default)
Прочел вот тут про программистский флэшмоб начавшийся с этой записи. Накатал свою реализацию.

Основные идеи были:
1. Дать возможность варьировать размер подзадач для worker-ов.
2. Нигде не завязываться на число ядер CPU и число диапазонов (и даже стараться не упоминать о них в коде), нигде не мапить одно на другое.

Результаты в общем-то предсказуемы. Хотя обе идеи были реализованы, производительность слишком сильно зависит от размера подзадачи.

Скажем, если вычислительный квант составляет 1 мс - это еще туда-сюда. Если <100 мкс - уже гораздо хуже. Если же гранулярность повысить до 1 вычисления md5 на задачу, то результата можно вообще никогда не дождаться.

Выводов отсюда я сделал два:
1. Иногда постановка подзадачи на счет должна быть блокирующей (юзеру полезно дать такую возможность)

2. Логику переключения контекстов есть куда вылизывать

December 2025

S M T W T F S
 123456
78910111213
14151617181920
21 222324252627
282930 31   

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 3rd, 2026 02:50 am
Powered by Dreamwidth Studios