>>664
(少なくとも UNIX では) >>665 の言うとおり open(2) はディレクトリを線形探索するので、
ひとつのディレクトリに数万ファイルとかあるとそれなりに重くなる。

ので、ファイルはディレクトリ細かく分けて配置するのが良い。
たとえば ./a/b/c/abc.dat みたいな感じにディレクトリ切るのがおすすめ。