問題タブ [parallelism-amdahl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - マルチスレッド プログラミングで予期しない結果
マルチスレッド Java プログラムで困っています。プログラムは、マルチスレッドを使用した整数の配列の分割された合計と、スライスの合計から構成されます。問題は、スレッドの数を増やしても計算時間が減らないことです(スレッドの数に制限があり、それ以降は計算時間が少ないスレッドよりも遅くなることがわかっています)。その制限数のスレッドの前に実行時間が短縮されることを期待しています (並列実行の利点)。run メソッドで変数 fake を使用して、時間を「読み取り可能」にします。
parallel-processing - 10 プロセッサと 40 プロセッサでは、どの程度の速度向上が得られますか?
2 つの合計を実行するとします。1 つは 10 個のスカラー変数の合計で、もう 1 つは次元が 10 × 10 の 2 次元配列のペアの行列の合計です。ここでは、行列の合計のみが並列化可能であると仮定しましょう。10 プロセッサと 40 プロセッサでは、どの程度の速度向上が得られますか?
私の理解:
10x10 行列 + 10 スカラー変数 = 110t
10 プロセッサの場合、(100/10)t + 10t = 20t
スピードアップ=110/20=5.5;
40 プロセッサの場合、(100/40)t + 10t = 12.5t
スピードアップ=110/12.5=8.8;
ソリューション ブックには、10 個のプロセッサで約55%の潜在的な高速化が得られると記載されていますが、40個のプロセッサでは22%しか得られません。
55% は理解できますが、その 22% はどのようにして得られるのでしょうか?
python-3.x - Python での for ループの並列化
私は実行速度が非常に遅いニューラル ネットワークをコーディングしたので、特定のループを並列化することで少し速度を上げたいと考えていました。
実装とGILの仕組み、そしてそれが私に関係があるかどうかはわかりません。
コードは次のようになります。
ループは、独立して処理できる一連のトレーニング サンプル (20) が含まれてtrain()
いるため、並列化したいループです。batch