On Sat, 12 Sep 2009, Ivica Ico Bukvic wrote:
Second that. I would love to hear more about the hexloader. Is this a part of the regular distribution or only pd-extended? Also, why is zexy not built as a lib rather than being a collection of files? Does it have lower memory footprint this way?
it's higher in several ways. Each additional dlopen() takes one filehandle and each filehandle probably takes a lot more RAM than the machine code of the average zexy class. Given dlopen() uses mmap() which loads the *.pd_linux file content on-demand (in 4k blocks), one big *.pd_linux file is more memory-efficient than one-class-per-file, even when using a low number of different classes. On top of that, if your external takes 1k, it's padded to 4k, and if it takes 4.001k, it's padded to 8k, etc.
however, if you loaded all of pd-extended as big libs, it would have a greater virtual-memory-size than one-class-per-file, but that doesn't have any advantage in practice.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard, Montréal, Québec. téléphone: +1.514.383.3801