27

R Shiny Web アプリの場合、最も処理時間がかかる Shiny コードの部分を示すコード プロファイリングを実行する良い方法は何ですか?

大きくて太くて複雑な Shiny アプリを持っています。この迷路のようなコードのどこで、Shiny アプリの速度が最も低下しているのかを突き止めたいと思います。私は Rprof と profr を試しましたが、それらから多くの洞察を得ることはできませんでした。

4

3 に答える 3

2

私の経験から:

  1. 関数内のプラグイン print() どの関数が最も時間がかかっているかを調べることができます。例えば:

mydebug <- function(msg="[DEBUG]") { DEBUG <- FALSE if (DEBUG) { print(sprintf("%s - %s - %s", msg1, as.character(Sys.time()), as.character(deparse(sys.calls()[[sys.nframe()-1]])))) } } f <- function() { mydebug() ## your original function definitions ..... mydebug() return(...) ## the returned value needs to be after mydebug() }

  1. Chrome フレーム グラフを使用してプロファイリングする

フレームを取得して、どこで時間が費やされたかを調べることができます (たとえば、どの JS 関数でしょうか? レイアウトが原因でしょうか?)。

ここに画像の説明を入力

詳細については、https ://developers.google.com/web/tools/chrome-devtools/profile/rendering-tools/analyze-runtime?hl=en を参照してください。

于 2016-07-27T16:14:28.193 に答える