2011-08-29 7 views
3

R実行するサンプル/テストがたくさんあるので、CMDチェックには私のパッケージの1つを完了するのにかなりの時間がかかります。おそらく平行して走る方法がありますか?R CMDチェックでサンプル/テストを並行して実行できますか(Windowsの場合)?

私は(私はそれがWindowsで動作する方法を見ることができない)R CMDは、Linuxにインストールするためのソリューションを持っていると思われ、このポストにつまずい: http://r.789695.n4.nabble.com/parallel-build-for-package-equivalent-of-make-j8-td921920.html

は、並列R CMDチェックのための解決策はありますWindowsでは?

+0

その記事の解決策はLinux固有のものではありません。コンパイルされたコード(C、C++、Fortran)を含むパッケージでのみ機能します。明確化のために –

+0

ありがとう! – SFun28

答えて

3

それはハックですが、あなたはtestsディレクトリからテストを取ると、彼らは自動的に(例えばinst/tests)を実行し得ることはありませんことをどこか別の場所にそれらを置くことができ、その後に自分自身、並列化、フレームワーク(例えばmake実行を使用並列:http://dannythorpe.com/2008/03/06/parallel-make-in-win32/が該当するかもしれません)テストを実行するには...これは例に役立ちません。

+0

ベン - 私のテストは現在inst/testsに住んでいますので、そこにチェックしてくださいRのCMDチェックが並行して実行されるRのバージョンを構築することを提案していますか? – SFun28

+0

'R CMD CHECK'は' tests'( 'inst/tests'ではなく)で見つかったコードを自動的にテストしたと思っていましたが、いずれにせよ、あなたの質問に対する答えは "いいえ"だと思っています。もし私が**本当にこのために必死であれば、私は 'tools :::。check_packages' 'multicore'パッケージを使用するための簡単な方法があるかどうか確認してください。 –

+0

私は関数testthat :: test_packageを呼び出すテストでファイルを持っています。これはinst/tests =でテストを実行します。 testthatを使用するためのベストプラクティスのギルドライン。私はハックが私のスキルレベルを超えていると思う。すぐに使用できるソリューションがないことを確認していただきありがとうございます。 – SFun28

0

完全に異なるアプローチは、実行中のコードの不変部分をキャッシュするcacheSweaveパッケージを使用することです。いくつかのコードを微調整していてもそのほとんどが変更されていない場合、これは多くの時間を節約する可能性があります。しかしプロットが遅くなっている場合、cacheSweaveはあまり役に立たないでしょう(バイナリで説明したように)。

+0

OK、私自身の投稿にコメントする必要があります。私はcacheSweaveがR CMDチェックのために動作するのかどうかは分かりませんが、他のドキュメントを掃除するためにはうまくいきます。私は誰かがこれを明らかにするだろうと確信しています。 –

+0

ブライアン - 私は全くスウィーブを使用していません...私の問題は純粋に計算的なRの例/テストです – SFun28

+0

入手しました。私はR CMDチェックでビネットを作成することを考えていましたが、ヘルプページの例ではコードが心配です。申し訳ありませんが、私はそれについての考えを持っていません:-( –

関連する問題