デフォルトのブラウザを指定する |
まずはconfigファイルを生成
生成された設定ファイルを編集する。デフォルトで開きたいブラウザのパスを指定し、該当箇所(c.NotebookApp.browser)を探して、以下のように変更(Macでchromeで開きたい場合)
|
プロファイリング(パフォーマンス解析)を行う |
jupyter notebook中で書いたコードの実行時間やボトルネックを調査したい場面が出てくることもある。IPythonのマジックコマンドを用いると簡単にプロファイリングを実行できる |
実行時間を計測する |
CPU times: user 9 µs, sys: 1 µs, total: 10 µs
760 ns ± 96.7 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each) |
cProfileで詳細な解析 |
%time/timeitではコードの実行時間で、どの処理でどの程度時間がかかるかはわからない。
|
行毎orメモリー使用量の解析 |
cProfileでは関数の再帰的な呼び出しまで考慮したプロファイルを行なってくれるが、幾分オーバーキルというか、実用上は呼び出し関数中のどの行で時間かかってるのかといった特定が手っ取り早くできれば良いということも多い。またCPUの計算時間よりもメモリリソースが気になる場合もある。 そんな時はlineprofilerやmemoryprofilerといったモジュールの恩恵を受けると良い。 セル内で必要なモジュールのインポートを行う。
マジックコマンドのインポート
これで%lprun、%mprun コマンドが使えるようになる。 |