spawning (exec*/wait) shows non-constant time if memory grows
Ondřej Bílka
neleai@seznam.cz
Fri Jan 24 10:35:00 GMT 2014
On Thu, Jan 23, 2014 at 07:20:28PM +0100, Dirk Bächle wrote:
> Hi there,
>
> I've already posted my actual question to the kernel-dev mailing list at:
>
> https://lkml.org/lkml/2014/1/14/632
>
> , but got no reaction so far. So I'd really appreciate if someone
> knowledgeable could have a look at my findings and confirm to me
> that the problem I see is a kernel issue...and not related to the
> glibc itself.
> What it's basically about is: I spawn a large number of simple child
> processes sequentially (they don't run in parallel!) while letting
> the memory of the parent process go up with malloc(). Over the
> number of spawned processes the runtime for each execve/wait seems
> to grow, which is not what I would expect.
>
> Please find some more infos in the link above, if you're interested.
> Any pointers to more documentation, discussions or advice on how to
> proceed would be welcome.
>
> I also apologize for cross-posting this problem, but I just want to
> ensure that I tried the right forum...instead of getting no reply
> because I "screwed up" and sent a glibc question to the kernel
> folks. ;)
>
> Thanks a lot in advance for your answers.
>
How does memory usage affect that? Could you get same slowdown just by
preallocating same amount of memory?
More information about the Libc-help
mailing list