I actually ran into this issue too. I have a routine that calculates fast 
ion orbits that uses a lot of memory (90%). Here is the code 
<https://gist.github.com/lstagner/52cb5a2ec88b7b734035f013ca41e650> (sorry 
its not very clean).  I tried to run the function `make_distribution_file` 
in a loop in julia but it never released the memory between calls. I tried 
inserting `gc()` manually but that didn't do anything either.

-Luke 

On Monday, September 19, 2016 at 3:08:52 PM UTC-7, K leo wrote:
>
> The only package used (at the global level) is DataFrames.  Does that not 
> release memory?
>
> On Tuesday, September 20, 2016 at 6:05:58 AM UTC+8, K leo wrote:
>>
>> No.  After myfunction() finished and I am at the REPL prompt, top shows 
>> Julia taking 49%.  And after I did gc(), it shows Julia taking 48%. 
>>
>> On Tuesday, September 20, 2016 at 4:05:56 AM UTC+8, Randy Zwitch wrote:
>>>
>>> Does the problem go away if you run gc()?
>>>
>>>
>>>
>>> On Monday, September 19, 2016 at 3:55:14 PM UTC-4, K leo wrote:
>>>>
>>>> Thanks for the suggestion about valgrind.
>>>>
>>>> Can someone please let me first understand the expected behaviour for 
>>>> memory usage.
>>>>
>>>> Let's say when I first starts Julia REPL it takes 5% of RAM (according 
>>>> to top).  Then I include "myfile.jl" and run myfunction().  During the 
>>>> execution of myfunction(), memory allocation of Julia reaches 40% of RAM 
>>>> (again according to top).  Say running myfunction() involves no allocation 
>>>> of global objects - all object used are local.  Then when myfunction() 
>>>> finished and I am at the REPL prompt, should top show the memory usage of 
>>>> Julia drops down to the previous level (5% of RAM)?  My current 
>>>> observation 
>>>> is that it doesn't.  Is this the expected behaviour?
>>>>
>>>>

Reply via email to