Ну эта работа грузит именно проц и заводить там горутин больше чем чем количество ядер смысла нет, так как там нет ожидающих операций. Там по идее надо было запустить горутины по количеству ядер и чтобы они выбирали данные из потокобезопасного хранилища.
изначально вопрос был что go func() {} это silver bullet, поэтому все и понеслось