問題タブ [mclapply]
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 - 「mclapply」の「for」を変換するにはどうすればよいですか?
私はこれを持っています:
「ScriptR」関数にインデックス「i」を渡すにはどうすればよいですか??
Tks
r - グローバル変数に書き込む関数への mclapply() の適用
parallel::mclapply
次のコードの計算を高速化するために使用しようとしています:
上記のコードを実行すると、すべて問題ありません。mclapply (以下) を使用すると、結果は私が取得したいものから何マイルも離れています: ヒストグラムはすべて間違っています。
この関数への並列計算の適用に関して、何か重大なことが欠けているように感じます。
r - R の並列パッケージで mclapply の進行状況を追跡する方法
私の質問はこの質問に関連しています。ただし、上記の質問multicore
では、に置き換えられたパッケージを使用していますparallel
。parallel
応答内の関数のほとんどは、パッケージ内で複製できません。で進行状況を追跡する方法はありますかmclapply
。mclapply
ドキュメントを見ると、というパラメーターがありますmc.silent
。これで進行状況を追跡できるかどうかはわかりません。追跡できる場合、どのように、どこでログ ファイルを確認できますか? ubuntu
Linux OSで実行しています。進行状況を追跡したい再現可能な例については、以下を参照してください。
どんな助けでも大歓迎です。
r - R でのラップリー コンピューティングの非線形性
出力がdata.framesのリストである比較的大きな関数(約500行。データの節約、ANNの学習、予測の取得を含む)を作成しましたが、問題は、出力がより大きなリスト(たとえば30 000データ)であると想定される場合ですこのリストの .frames)。私はこのように機能を使用します
そして私がそれを使うとき
約 100 秒、1 秒あたり 10 data.frames かかります。しかし、私がそれを使用するとき、言ってみましょう
劇的に遅くなり、約 6500 秒かかります。また、ベクトル c() を増やすと、ますます遅くなります。
私はFUNを減らすことでそれを修正しようとしました(小さなベクトルc()にはほとんど影響しませんが、より大きな計算では同じ問題です)
A はまた、200 ケースを計算してそれらを空のリストに入れ、別の 200 の計算を計算する for ループを作成して、この空のリスト (まだ空ではなく、最後の計算のフレームが含まれていた) に参加することで、それを修正しようとしました。最後まで同じ。
しかし、結果は同じで、再び劇的に遅くなります。バグは環境またはメモリの問題のどこかにあると思います。誰もそれを経験したことがありますか?それを解決する方法について何かアドバイスはありますか?計算は同じなので、小さいものではうまく機能し、大きいものでは遅くなる理由がわかりません。アドバイスありがとうございます。
r - Rと恥ずかしいほど並列のデータを分割しますか?
R を使用して並行して作業したい大きな RDS ファイルがあります。ファイルをロードすると、7.3 GB の RAM が必要になります。
多くのコアを使用しようとすると、R がメモリ不足でクラッシュします。オブジェクトのコピーを作成する代わりに共有メモリを使用するように mclapply に指示する方法はありますか?
これは私が持っているコードです:
これを 32 コアと 64GB の RAM を搭載した Linux ボックスで実行しています。
ありがとう!
r - R での高速 ANOVA 計算
次のディメンションのデータフレームがあります。
列は、ANOVA を実行したい (つまり、433,685 の ANOVA を実行したい) 変数を表します。サンプルサイズは 974 です。最後の列は「グループ」変数です。
私は3つの異なる方法を思いつきましたが、テストの数が原因ですべてが遅すぎます.
まず、小さな練習用データセットを生成して遊んでみましょう。
方法 1 ( 'sapply'に基づく):
方法 2 (「parallel」パッケージの「mclapply」に基づく):
方法 3 ( LHS の「cbind」に基づく):
実践データセットでは、方法 3 が明らかに勝者です。ただし、実際のデータでこれを行うと、方法 3 を使用して 10 (433,685) 列だけを計算すると、次のように時間がかかります。
実際のデータでかなり時間がかかる理由がわかりません。16 個以上のコアと 72 GB の RAM を搭載した Linux クラスターにアクセスできます。
これをより速く計算する方法はありますか?