Сначала вы должны измерить, где ваше приложение тратит все свое время.Это приводит к примерно 4 или 5 созданиям потоков в секунду, что довольно много, но, вероятно, не там, где вы проводите все свое время.
Тем не менее, если вы всегда ограничиваете себя N потоками, где N - количество процессоров, вам, вероятно, следует просто создать N потоков заранее и запланировать работу для выполнения в каждом потоке, используя некоторыеалгоритм, который имеет смысл в расчете, который вы делаете.