裏表(Phinloda のもう裏だか表だか分からないページ)

コンピュータ・プログラミング系の話がメインのそれなりにごちゃごちゃしたネタばかり出てくるサイトです。多分。
<< Windows のファイル移動が異様に遅いのはよく知られたことではあるが | Top | ニンテンドースイッチの抽選販売があったのだが >>
Windows のファイル移動が異様に遅いのはよく知られたことではあるが (2)

ファイルを一気に移動すると遅くて話にならないのだが、もしかしてある程度まとめて移動した後、移動した先からさらに移動すると処理時間が短縮できるのではないか、と考えた。次のような話。

201701 というフォルダに、2017年1月に作成したファイルが入っている。これを、01、02、03、04、05 という5個のフォルダに、1日〜5日のファイルを振り分けたい。

これを、201701から01、201701から02、…のように1日ずつ処理するよりも、201701から1〜5日のファイルを一揆にtmp に移動しておいて、tmpから01、02、…に振り分けた方が速いのではないか、と思ったのである。

実際にやってみた。ただし、一度移動したファイルはどこかに情報がキャッシュされて、2回目の移動の方が速くなるような気がする。そこで、tmp経由の方が速いと予測して、遅くなりそうな直接移動を後で測定することにした。後の方がキャッシュの影響で速くなったとしても、それでなお遅かったら、キャッシュの影響がない場合はもっと時間がかかるはずだから遅いと判断していいだろう、という読みである。

一度 tmp に移動してから01〜05にコピーした場合、541秒+αかかった。 αというのは、tmp からそれぞれにコピーする時間は1秒未満なので、その程度のプラスということである。仮に5秒とすれば、546秒となる。

これに対して、直接01〜05に振り分けると、128+111+53+183+97= 572 秒かかった。秒数にばらつきがあるのは、ファイルの数の影響である。440 + 645 + 305 + 1070 + 575 = 3035 個のファイルを、約8万個ファイルが入ったところから移動している。

体感したのと同じで、やはり一度まとめて移動してからさらに分離した方が速かったが、思ったほどの差はなかった。

処理中に見ていた感じでは、ファイルを移動跡、移動元のフォルダから移動したファイルの一覧を消す処理に時間がかかっている。これを5回に分けてやるよりも、1度にやってしまった方が速い感じだ。 だとしたら、もしかしたら移動するよりもメモリディスクとか作ってそこにコピった方が速いのではないかとか思ったけど、体力の限界【謎】で試していない。

JUGEMテーマ:Windows

| Windows | 20:40 | comments(0) | trackbacks(0)
スポンサーサイト
| - | 20:40 | - | -
コメント
コメントする









この記事のトラックバックURL
http://phinloda.jugem.cc/trackback/3934
トラックバック
Powered by "JUGEM"
▲このページの先頭へ
CALENDAR
S M T W T F S
    123
45678910
11121314151617
18192021222324
252627282930 
<< June 2017 >>
NEW ENTRIES
CATEGORIES
ARCHIVES
NEW COMMENTS
NEW TRACKBACKS
LINKS
PROFILE