問題タブ [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.

0 投票する
3 に答える
1316 参照

r - 開くと、Rstudio は多くのプロセスを開始します (前のセッションで並列パッケージで開始されました)。それらを強制終了するにはどうすればよいですか?

私はこの SO の質問と回答 ( R 並列コンピューティングとゾンビプロセス) を読みましたが、私の状況に完全には対応していないようです。

Mac OS X 10.10.3、R 3.2.0、および RStudio 0.99.441 を実行する 4 コアの MacBook Pro を使用しています。

昨日、パッケージ「foreach」と「doParallel」を試していました(作業中のパッケージで使用したい)。これは私がしました:

4 コア マシンで 14 プロセスを使用するのは意味がないことは明らかですが、ソフトウェアは実際には 16 コア マシンで実行されます。この時点で、私のコンピューターは停止しました。アクティビティ モニターを開くと、16 個 (またはそれ以上か?) の R プロセスが見つかりました。アクティビティ モニターから強制終了しようとしましたが、うまくいきませんでした。RStudio を閉じると、すべての R プロセスが強制終了されました。RStudio を再度開くと、すべての R プロセスが再起動されました。コンピューターを再起動し、RStudio を再起動すると、すべての R プロセスが再起動されました。

これらすべてのプロセスを再起動せずに RStudio を起動するにはどうすればよいですか?

編集:当時作業していたパッケージも再ビルドしたことを忘れていました(ビルド中にすべてのプロセスが実行されていた可能性があります)

EDIT2:また、clが環境にないため、StopCluster(cl)を実行できません...そのRセッションを閉じました。

EDIT3:R.app(Rで提供されるR GUI)を開くか、ターミナルでRを開くと、そのような問題は発生しません。だから私はそれがRStudio関連でなければならないと思います。

EDIT4: RStudio を開いてから、これらの望ましくないプロセスがすべて開始されるまでの間に、ランダムな遅延があるようです。15秒から2分。

EDIT5:プロセスが開始されたプロジェクトを開いた後にのみプロセスが開始されるようです。

EDIT6: .Rproj.user ファイルから削除するものを探しています。ctx、pcs、および sdb 内のすべてのファイル (ディレクトリは除く) を削除しました。問題が解決しない。

EDIT7:コマンドラインで「killall R」を実行すると、これらのプロセスがすべて強制終了されますが、RStudio を再起動してプロジェクトを再度開くと、すべてのプロセスが再び開始されます。

EDIT8:「killall -s R | wc -l」を使用して、プロジェクトが開いている間にRプロセスの数が増えていくのを見つけました。358 まで上がったので、コンピュータが恐ろしい音を立てていたので、「killall R」を実行しました。

EDIT9: RStudio は現在完全に使用できません。「killall R」を実行するたびに、15 秒以内にすべてのプロセスが再起動されます。

EDIT10:大量の R プロセスも起動するビルドを開始すると、最後のチェックで 109 になります。これらのプロセスはすべて、ビルドで「遅延読み込み用のパッケージを準備しています」と表示されたときに開始されます。この時点で、コンピューターはほぼ停止します。

EDIT11: .Rproj ファイル (実際にはバックアップとして移動しただけ) と .Rproj.user ディレクトリを削除しました。RStudioで「ディレクトリからプロジェクトを作成」を使用しました。その新しいプロジェクトを開くと、同じ動作が得られます。.Rproj ファイルまたは .Rproj.user ディレクトリのどこにも含まれていないプロジェクトを開くと、RStudio は何をしますか? 私はこの 1 つの問題に 1 日を費やしました....:(

0 投票する
0 に答える
648 参照

r - R で並列プログラミングを使用して各行に関数を適用する場合

関数を各行に適用するには、さまざまな方法があります。

ここで私が知っているいくつかの方法:

方法 1

方法 2

方法 3

方法 4

上位3つの方法のうち、3番目の方法が速いと思います。しかし問題は、方法 4 (並列方法) が方法 3 よりも速いのはいつですか? すべてのコードを実行する前にそれを理解する方法はありますか?

0 投票する
1 に答える
2768 参照

r - R で foreach と doParallel で fread を使用する

ubuntu 14.04のR 3.2.0で使用freadforeachてパッケージ化しました。doParallelを使用していなくても、次のコードは問題なく動作しますregisterDoParallel

ただし、Windows 7 に切り替えると、「registerDoParallel」の有無にかかわらず機能しなくなります。

「doSNOW」パッケージも機能しません。以下はエラーメッセージです。

誰か似たような経験がありますか?


フォローアップの質問は、ネストされたに関するものforeachです。以下はうまくいかないようです。

   

0 投票する
1 に答える
140 参照

r - R を複数の CPU コアで計算する

前の質問から次の簡単な演習を行いましょう。

R に次のコードを入力すると、最終的にP1変数が次のように出力されます。

そして、結果を得ることができます:

これは CPU の割合が低いことに気付いたので、doParallelパッケージを呼び出して実行しloop、同じ結果 (つまり save P1[i]) を出力したいと考えています。しかし、私はエラーが発生します:

それGenMatchが見つかりません。コードを改善するための提案はありますか?

0 投票する
1 に答える
2014 参照

r - RPostgreSQL 接続は、doParallel clusterEvalQ で開始されるとすぐに期限切れになります

各ワーカーがデータベース クエリを実行する必要がある並列タスクをセットアップしようとしています。この質問に見られるように、接続を使用して各ワーカーをセットアップしようとしていますが、試行するたびに、登録したワーカーの数が返さ<Expired PostgreSQLConnection:(2781,0)>れます。

これが私のコードです:

foreachエラーにもかかわらず実行しようとすると、失敗しますtask 1 failed - "expired PostgreSQLConnection"

postgres サーバーのステータスに入ると、作成されたすべてのアクティブなセッションが表示されます。

メインの R インスタンスから postgres を操作するのに問題はありません。

私が走れば

次に、すべてのクライアント ポートを返します。期限切れの通知は表示されませんが、 foreach コマンドを実行しようとすると、同じエラーで失敗します。

編集:

Ubuntu と 2 台の Windows コンピューターでこれを試しましたが、すべて同じエラーが発生します。

別の編集:

現在、3台のWindowsコンピューター

0 投票する
1 に答える
797 参照

r - R の doParallel - 速度は向上しますが、CPU は常に 90% から 100% まで使用されるわけではありません

私はそれらに対して多くの線形回帰と診断を実行しようとしており、速度を上げるためにR プログラミング言語でdoParallelパッケージを使用しています。

興味深い問題に遭遇しました。予想どおりパフォーマンスの向上が見られましたが、CPU の使用率は一貫していません

たとえば、コードを実行すると、すべてのコアで CPU 使用率が30 ~ 40%になることがあります。

コードを再度実行すると、その間何も変更しなくても CPU 使用率が90%まで上昇する可能性があります。

どちらの場合も、同時に他に何も実行していません。

何も変更せずにコアが 30% 使用され、別の時間に 90% 使用される理由はありますか?

Windows XP、4GB または RAM を実行しており、Inter(R) Xeon(R) CPU X5650 @ 3.67GHz を使用しています。

私のコードは次のようになります。

0 投票する
1 に答える
1156 参照

r - R foreach 並列ループの値が保存されない

次のダミーコードを実行する場合:

次の出力が表示されます。

fループで割り当てられた値がforeach保存されないのはなぜですか?

特に、ループの後で と がゼロf[1]f[2]等しいのはなぜですか?foreach

ありがとう!