Я хочу параллельно сопоставить скромно-дорогую функцию с большой ленивой последовательностью. pmap отлично, но я много теряю из-за переключения контекста. Я думаю, мне нужно увеличить размер куска работы, который передается каждому потоку.
Я написал функцию, разбивающую последовательность на фрагменты и отображающую функцию на каждый фрагмент и рекомбинирующую их. это «работает», но результаты не были впечатляющими. Исходный код выглядит примерно так:
(pmap eval-polynomial (range x) coificients)
Как я могу действительно сжать это, оставляя его ленивым?