On Sun, Dec 01, 2013 at 09:08:37AM -0500, Paul Davis wrote: > in ardour, the purpose of the disk i/o thread (the "butler") is > primarily to organize buffering within user space based on observed (but > very occasional) delays in I/O. it is not attempting to do better than the > kernel in handling read-ahead and in fact for quite a lot of situations, > ardour really does rely on the kernel's own buffering to do a good job.
But surely ardour does look ahead in the timeline, to open()/seek()/read() a new file a few seconds before the data is actually required ? Or does it keep all files open all the time ? Suppose you have a timeline like ABCACDBABCCA where each char is a very short region (maybe just a fraction of a second) and the actual char refers to the file that region is read from. For example in 'CC' near the end the first C could be a few seconds of music ending in silence and the second C a repeat of 400 ms of the end of the first (e.g to remove a cough or the sound of a score page being turned), while both are just a few seconds away from the earlier occurences of C. Would each of the regions be handled independent of any others ? Ciao, -- FA A world of exhaustive, reliable metadata would be an utopia. It's also a pipe-dream, founded on self-delusion, nerd hubris and hysterically inflated market opportunities. (Cory Doctorow) _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/listinfo/linux-audio-dev
