これまで並行処理のためのデータ型として,第12回ではTVar型やMVar型,第14回ではChan型やTChan型などを取り上げてきました。一方,並列処理のためのデータ型はあまり説明してきませんでした。取り上げたのは,第10回や第24回のコラムで説明したデータ並列Haskellの並列配列くらいです。 たしかに,並列HaskellやParモナドを利用すれば,並列処理のための特別なデータ型を使わなくても並列処理は可能です。しかし,目的とする処理の並列化に特化したデータ型が用意されているのであれば,それを利用したほうが簡単かつ効率的に処理を行えます。 そこで今回は,並列処理用のデータ型の一つとして提供されている「repa(REgular PArallel arrays)」の並列配列の基本を説明します。repaはデータ並列Haskellプロジェクトの一環として開発が進められているライブラリです。デー
![第53回 repaを使って行列演算を並列化する](https://cdn-ak-scissors.b.st-hatena.com/image/square/bed39b5962a5d552c95b6d796db8f55e72d32943/height=288;version=1;width=512/https%3A%2F%2Fxtech.nikkei.com%2Fimages%2Fn%2Fxtech%2F2020%2Fogp_nikkeixtech_hexagon.jpg%3F20220512)