タグ

並列処理に関するpoohtarouのブックマーク (2)

  • マルチコア時代に備えて本気でメモリモデルを理解しておこう - リオーダー & finalフィールド 編 - - かとじゅんの技術日誌

    長い文章になってしまったので、概要だけ先に書きます。 以下のJavaプログラムは、常に上から下に順番に命令が実行されると思いますか?つまり、aに1が格納された後に、bに2が格納されると思いますか? 実は場合によってはこの実行順序が入れ替わる場合があります。これはJavaの言語仕様として定義されていることです。これを考慮しないと信頼性のある並行処理は実装できません。 気になる人は以下を読んでみてください。 a = 1; b = 2; すでにインターネットは社会インフラ化しています。ソーシャルネットワークで多くの人とコミュケーションやコラボレーションできる時代で、個人が情報を作り消費することは当たり前になってきています。そして、インターネット上のコンテンツは増加の一途を辿っています。「情報爆発」なんて言葉も耳慣れた言葉になりましたが、その問題解決のためにMapReduceなどの分散処理技術に注

    マルチコア時代に備えて本気でメモリモデルを理解しておこう - リオーダー & finalフィールド 編 - - かとじゅんの技術日誌
  • 第101回カーネル読書会 - Blog by Sadayuki Furuhashi

    先日楽天タワーで開催された第101回カーネル読書会で、分散KVS kumofs の設計と実装に関して発表しました。 少々準備不足で十分な発表ができたか不安ではありますが、懇親会で大いに議論が盛り上がったのは良かったです。 そんなわけで、発表資料を公開しました。 kumofsの実装(PDF) クリックで進むムービー版 Keynoteファイル デモ用コード デモ用のコードをいくつか用意していたので、ここに掲載します。 エラー処理などなどはテキトーですが、とりあえず動きます。 MessagePackシリアライズ(C++) kumofsで利用しているシリアライズライブラリMessagePackを使って、オブジェクトをシリアライズするコードです。 シリアライズした結果は標準出力(ファイルディスクリプタ1番)に書き出します。 #include <msgpack.hpp> #include <unist

    第101回カーネル読書会 - Blog by Sadayuki Furuhashi
  • 1