Mail: Pass:
前月  2008年5月  翌月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

links

 びびすけさんのページ
 体重・走距離分析
 月間・靴・コース走距離
 タイムトライアル分析
 速度・心拍数分析
 自転車・月間・コース走距離
 オセロ勝敗・レート分析
 ViVi web site

新着日記

 zLib
 ViVi 2.x リリースチェック時間統計
 趣味悠々
 ViVi version 3.0 M-2 進捗
 ViVi週間DL数
 ViVi 3.0 開発方針
 記録更新
 ViVi 2.04 (RC版) リリース
 本サイトのアクセス数統計
 ViVi version 3.0 マイルストーン…
 ViVi ver 3 マイルストーン1 進…
 フォント選択可能@V3
 ViVi version 3.0 タスクリスト・…
 CycleCollection in リファレンス…
 循環参照検出(cycle detect)
 循環参照によるメモリリーク (2)

新着コメント

 おお/びびすけ
 再放送/川瀬
 アップ/びびすけ
 あーー!/スパイダーマン
 放映/びびすけ
 どもども/びびすけ
 必見だぁ^^/oyaji_aoba
 おおー!/スパイダーマン
 補足/びびすけ
 HGP行書体/びびすけ

トラックバック

トラックバックはありません。

カテゴリ一覧

 基本データ
 テニス
 ジョギング
 ViVi
 自転車
 Web
 RunRunDietOnline
 PostgreSQL
 ビルドアップ走
 ランニング

ファイルロード処理時間 (2008/05/02 19:46)

ViVi のファイルロード処理を高速化するための予備実験

CreateFile でファイルを開き、メモリマップトファイルにマップして、中をスキャン。改行の数を数えてみた
アパッチログファイル(ANSI)@ウルフデール3GHz, 2GMem, SATA2 HDD, WinXP、VC6 リリースモード

約50メガ、40万行のログ:49ミリ秒
585メガ、460万行のログ:594ミリ秒

次に、ファイルサイズ分のメモリをアロケートし、そこにファイル内容をコピーしてみた

約50メガ、40万行のログ:63ミリ秒
585メガ、460万行のログ:719ミリ秒

おおむね、ファイルサイズに比例している。
32ビット XP の仮想記憶は 3G程度しかないので、あまり大きなファイルの内容をそのまま内部バッファに格納するのは困難だ。

数G以上のもっと大きなファイルでも、行数を数えるだけなら、メモリマップトファイルのビューを分割すれば
1Gあたり1秒程度で処理できそうな雰囲気だ。


コメント:

パス ← 半角英字で「abc」と入力してください。
名前
タイトル
コメント

( page views in recent 7 days)

パスワード忘れ
今週のランキング
計算タマちゃん
FAQ
ヘルプ
about rrdOnline