At 6:24 AM -0700 10/27/04, Gisle Aas wrote:
Dan Sugalski <[EMAIL PROTECTED]> writes:

                                             Bytecode files on-disk are
 shared across all the processes in the system, so you only get one
 in-memory copy of a file, which saves both RAM and load time if you're
 using a file that another process is using.

I assume this means that the plan is to mmap these files. Are most systems happy with hundreds (or thousands) of mapped sections of memory or are there some negative performance implications of doing that?

Most systems I know about are unhappy with hundreds or thousands of mmaped segments per-process, but that's generally not a problem for that many segments for the system as a whole. I think that mmap shares underlying code paths with the code to map in shared libraries most places, so we shouldn't have to worry about it. If things fail, we can always fall back to an alternate plan.


How about the code JITed from the bytecodes. Will it be shared?

Unfortunately not, no. It wouldn't be a bad idea to expand the bytecode files to allow executable segments that could be used in trusted situations.
--
Dan


--------------------------------------it's like this-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to