タグ付けされた質問 「concurrency」

並行性は、同時に動作するシステムの研究です。たとえば、エレベーターのセットと、さまざまなフロアに行きたい人のプールがあります。並行システムの例は、エレベータがどこに行くか、そして人々のプールの人をどこに降ろすかを伝える管理システムです。




1
分散システムに標準的な問題のリストはありますか?
先週、私は再び彼が約与えた会議のレスリーさんランポートの1982 trasncript読んでいた解決される問題、未解決の問題と並行性で非問題。この論文は簡単に読むことができますが、私に考えさせられたものの1つは次の主張です: 問題は相互排除の問題、生産者と消費者の問題、またはその両方の組み合わせとみなすことができますか? 分散システムのケースでこの質問に回答したかどうかを知りたいです。 可能性のあるすべての分散システムの問題を削減できる、標準的な分散システムの問題のセットはありますか?この正規リストとは何ですか? 正規のリストがない場合、現在の問題のリストは何ですか? 例えば、私は非常に素朴に言って、リーダーの選挙と相互排除の問題をコンセンサス問題に還元できると言います。また、分散スナップショットは分散クロックに縮小できると言います。それは本当ですか、それとも明らかに間違っていますか? 可能であれば、回答がその主張を裏付ける公開された論文/書籍への参照を提供することを希望します:)

