問題タブ [rparallel]
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 `parallel`パッケージはCRANに存在しませんか?
「r package parallel」をググってみましたが、CRANでは見つかりませんでした。次のリンクも試しましたが、機能しません。
http://cran.r-project.org/web/packages/parallel/index.html
http://cran.r-project.org/web/packages/parallel
http://cran.r-project.org/package=parallel
のリストにもありませんavailable.packages()
。
しかし、明らかにパッケージparallel
は存在します。:-) パッケージのリストにあり、ここには独自のタグもあります :-)
r - クラスタ スレーブ ノードのセットアップ方法 (Windows の場合)
15 台のマシン (それぞれ 4 つのコア) で数千*のモデルを実行する必要があり、すべて Windows です。parallel
私は、snow
およびパッケージ化を学び始めsnowfall
、たくさんのイントロを読みましたが、それらは主にマスターのセットアップに焦点を当てています。Windows でワーカー (スレーブ) ノードをセットアップする方法に関する情報はほとんどありません。情報はしばしば矛盾しています: SOCK クラスターが実質的に最も簡単な方法であると言う人もいれば、 Windows での SOCK クラスターのセットアップは複雑 (sshd セットアップ) であり、最良の方法は MPIであると主張する人もいます。
では、Windows にスレーブ ノードをインストールする最も簡単な方法は何でしょうか? MPI、PVM、SOCK、または NWS? 私の、おそらく素朴なアイデアは次のとおりです(優先順位に従ってリストされています):
- スレーブ ノードで 4 つのコアすべてを使用するには (必須)。
- 理想的には、いくつかのパッケージと、いくつかのポートでリッスンしてマスターからのタスクを待機するスレーブ R スクリプトまたは R 関数を含む R のみが必要です。
- 理想的には、ノードをクラスターから動的に追加/削除できます。
- 理想的には、スレーブはマスターに接続するため、マスターの構成ですべてのスレーブ IP をリストする必要はありません。
100% 必要なのは 1 つだけで、2 ~ 4 つが「あればよい」です。要求するのはあまりにも素朴ですか?
申し訳ありませんが、利用可能なドキュメントとチュートリアルからこれを理解することができませんでした. 正しい情報源を教えていただければ幸いです。
* これらの何千ものモデルのそれぞれに少なくとも 7 分かかるため、大きな通信オーバーヘッドは発生しないことに注意してください。
r - RでdoSNOWと複数のサーバーを使用して並列計算を実行する
doSNOW および foreach パッケージを使用して、マルチサーバー (マルチコアではない) 計算を実行しようとしています。2 台の Windows サーバーがあり、これらの両方の Windows マシンで並列計算を開始したいと考えています。
次のコードがあります。
makeCluster を呼び出した後、私のマシンは何らかの処理を行いますが、実際には呼び出しを完了しません。RStudio で [停止] をクリックすると、次のエラー メッセージが表示されます。
これらのリモート サーバーで何かを構成する必要があるということですか? 具体的に何を設定すればよいですか?ssh? そして、どうすればいいですか?リモートマシンでいくつかのポートを開く必要がありますか?どれ?
2台以上のマシンでRを実行するために必要な手順の完全な例を誰かが持っていますか.
PS doSnow は、マルチコアの実行で非常にうまく機能します。問題はありません。マルチサーバーの実行に問題があります
r - 外側の %dopar% と内側の %do% を持つ無関係なネストされた foreach
%dopar%
パッケージを使用してforeach
パッケージを使用してローカルで並列にタスクを実行しdoSNOW
てクラスターを作成しています(現時点ではこれをWindowsマシンで実行しています)。私はこれまで何度もこれを行ってきましたが、その中に a (つまり、非並列)foreach
を使用して無関係なループを配置するまでは正常に機能します。%do%
次に、Rがエラーを返します(トレースバック付き):
私のマシンで問題を再現するコードは次のとおりです。
インナーforeach
をシンプルなfor
ORに交換するの(l/s)apply
が解決策です。しかし、これを内部で機能させる方法はありforeach
ますか?そもそもなぜエラーが発生するのですか?
linux - LinuxでRの並列プログラムを強制終了する方法
R を使用して並列計算を行います。並列プログラムを強制終了したいときは、いつもkill 2130 2131 6456
(PID) を使用します。R のすべてのプログラムを強制終了する方法はありますか?
r - 並列処理に foreach ループを使用する r-Error
R での並列処理に「doSNOW」を使用しようとしています。foreach ループ コマンドの実行中にエラーが表示されます: オブジェクト j が見つかりません。この点で私を助けてください。コードは通常の for ループで正常に動作します。しかし、完了するまでに永遠のようにかかります。この点で私を助けてください。これからもよろしくお願いします。
r - R 並列: rbind を並列に個別の data.frames に
以下のコードは、Windows プラットフォームと Ubuntu プラットフォームで異なる結果を生成します。並列処理の処理方法が異なるためだと理解しています。
要約すると、Windows では実行できるのに、 Linux では並列 ( 、)でデータを実行することは
できません。 insert
rbind
mclapply
mcmapply
Windowsで並列に動作しないことを指摘してくれた@Hong Ooiに感謝
mclapply
しますが、以下の質問はまだ有効です。
もちろん、同じへの複数の挿入はありませんdata.frame
。各挿入は別々の data.frame に実行されます。
そして質問:
Linux プラットフォームでrbind
個別の を並列に実行するにはどうすればよいですか?data.frame
私の場合、 PS Off-memory storage likeSQLite
は解決策とは見なされません。
r - 依存関係のある for ループを並列化できますか?
ベテラン R ユーザーの皆さん、こんにちは。
私は R にまったく慣れていないので、プロセスを並列化する可能性があるかどうか疑問に思っています。私のデータセットは基本的に、特定のプロトコル (MODBUS/TCP) に対応するパケットを抽出した pcap ファイルから派生しています。800k を超えるパケットがあり、連続する 2 つのパケットごとに、特定の (つまり、同じ) MODBUS トランザクションのクエリ/応答に対応しています。
一部の値はクエリ/応答のいずれかに含まれているため、最初の for ループを作成しました。このループは行ごとにデータを「並べる」ため、トランザクションごとに 1 行で、両方からすべての変数が入力されます。クエリ/応答行。クエリ/応答を区別する唯一の方法は、条件付きの if ステートメントにあるソース/宛先ポート番号によるものです。
データテーブルを使用し、キーを設定し、変数を事前に割り当てています (マージされたテーブル/結果)。ベクトル (結果の data.table 内の列) に適用される関数は、かなり高速に実行されます。
私の PC は 4 つのプロセッサで debian wheezy を実行しています。依存関係があるため、並列処理を活用することは実際には不可能であると理解しています。ただし、データセット全体を分割し、それらを並行して処理してから結果をマージする方法はありますか? 実行に 3 時間以上かかりました。他に適用できる最適化があるのではないでしょうか?
ガイダンス/ポインタは大歓迎です。ありがとう!