Blog

2011.10.20

モダン並列・並行プログラミング ~ Concurrent Revisions による実装と現実 ~

preferred

本日社内向けのTechTalkにて、並列・並行プログラミングに関する話を行いました。

昨今、プログラムの並列化はなくてはならないものとなっています。しかし、そのプログラミング環境は依然としてロックを用いたものが主流です。今回の発表の主張を端的に申し上げますと、

“Locks must go!”

ということになります。並列プログラミングに銀の弾丸はありません。しかし、ロックは別の何らかの安全性を確保したプログラミングモデルで置き換えられなければいけません。そうでなければ、再現しにくいバグに苦しめられ、終電を逃す日々と決別することはできないでしょう。また、ロックによるプログラミングの抱える本質的問題にも言及しています。

この界隈の最新の動向として、去年OOPSLA’10にて発表されたConcurrent Revisionsについての解説も行なっております。また、弊社研究開発において、先日Concurrent RevisionsのC++実装を作成しました。実際に簡単な例が動作しておりますので、興味のある方は是非お試しください。フィードバックなどいただけると大変嬉しいです。

https://github.com/tanakh/concurrent_revisions

  • Twitter
  • Facebook