rob_w has quit [Read error: Connection reset by peer]
rob_w_ has joined #picolisp
<beneroth>
abu[m], reducing fragmentation by having specific database files for specific entities (instead of having all entities with similar blocksize in same single database file) should (theoretically) improve probability of hitting filesystem cache, agreed?
<beneroth>
or is this academic, either go full benchmark and optimize for real or just keep one file per blocksize for simplicity (and storage space optimization) ?
<abu[m]>
Only if those near entities are likely to be accessed at the same time
<abu[m]>
More important is not to spread single objects across distant blocks
<abu[m]>
they are always accessed at the same time
<beneroth>
yeah agreed
<abu[m]>
And to have tree nodes close to each other
<abu[m]>
Best one tree per file
<abu[m]>
So as far as I measured, the index trees are the critical part, not the objects
<beneroth>
T, I see. Though I have way to many trees for that.. probably only worthwhile to give the most used trees their complete own file
<abu[m]>
That's why 'create' imports one tree after the other
<beneroth>
ok, yes makes sense
<beneroth>
I do a big dump import, with a single commit at the end.. this might still spread the tree all over the place, right?
<beneroth>
yeah I guess it does
<abu[m]>
yes
<beneroth>
I see. thanks
<abu[m]>
Instead of a single commit at the end, one every 10000 objects or so seems best
<abu[m]>
(at (0 . 1000) (commit))
<beneroth>
T, though no influence on external symbol / tree fragmentation I guess