[perl #132104] [JVM] EvalServer seems to leak memory

2017-10-12 Thread Christian Bartolomaeus via RT
On Sat, 23 Sep 2017 12:28:53 -0700, barto...@gmx.de wrote:
> 3) Feeding the EvalServer with a program that calls 'run' (or
> Proc::Async directly) does heavily leak memory, threads and what not
> (again assuming a clean EvalServer instance started as above):
> 
> $ echo 'run("echo", "42");' > foo.p6
> $ for i in {1..500}; do ./eval-client.pl TESTTOKEN run foo.p6; done

I'm still trying to find the cause of the memory leak. Part of the problem 
seems to be that with each invokation of './eval-client.pl TESTTOKEN run 
foo.p6' three or four additional threads are started. Those threads are never 
stopped.

Some debug statements in src/core/ThreadPoolScheduler.pm indicate that with 
each invokation (s.a.) a new AffinityWorker instance and a new GeneralWorker 
instance are created (and at least one other thread). I guess those newly 
started Threads stay around until the EvalServer is killed.


[perl #132104] [JVM] EvalServer seems to leak memory

2017-09-23 Thread Christian Bartolomaeus via RT
On Sat, 16 Sep 2017 07:31:18 -0700, alex.jakime...@gmail.com wrote:
> From this discussion https://irclog.perlgeek.de/perl6-dev/2017-09-
> 16#i_15171820
> 
> 4) the EvalServer seems to leak memory. it's no longer possible to run
> 'make spectest', even with -Xmx6000m

My findings so far:

1) The EvalServer does not leak memory per se. Assuming a clean EvalServer 
instance has been started with './perl6-eval-server -cookie TESTTOKEN -app 
./perl6.jar' the following does not leak memory:

$ echo 'say 42;' > foo.p6
$ for i in {1..500}; do ./eval-client.pl TESTTOKEN run ./foo.p6; done

2) Using 'run' (or calling Proc::Async directly) does not leak memory:

$ ./perl6-j -e 'for ^5000 { run("echo", "42") }'

3) Feeding the EvalServer with a program that calls 'run' (or Proc::Async 
directly) does heavily leak memory, threads and what not (again assuming a 
clean EvalServer instance started as above):

$ echo 'run("echo", "42");' > foo.p6
$ for i in {1..500}; do ./eval-client.pl TESTTOKEN run foo.p6; done


[perl #132104] [JVM] EvalServer seems to leak memory

2017-09-23 Thread Christian Bartolomaeus via RT
On Sat, 16 Sep 2017 07:31:18 -0700, alex.jakime...@gmail.com wrote:
> From this discussion https://irclog.perlgeek.de/perl6-dev/2017-09-
> 16#i_15171820
> 
> 4) the EvalServer seems to leak memory. it's no longer possible to run
> 'make spectest', even with -Xmx6000m

My findings so far:

1) The EvalServer does not leak memory per se. Assuming a clean EvalServer 
instance has been started with './perl6-eval-server -cookie TESTTOKEN -app 
./perl6.jar' the following does not leak memory:

$ echo 'say 42;' > foo.p6
$ for i in {1..500}; do ./eval-client.pl TESTTOKEN run ./foo.p6; done

2) Using 'run' (or calling Proc::Async directly) does not leak memory:

$ ./perl6-j -e 'for ^5000 { run("echo", "42") }'

3) Feeding the EvalServer with a program that calls 'run' (or Proc::Async 
directly) does heavily leak memory, threads and what not (again assuming a 
clean EvalServer instance started as above):

$ echo 'run("echo", "42");' > foo.p6
$ for i in {1..500}; do ./eval-client.pl TESTTOKEN run foo.p6; done


[perl #132104] [JVM] EvalServer seems to leak memory

2017-09-16 Thread via RT
# New Ticket Created by  Aleks-Daniel Jakimenko-Aleksejev 
# Please include the string:  [perl #132104]
# in the subject line of all future correspondence about this issue. 
# https://rt.perl.org/Ticket/Display.html?id=132104 >


>From this discussion https://irclog.perlgeek.de/perl6-dev/2017-09-16#i_15171820

4) the EvalServer seems to leak memory. it's no longer possible to run 'make 
spectest', even with -Xmx6000m