並列化処理・分散処理を勉強した感想
auです。
並列化と分散処理を勉強しました。
やってみた感想をつらつらと書いていこうと思います。
勉強したのは、OpenMP、OpenACC、MPI、Hadoop、Sparkでした。
なんというかイメージがしにくいことと、コードで書いても実感があまり湧かないことが辛かったです。
timeモジュールを使って計測をして、実際に短くなっていても、体感だとめちゃめちゃ一瞬の処理だったので、これはすげえ!という感覚はあまりなかったです。
OpenMPを使って、共有メモリから並列処理をするということをしたりしたのですが、これもまたディレクティブコードを追加するのと、コンパイルにオプションをつけるだけで実現できました。インターフェースしかないからこそ、中での処理が複雑に見えたりと、pthreadを使った処理の方が明示的に書いている分、OpenMPの方がある意味難しいと思いました。
でも、ディレクティブコードを追加するだけで処理が早くなるのであれば、データベースなどを触る際にやってみたいことではあるので、実践を通して学んでいこうと思います。