Een van mijn applicaties lijkt wel of geen memory leak te hebben. Ik twijfel omdat er zowel signalen zijn dat die er niet is, maar ook signalen van wel.
Waarom denk ik van wel:
- VMPeak stijgt periodiek, wat ik monitor binnen mijn programma.
- Kernel OOM killer komt langs
Waarom denk ik van niet:
- Valgrind vind geen openstaand geheugen na afsluiten van programma na een tijdje draaien, dat zegt tenminste dat al mijn garbage collectors hun werk doen.
- libleak vind geen lekken terwijl mijn programma draait* Alle langlopende geheugen allocaties horen ook gealloceerd te zijn gedurende de levenscyclus van mijn programma.
Mijn programma draait binnen een LXC container op een Proxmox (Debian X86) host. Het is trouwens multithreaded waardoor mtrace niet werkt.
Er blijven dus een aantal vragen onbeantwoord:
- Lek ik nu wel of geen geheugen?
- Als ik wel een geheugen lek heb, hoe kom ik er dan achter waar als de tools die ik tot nu toe gebruik geen helderheid kunnen geven?
- Als er geen geheugen lek is, waarom stijgt dan mijn VMPeak?
*libleak kijkt naar geheugen allocaties die na langer dan X aantal seconden nog niet opgeruimd zijn.
Waarom denk ik van wel:
- VMPeak stijgt periodiek, wat ik monitor binnen mijn programma.
- Kernel OOM killer komt langs
Waarom denk ik van niet:
- Valgrind vind geen openstaand geheugen na afsluiten van programma na een tijdje draaien, dat zegt tenminste dat al mijn garbage collectors hun werk doen.
- libleak vind geen lekken terwijl mijn programma draait* Alle langlopende geheugen allocaties horen ook gealloceerd te zijn gedurende de levenscyclus van mijn programma.
Mijn programma draait binnen een LXC container op een Proxmox (Debian X86) host. Het is trouwens multithreaded waardoor mtrace niet werkt.
Er blijven dus een aantal vragen onbeantwoord:
- Lek ik nu wel of geen geheugen?
- Als ik wel een geheugen lek heb, hoe kom ik er dan achter waar als de tools die ik tot nu toe gebruik geen helderheid kunnen geven?
- Als er geen geheugen lek is, waarom stijgt dan mijn VMPeak?
*libleak kijkt naar geheugen allocaties die na langer dan X aantal seconden nog niet opgeruimd zijn.
Sinds de 2 dagen regel reageer ik hier niet meer