С помощью добавления индексов и переписывания самых критичных кусков кода (некоторые исполняются по 16 млн раз за одну целевую функцию) мне удалось добиться прироста скорости в некоторых местах в 200-600 раз, а в среднем по программе *в шесть раз*. Теперь одна особь высчитывается максимум за 15 секунд, а вкупе с распараллеливанием по ядрам я получил по 2.5 секунды на особь. По сравнению с изначальными 90 секундами разница в 36 раз.
Я считаю это огромным достижением и сейчас моя великолепная геноферма считает то, для чего предназначалась — функцию подсчёта рекомендаций.
Отдельное спасибо хочу сказать @breif .
Дата: 01 ноября 2013, 8:04