使用平行運算計算多段文字中字母出現的頻率。
平行運算的重點,在於把那些也能循序完成的工作改成同時進行。 常見的例子就是計算字母出現的頻率。 請運用平行運算,計算由多段文字組成的陣列中,每個字母的總出現頻率。
你的程式碼應該包含一個 frequency :: Int -> [Text] -> Map Char Int 函式,這個函式接受要平行使用的 worker 數量,以及一個文本陣列,並回傳文本中每個字母的總出現次數。
執行基準測試,看看改變 worker 數量會如何影響你解法的效能。用 stack bench 就能執行。歡迎自行修改 bench/Benchmark.hs,試試你的解法在不同輸入下的效能表現。