> ファイルの処理時間膨張 / 短縮の大きな要因はファイルサイズではないでしょうか? やってみました
t1.mus は以前のもの
---t2_2.mus--- x1 [o3cego4cego5ceg]64 ,(半角スペース 18個) (99997行 略) ,(半角スペース 18個) ---t2_2.mus--- 2,000,003 bytes
t1.mus と t2_2.mus のファイルサイズを揃えてみました
結果: t1.mus → T1.mid :3.62±0.01 秒 t2.mus → T2.mid :2.81±0.01 秒 t2_2.mus → T2_2.mid:2.85±0.01 秒 t1 - t2_2:p < 0.00000000000000000001 t2 - t2_2:p ≒ 0.00000000187865488725 ファイルサイズの比較 t2/t2_2: 5.0% コンパイル時間の比較 t2/t2_2:98.6%
ファイルサイズの差による影響は微々たるもののようです これは、実験プロトコールで最初の 3回を捨てていますので、 mus ファイルは最初の読み込みの際にメモリ上にキャッシュされ、 2回目からはオンメモリのファイルが読み込まれることになるからでしょう 因みに、1回目からのコンパイル時間は、3.07秒→2.81秒→2.81秒 と経過しました t1.mus、t2.mus でも同様に、1回目だけ非常に時間がかかっています
るうさんのおっしゃる構文解析のコストと、メモリのアロックのコストが、 コンパイル時間の差の大きな原因なのではないでしょうか? > 開発者様
|