Проведение профилирования имевшегося кода показало, что основное время при вычислениях тратится на вызов функций use_reduce и catpkgsplit с повторяющимся набором аргументов (например, функция catpkgsplit вызывалась от 1 до 5 млн раз). Для ускорения было применено кэширование результата работы данных функций с использованием словарей. Оптимальным для хранения кэша была встроенная функция lru_cache, но она была доступна только в выпусках Python, начиная с 3.2. Для совместимости с более ранними версиями была добавлена заглушка, подменяющая lru_cache, но решение о прекращении поддержки Python 2.7 в Portage 3.0 сильно упростило задачу и позволило обойтись без данной прослойки.