У меня есть операция map
(которая фактически выполняется параллельно с использованием parMap
from Control.Parallel.Strategies
), которая занимает довольно много времени. Учитывая, что я знаю, сколько раз функция применяется (n
в этом контексте), как я могу время от времени отображать, сколько из приложений n
было оценено?
Очевидным решением было бы сделать отображение a mapM
с некоторым putStr
внутри функции сопоставления, но это:
- возьмите ненужный объем эффективности.
- не проверять статус каждый раз в то время, а в каждом приложении
- в основном удалить все хорошие вещи об детерминированном алгоритме в контексте parallelism
Итак, есть ли способ отслеживать эту информацию, которую мне не хватает, что позволяет избежать этих проблем?