タグ

parallelに関するnagachikaのブックマーク (5)

  • Cross-layer scheduling in cloud systems | the morning paper

    the morning paper a random walk through Computer Science research, by Adrian Colyer Made delightfully fast by strattic Cross-layer scheduling in cloud systems – Alkaff et al. 2015 This paper was presented last month at the 2015 International Conference on Cloud Engineering, and explores what happens when you coordinate application scheduling with network route allocation via SDN (hence: cross-laye

    Cross-layer scheduling in cloud systems | the morning paper
  • 書き込み時に reader lock を取るテクニック - 兼雑記

    昔、データを書く時に reader lock を取って、読み時に writer lock を取るワザがある、っていうのを聞いたのを覚えていて、詳細を忘れてたんですが、最近思い出す機会があったので書いておきます。 thread local storage を使って各スレッドにあるキャッシュなんかだと、当然読み書きする時にロックはいらないわけです。ただ、例えばダッシュボードの URL にアクセスされた時にキャッシュの使ってるメモリの総量が知りたいなど、 worker たちを管理しているスレッドが、各スレッドのキャッシュの状態全てにアクセスしたい、なんてことがあったりします。 こういう時に、普通に lock を取ってしまうと、 thread local storage を使って lock しなくて良いようにしてあるメリットが失われてしまう、と、そういう時に使うワザっぽいです。 具体的には、各 w

    書き込み時に reader lock を取るテクニック - 兼雑記
  • MoreLindaのrinda_eval - @m_seki の

    Lindaのeval操作 Lindaでタプルを生成する操作にはoutとevalの二つがあります。out操作はRinda::TupleSpaceのwriteに対応します。 0から9までの二乗根のタプルの生成は次のようにします。 /* C-Linda */ for (i = 0; i < 10; i++) out("sqrt", i, sqrt(i));/* Rinda */ 10.times do |n| ts.write([:sqrt, n, Math.sqrt(n)]) end eval操作はout操作にそっくりに見えますが、プロセスが生成される点が違います。なんと新しいプロセス側で引数の評価を行い、その結果からタプルを生成します。次の疑似コードは10個のプロセスを生成して、それぞれが一つのタプルを生成するものです。sqrtは生成されたプロセスで計算されます。 /* C-Linda */

    MoreLindaのrinda_eval - @m_seki の
  • deadbeaf.org

    This domain may be for sale!

    nagachika
    nagachika 2010/09/07
    「軽い話題 (いつから来た、どこから来た) から入って、専門分野の話 (何やってるの、何がいちばん難しい問題なの?) にもって行く、というパターン」貴重なプラクティス。憶えておこう。
  • Grand Central Dispatchでお手軽並列処理 - Radium Software

    Grand Central DispatchはMac OS X 10.6およびiOS 4に追加された新技術だ。 このGrand Central Dispatch(以下"GCD")は、プログラマー以外にその効用を説明することが難しい技術だ。漠然と「マルチコアプロセッサを効率的に使うための技術」と言っておくこともできるが、それじゃあなんでiOS 4に搭載されてんの?という話になってしまう。 これをプログラマー向けに説明するならば、次のような感じになるかと思う。 GCCを拡張してクロージャ的な機能を追加してみたら、非同期処理とか並列処理とかすげー書きやすくなったんで、ちょっとその辺りまとめてみました。 僕の個人的な意見としては、単にAppleのコンパイラー技術者たちがC言語ファミリー(C/C++/Obj-C)にクロージャを追加したかっただけなんじゃないかな、と考えている。 とりあえずマンデルブロ

    Grand Central Dispatchでお手軽並列処理 - Radium Software
  • 1