Теоретически вы должны увидеть увеличение производительности, по крайней мере до тех пор, пока количество потоков не станет равным количеству используемых ядер. Однако в действительности вы будете добавлять код (и, следовательно, время выполнения) для обработки многопоточной инфраструктуры, и если большая часть времени каждого потока будет потрачена на ожидание медленного ГСЧ, вы можете увидеть снижение производительности.
С другой стороны, вы сможете улучшить производительность с некоторым умом. Например, у вас может быть одна задача, предназначенная для генерации случайных чисел, и если вы ищете только значения от 1 до 6, вы можете сгенерировать более одного значения из каждого результата из RNG. Вы можете поместить эти значения в очередь и позволить другим задачам читать из очереди. Конечно, вы должны быть осторожны, чтобы ваши оптимизации не изменили распределение ГСЧ.
Если идея подсчета циклов выполнения не возбуждает вас, лучший способ найти ваш ответ - попробовать его. И всегда полезно использовать профилировщик, чтобы выяснить, на что тратится большая часть времени - людям, как известно, трудно разобраться с помощью одной интуиции, и даже опытные разработчики часто удивляются результатам.