問題タブ [doparallel]
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.
r - R doParallel foreach ワーカーのタイムアウト エラーが発生し、返されない
次の質問は、ここで説明されている質問に関連する非常に詳細な質問です。前の質問
Ubuntu Server 14.04 LTS 64 ビット Amazon マシン イメージを使用して、R バージョン 3.2.3 を使用して c4.8xlarge (36 コア) で起動しました。
次のコードを検討してください
両方のタイムアウト例外が機能することに注意してください。個々のプロセスがタイムアウトし、必要に応じて累積プロセスがタイムアウトすることがわかります。
しかし、個々のプロセスが開始でき、不明な理由で 300 秒後にタイムアウトしないことがわかりました。個々のプロセスのタイムアウトにより、プロセスが「単に時間がかかる」だけではないことに注意してください。その結果、コアはこの単一のプロセスで占有され、3600 秒の累積タイムアウトに達するまで 100% で実行されます。累積タイムアウトが設定されていない場合、プロセスとそのコアが無期限に占有され、foreach ループが無期限に継続することに注意してください。累積時間に達すると、「Timeout 2 Fail」が返され、スクリプトが続行されます。
質問: 個々のワーカー プロセスが「ハング」して、個々のタイムアウト メカニズムでさえ機能しない場合、ワーカーを再起動して並列処理で引き続き使用できるようにするにはどうすればよいですか? ワーカーを再起動できない場合、累積タイムアウトに達したとき以外の方法でワーカーを停止できますか? そうすることで、単一の「エラー」プロセスのみが実行されている間に、プロセスが累積タイムアウトに達するのを「待機」する長時間継続しないようにすることができます。
追加情報 "暴走" プロセスまたは "ハング" ワーカーが行為に巻き込まれました。htop を使用してプロセスを見ると、100% CPU で実行されている状態でした。次のリンクは、プロセスの gdb バックトレース呼び出しのスクリーンショットです。
質問: 「暴走」プロセスの原因はバックトレースで特定されていますか?
r - R でネストされた並列プロセス - Foreach ループ内で ParSapply を使用する
doParallel パッケージを使用していparSapply ()
て、内部で使用したいのですForeach loop
が、他の並列ループ内で並列関数を使用する方法がわかりません。
このエラーが発生しました:
r - doParallel パッケージの foreach
forループ環境で関数「cop.theta」を使用して、いくつかの計算から行列を作成するためのこのコードがあります
上記のコードが生成したものと同様の結果を得るために、doParallel パッケージで「foreach」を使用して R コードを作成しました。私のコードは次のとおりです
しかし、私はこのエラーが発生しています
私はどこで間違っていますか?
r - R foreach は関数 "%dopar%" を見つけることができませんでした
doParallelライブラリを使用しているときに、この奇妙なエラーが発生しました。システムはこれをスローします
" Error in { : task 1 failed -could not find function "%dopar%"
具体的には、これが私がしたことです
これまでのところ、すべてが良好です。2 つの関数ntw
を作成lambda
し、foreach
. 彼らは完璧に機能しました。
次に、次の関数も使用して 3 番目の関数を作成しますforeach
。
タイプjl(guess)
:
何がうまくいかないのですか?
mysql - R doParallel または foreach を使用して mysql から並列にデータをフェッチする
Rを使用してMySQLデータベースから並行してデータをフェッチしようとしています。次のコードは、データを1つずつフェッチして正常に動作しています。しかし、複数のクエリを送信してさまざまな変数に保存することで、プロセスをスピードアップしたいと考えています。後で、変数内で時系列をマージします。
次のコードを使用して、データを並行して取得しようとしました。
コードが最初の計測器のデータのみを取得し、残りの計測器のデータを取得しない場合があります。
誰かが解決策を知っている場合は助けてください。
ありがとう、
r - Rで並列に上対角計算
次のコードを使用します。
次の結果が得られます。
次のように上対角行列を取得したいと思います。
内側のループのイテレータを
必要な結果が得られません。
r - 入れ子ループの並列処理の時間見積もり
次のコードがあります。
time.taken
は、プロセスの開始から終了までの時間を保持します。この場合の各加算 (as.numeric (i+j)) にかかった時間を知りたいです。これは、二次元配列が必要であることを意味しtime.taken[i,j]
ます。したがってtime.taken[1,1]
、最初の反復から最後の反復までの時間が含まれますtime.taken[N,N]
。それは可能ですか?