A short addendum:

On Nov 25 11:38, Corinna Vinschen wrote:
> That means:
> 
> - i_all_lf as array incures extra cost only at fork/execve time by
>   having to copy additional 64K over to the child process.

    If we count the cygheap copy here, we also have to count the
    mallocs in the other two cases...
> 
> - i_all_lf as malloced pointer in inode_t incures extra cost once
>   per created inode (malloc), once per execve (malloc), once per
>   deleted inode (free).

    Plus an extra 64K user heap copy at fork(2) time.

> - i_all_lf as local variable incures extra cost once per thread
>   (malloc), per process, under ideal conditions. 

    Plus an extra 64K user heap copy at fork(2) time.


Corinna

Reply via email to