たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

fsspecのZipFileSystem速度

素のファイルアクセスと比較して50%くらいのオーバーヘッドあり
ただし最適化の余地あり

計測環境

Google Colab

処理

PyTorch.Tensorのload & processing

PyTorch.Tensorをファイルに事前保存.
load→ Tensor*2.0を数十ファイルに対して処理、これを1000ループ.

結果

展開済みファイル: 113 sec
zipFS経由: 183 sec

解析

zipFSは中でPythonのZipFileを使ってる
直接呼び出すとオーバーヘッドは10%以下、関数呼び出し分くらいになる.
zipFS内のパース周り関数がオーバーヘッドになってる (消して検証済み)

実務環境下

深層学習用データセットに適用 (Scyclone-PyTotch).
オーバーヘッドは約10% (2.7 iter/s vs 3.0 iter/s)
zipFSの最適化をすれば実務上無視できる範囲に入れること出来そう.