Когда вы покупаете авиабилет, первый вопрос не «куда вы хотите пойти?» - это "куда ты идешь от ?" Другими словами, без очень, очень, гораздо больше деталей, мы просто догадываемся.
Самый верный ответ на вопрос "Как я могу ускорить его?" в любом случае это:
Измерьте это, найдите фактические узкие места , удалите узкие места, повторяйте, пока оно не станет достаточно хорошо.
Без профилирования вы могли бы тратить бесконечные часы на оптимизацию некоторой части кода, которая не оказывает существенного влияния на производительность (обратите внимание на акцент на «фактических узких местах» - многие программисты веками были потрачены на оптимизацию того, что кто-то представлял может быть узким местом).
Пример: ускорение метода на 1000% не имеет смысла, если это метод, который вызывается один раз в начале вашей программы, и программа тратит 90% своего времени на ожидание дискового ввода-вывода. Другой пример: создание дискового массива для устранения узких мест ввода-вывода, когда программа тратит 90% времени на ожидание сервера SQL, который выполняет сложный неиндексированный запрос. Это не единственные проблемы, с которыми вы можете столкнуться, и они даже не являются взаимоисключающими - но вам нужно знать, какие у вас проблемы, прежде чем приступить к решению одного . «Это медленно» - это не описание проблемы, это просто симптом (точно так же, как «головная боль» может быть симптомом 9000 различных заболеваний).
TL; DR: Серебряной пули нет .