amarao_san

Categories:

оптимизации

Чем больше я оптимизирую (кеш предыдущих сканирований, etc), тем медленнее оно становится.

Ну почему херакнуть полярда floating points operations быстрее, чем тонко и оптимально засрать кеши процессора промахами по множеству дополнительных структур?

Т.е. я серьёзно. «Охота» за корнями дала 19 итераций и 308384 пикселов с переменной глубиной 22/41 за 680 секунд,

в то же самое время тупой грайнд с глубиной 29 занял всего  70 секунд, и нашёл 307605 корней.

Я не уверен, что это одни и те же корни (breadth vs depth), но разница по времени...

С другой стороны, тот 680 секундный поиск дал довольно тщательный график. Я не уверен, что точный (моя интуиция говорит, что в центре пустого быть не должно), но хотя бы без оборванностей:

root hunt, up to 22/41
root hunt, up to 22/41
plain 29 grind
plain 29 grind

Но это ладно. Из спортивного интереса я решил фигакнуть брутфорс на 41, чтобы понять насколько это медленно. 140 секунд, 308224 корней (на 550 штук меньше, т.к. некоторые значения промежуточного размера ловили самые мерзкие корни). Увы, брутфорс на пиковом разрешении «охотника» лучше, чем сам «охотник» с переменным разрешением.

Причём с алгоритмом всё печально: если делать небольшую область соседей при небольшой глубине, то теряем след, если делаем сильно большое увеличение разрешения, то много считаем. Если делаем большую область и много считаем — так проще сразу же брутфорсить.

При этом uprender (рендер с решёткой 2х2, а потом перерендер пустых пикселей с решёткой 41х41) таки не работает. Было 140с, стало 139. Символичное улучшение. На практике это означает, что апрденеду быть, т.к. я планирую большую интерактивность. Показали график (за 0.4с), хочется больше — нажал enter, ждёшь.

(Что любопытно, вся эта красота в памяти 11Мб ест, и то, потому что я решил, что чб цвет кодируется u32).

... поменял на u8, пока не показывает на экране — 4.7Мб. КАк только показывает, растёт, т.к. либа требует буффер в u32.

А вот смена u32 на u8 ускоряет всё с 139 до 137 секунд...


Error

default userpic

Your IP address will be recorded 

When you submit the form an invisible reCAPTCHA check will be performed.
You must follow the Privacy Policy and Google Terms of use.