1
セマフォと比較して使用した場合の「疑似時間」とは
私は現在、アラン・ケイズの講演を聞いています。「それは本当に複雑なのですか、それとも単に複雑にしたのですか?」(https://www.youtube.com/watch?v=ubaX1Smg6pY&=)彼は、「セマフォは悪いアイデアであり、疑似時間と呼ばれるものが優れていた」と述べています(リンクされたビデオでは51:40)。「擬似時間」という言葉を誤解したかもしれませんが、それらについて何か知っていますか?

2
なぜ線形化可能性は安全特性であり、なぜ安全特性は閉じたセットなのですか?
Nancy Lynch著の「Distributed Algorithms」の第13章「Atomic Objects」では、線形化可能性(原子性とも呼ばれます)が安全特性であることが証明されています。つまり、対応するtraceプロパティは、セクション8.5.3で定義されているように、空ではなく、prefix-closedであり、limit-closedです。非公式には、安全特性は、特定の「悪い」ことが決して起こらないと言っているとしばしば解釈されます。 これに基づいて、私の最初の問題は次のとおりです。 安全特性としての線形化の利点は何ですか?文献にこの事実に基づく結果はありますか? 安全特性と活性特性の分類の研究では、安全特性が適切なトポロジーの閉集合として特徴付けられることはよく知られています。アミール・プヌエリ他による論文「The Safety-Progress Classification」@ 1993。、メトリックトポロジが採用されています。より具体的には、プロパティは、アルファベットΣ上の(有限または無限)単語のセットです。プロパティA (Φは)すべての無限の単語で構成されてσようにすべてのプレフィックスσに属しますΦ。たとえば、Φ = a + b ∗の場合、ΦΦ\PhiΣΣ\SigmaA (Φ )A(Φ)A(\Phi)σσ\sigmaσσ\sigmaΦΦ\PhiΦ = a+b∗Φ=a+b∗\Phi = a^{+}b^{\ast}。無限のプロパティ Πは、ある有限のプロパティ Φに対して Π = A (Φ )の場合、安全プロパティとして定義されます。無限語 σと σ ′の間のメトリック d (σ 、σ ′)は、それらが同一の場合は0と定義され、 d (σ 、σ ′)= 2 −A (Φ )= aω+ a+bωA(Φ)=aω+a+bωA(\Phi) = a^{\omega} + a^{+}b^{\omega}ΠΠ\PiΠ …

2
ロックのないコレクションの制限?
DavidRodríguez-dribeasがStackOverflowのコメントに「すべてのコレクションがロックなしで実装できるわけではない」と書きました。これが本当かどうかはわかりませんが、どちらの方法でも証拠を見つけることができません。 このステートメントはあまり正確ではありませんが、もう少し正式な方法で言い換えてみましょう。すべてのコレクションタイプに対して、同じ操作セットを提供CするロックフリーのコレクションタイプCLFがあり、各操作でCLFの対応する操作と同じbig-Oの複雑さを持っていCます。 ちなみに、変革は期待していません。

1
実用的なマルチワードの比較と交換操作
で紙この質問と同じタイトルで、著者は構築する方法について説明しノンブロッキング 線形化 マルチワードCASの唯一のシングルワードCASを使用して操作を。彼らは最初に、以下のように二重比較単一交換操作-RDCSSを紹介します。 word_t RDCSS(RDCSSDescriptor_t *d) { do { r = CAS1(d->a2, d->o2, d); if (IsDescriptor(r)) Complete(r); } while (IsDescriptor(r)); if (r == d->o2) Complete(d); // !! return r; } void Complete(RDCSSDescriptor_t *d) { v = *(d->a1); if (v == d->o1) CAS1(d->a2, d, d->n2); else CAS1(d->a2, d, d->o2); } ここで、RDCSSDescriptor_tは次のフィールドを持つ構造です。 …

3
並行データ構造を設計する方法は?
以前にProgrammers.SEでこの質問をしましたが、成功しませんでした。 並行データ構造を設計する方法について書かれた学習リソースを探しています。最終的な製品(完全なコードリスト)よりも、設計プロセス(たとえば、適切な不変条件の特定)に関心があります。 具体的な例として、Chris Okasakiの著書「Purely Functional Data Structures」は本当に参考になりました。これは単なる参考資料ではなく、データ構造とアルゴリズムの設計について読者をガイドするためです。多くの場合、この本は、最初によりナイーブなバージョンを提供し、次に、必要な時間の複雑さ(最悪の場合または償却)が達成されるまでそれを洗練することによって、トリッキーまたは非自明なデザインを動機付けます。これは私が探しているようなものです。 そう: 並行データ構造を設計するためにどのような手法またはヒューリスティックが存在しますか? これらのテクニックとヒューリスティックを説明する本、論文、ブログ投稿、チュートリアルなどはありますか?

1
PrabhakaranとSahaiによる同時ZK論文に関する質問
対数丸め複雑さを伴う並行ゼロ知識証明 ページ番号は論文自体からのものであり、pdfからのものではありません。 3ページから 「対話型の証明システムは 、確率的多項式時間オラクルマシンが存在 する場合、確率的多項式時間検証器V ∗およびSSSV∗V∗V^*X ∈ Lx∈L\:x \in L\:、 入力xでS V ∗ によって生成された出力の分布 は、 相互作用の最後の検証者のビュー(P 、V )(x )から計算上区別できません 。SV∗SV∗S^{V^*}バツxx(P、V)(x )(P,V)(x)(P,V)(x) 彼らが意味すると思います (P、V∗)(x )(P,V∗)(x)\:\left(P,V^*\right)(x)\:最後に、そうでなければ、これ は正直な検証者計算ゼロ知識を定義するだけです。 7ページから 「すべてのセッションが 終了するまで(または検証ツールが終了するまで)シミュレーターが中断しない場合、 その時点で検証ツールのビューが出力されます。」 8ページの第3段落から 「深度カウンターが葉の1レベル上にあることを示している場合、 シミュレーターは次の2つのプリアンブルメッセージを待つ必要があります。つまり、 2つの葉を通過してから 戻る必要があります。このため、シミュレーターは変更を続けます。 2つのプリアンブルメッセージが到着するまで、(変更された)証明者と検証者を実行させることによる現在のビュー 。」 その段階で の証明者のメッセージは統計的に拘束力のある約束であるので、これはうまくいかないように私には思えます 。 しましょう p :ω → ωp:ω→ω\: p: \omega \to \omega \:オラクルクエリの数を制限する多項式であるSSSV∗V∗V^*\:使用されている統計的に拘束力のあるコミットメント方式 …

3
厳格な整合性と順次整合性の違い
厳格で順次的な一貫性は独立してかなりよく理解しています。 厳密なCは、基本的に、命令がグローバルクロックで実行される実際の順序を強制します。 Sequential Consistencyは、基本的に1つのプロセッサでのみ順序を強制します。 でもいくつかの文献をまとめるのに苦労しています。 http://www.cs.nmsu.edu/~pfeiffer/classes/573/notes/consistency.htmlは、メモリの「ラグ」を可能にする順次一貫性について説明しています。書き込みがすべてのプロセッサに伝播するまでに時間がかかる場合があります。しかし、それが行われると、一度にすべてに届きます。したがって、以下はSequential Consistencyで有効です P1: W(x)1 ----------------------- P2: R(x)0 R(x)1 今私が気にしているのは、次のプロセスです。これはデッカーのアルゴリズムのようなものです。 P1: W(x)1 R(y)0 ----------------- P2: W(y)1 R(x)0 これは、シーケンシャル一貫性(http://portal.acm.org/citation.cfm?id=1787234.1787255 pg 2)の下では確かに可能ではないはずです。この結果が得られる合計順序はありません。 しかし、シーケンシャルな一貫性により書き込みの伝播が遅くなり、1つのスレッドが他のプロセッサの状態を把握していない可能性があるという考えからは理にかなっています。 ここで何が欠けていますか?

1
ロケーションのきめ細かな概念によるプロセスモデリング
きめの細かい位置情報をキャプチャするプロセス代数的(または関連する)形式を知っている人はいますか?私はアンビエントとバイグラフに精通していますが、これらは明らかに位置モデルを持っていますが、より具体的な位置情報をモデル化して、あるエージェントの位置が(実または仮想)座標空間内で表現されるようにしようとするとどうでしょうか? 既存の形式を採用し、構成を追加して、適切な抽象化レベルで場所をモデル化することは可能だと思われますが、これが以前の取り組みを連想させるものであれば、不必要にホイールを再発明するのは嫌です。 背景として、アプリケーションドメインは基本的に生物学的モデリングであり、相互作用が発生する場所を管理するためにこのドメインで使用される従来の場所の概念は、関心のあるプロパティをキャプチャするのに十分な粒度ではありません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.