[Build 108] Memory leak

RC108 - after some time (hours) the used memory is filled up and the app will get very slowly...there must be some issue to solve
Attachments
No attachments
  • Votes 0
  • Project StrategyQuant X
  • Type Bug
  • Status Fixed
  • Priority High

History

h
#1

hankeys

12.08.2018 21:27

Task created

h
#2

hankeys

12.08.2018 21:27

Attachment mem.jpg added

IH
#3

clonex / Ivan Hudec

13.08.2018 08:33
i have same problem
ZP
#4

Zbynek

13.08.2018 11:19

Attachment SQX 108 BUG.png added

After a few hours of fast building it slows down very significantly and start displaying a message that the app does not responding for a few seconds periodically. However the building process is still very slowly running. When I tried to stop the building process by pressing STOP button - it does not respond so I am not able to save the work... 
ZP
#5

Zbynek

13.08.2018 11:23

Subject changed from memory leak to [Build 108] Memory leak

ZP
#6

Zbynek

13.08.2018 11:30
One more observation - I have 64GB memory in total. In SQX I have a settings to use 32 GB of memory but SQX uses only 16GB of the memory. Is this OK?
ZP
#7

Zbynek

15.08.2018 11:10
It seems that the memory leak is caused by the option "Use offheap memory". When I switched it off it runs with reasonable constant memory allocation. Thanks Hankeys for this tip.
MF
#8

Mark Fric

23.08.2018 13:02

Status changed from New to Waiting for information

I cannot reproduce this issue. There doesn't seem to be any memory leak connected to  "Use offheap memory". If it happens can you switch one of the small info charts to show Off-heap memory info if it really takes that much memory?


The problem with slowdown is connected to memory usage - when all available memory is full, Java slows down extremely and cannot work properly.

The solution is either to use more memory or decrease population size or number of islands, so that program uses less memory.



One more observation - I have 64GB memory in total. In SQX I have a settings to use 32 GB of memory but SQX uses only 16GB of the memory. Is this OK?


it is not correct. If you have configured 32 GB of memory you should see it on the chart. Where did you configure it, using SQ UI?

Can you attach StrategyQuantX.config file here

h
#9

hankeys

24.08.2018 07:38
já teda nevím, problémy s pamětí tady s novým buildem 108 reportovola několik uživatelů (napříč procesory a velikostí RAM) - není to vůbec problém nastavení, ať si nastavím kolik chci islandů (1-max5), ať si nastavím jak chci velkou initial population 100-max 1000 tak vždycky velmi rychle (otázka hodin) se nový build jaksi zahltí a další práce s ním je nemožná


a to mám 128 GB RAM, v SQ nastaveno asi 60, ale hned po chvíli to začne využívat kolem 40 GB RAM a k tomu opravdu nevidím důvod - pokud to dobře pamět promazává, protože v databance mám ve svém nastavení generování pár strategií (už vše filtruju přes krosčeky), takže co si SQ drží v těch 40 gigech opravdu netuším a dobře to nebude


pokud se tato otázka nijak nepohla v 109, tak tu budeme mít dalších 14 dní, kdy program nepůjde téměř vůbec rozumně používat - po pár hodinách se musí vždy ručně build zastavit, aby k "zahlcení nedošlo" - uvidíme tedy co 109 build


pro mě je tedy zásadní otázkou - co si drží v 40 gigech ramky, když v databance má stovky strategií a každá generace islandů je pravidelně restartována?

MF
#10

Mark Fric

24.08.2018 08:31
budu to jeste testoovat, zkusim prijit na problem
pt
#11

petr tichy

24.08.2018 13:23

To Hankeys a Mark Fric

Nebylo by jednodušší, dkyby se Mark Fric připojil rovnou na ten počítač a podíval se na ten problém v místě kde vzniká, případně v čase kdyb vzniká?

Přijde mi to jednodušší a časově efektivněší, než se pokoušet nasimulovat podmínky u sebe.



MF
#12

Mark Fric

25.08.2018 03:54

Priority changed from Normal to High

pripojit na pocitac se muzu, pokud je to VPSka a date mi pristup. Ale z beziciho programu mozna moc nezjistim, hlavne pokud uz nereaguje. 


To extremni spomaleni z commentu #4 je zpusobeno zaplnenim pameti, na screenshotu je videt, ze je vyuzita na maximum. Otazka je proc se tak zaplnila, pokud se to deje porad potreboval bych build config, abych to u sebe nasimuloval.



pro mě je tedy zásadní otázkou - co si drží v 40 gigech ramky, když v databance má stovky strategií a každá generace islandů je pravidelně restartována?


Screenshot z commentu #2 sice ukazuje ze je pouzito cca 20 GB pameti, ale celkove je k dispozici asi 50 GB, takze tam zadne zaplneni pameti neni. Java nema duvod uvolnovat pamet, kdyz je ji tolik k dispozici.

Zpusobuje ta situace ale nejake spomaleni?


Hankeys, Zbynku Tichy, mohli by jste se prilozit vas build config?


Mohli by jste jeste overit, jestli se ta pamet zaplni i kdyz mate spustenou Random generation?


A posledni vec - mate v Performance -> Memory zaskrtnuto "Use offheap memory" nebo ne?


Ja to zkousim u sebe, ale i po nekolika hodinach behu se pamet drzi na stejne urovni cca 8 GB (mam nastaveno max 32gb) a neroste. Generovani bezi porad zhruba stejne rychle.

h
#13

hankeys

29.08.2018 08:48

Attachment mem.jpg added

po 11 hodinách generování - nastaveno max paměti ze 128 GB možných.


generování na 4 islandy, 100 strategií na jeden, takže initial population 400


v databance zatím pouze 727 strategií a už teď je práce s SQ velmi pomalá, i když ve windows mám stále 30 GB paměti volné


prostě to téměř hned na začátku vylítne na 40 GB, ta zelená lajna se pak takto drží, červená po restartu generace o něco cukne dolej, ale postupně se to všechno zaplňuje, až na aktuálních necelých 80 GB paměti v zelené oblasti


off heap memory info - 9 objects, memory 14 MB


když stopnu generování, tak se červená lajna ustálí někde na 25 GB a zelená stojí stále nahoře na nějakých 70 GB


v task manageru pak vidím, že si SQ bere 73 GB ram, i když je aktuálně stoplé generování - co si v nich drží netuším - strategií je v databance minimum

h
#14

hankeys

29.08.2018 08:55
když pak SQ restartnu a držím v databance těch stejných 727 strategií, tak je obsazeno pouze 3 GB RAM
MF
#15

Mark Fric

29.08.2018 10:12

Status changed from Waiting for information to Fixed

resil jsem to dlouho, a myslim, ze je to vyreseno.


Problem s pameti byl zpusoben asi pouzitim nevhodneho Java GC. V novem releasu updatnem na Javu 10, a bude pouzivat defaultni nejrychlejsi ParallelGC, ktery funguje i s velkou pameti.

A taky jsme tam pridali moznost periodicky cistit pamet - i kdyz toto by nemelo byt treba pouzivat.

h
#16

hankeys

29.08.2018 10:17
ok, super zprávy...

Votes: 0

Drop files to upload

or

choose files

Max size: 5MB

Not allowed: exe, msi, application, reg, php, js, htaccess, htpasswd, gitignore

...
Wait please