[so] [Tema4][Linux] Memcheck failed

Paul Olaru olarupaulstelian97 at gmail.com
Sat Apr 27 15:30:42 EEST 2019


Revin. Făcând valgrind ./run_test 15 pe mașina virtuală de SO obțin mereu
all heap blocks are freed și observ că se consumă tot RAM-ul (1.5GB) plus
200-300MB de swap (una din rulări s-a dus chiar la vreo 400MB de swap).
Testul 19 urcă și el la vreo 700MB de consum dar e fine că în configurația
originală avem 1GB de swap.

On Sat, Apr 27, 2019, 3:20 PM Paul Olaru <olarupaulstelian97 at gmail.com>
wrote:

> O să încerc să cresc RAM-ul la 1.5GB (atâta plus swap ar trebui să fie
> suficient). În timpul testului pe un alt tab chiar văd cum memoria liberă
> scade (watch -n0.1 free -h), inclusiv swap-ul, până își ia kill, pe mașina
> de SO și cu checkerul.
>
> Join-urile le dau după ce se termină tot. Ar trebui să le dau mai din
> timp? Tema cu problema e de asemenea și pe VMchecker și pe git
> (paul_stelian.olaru).
>
> On Sat, Apr 27, 2019, 3:17 PM Mihai Barbulescu <b12mihai at gmail.com> wrote:
>
>> Salut,
>>
>> Testele "personale" si WSL-ul - am mai spus ca nu ma intereseaza.
>> Singurul relevant e vm-ul de SO. Nu oferim suport si nu stam sa
>> investigam pe alte tipuri de setup.
>>
>> Daca aloci mai multe resurse VM-ului de SO - mai apare acel OOM kill?
>>
>> De asemenea, fara sa ma uit pe tema ca nu am cum zilele astea: esti
>> sigur ca astepti corect toate threadurile sau ca ti-ai facut
>> sincronizarea cum trebuie? Am mai vazut filmul in care ruland de 3 ori
>> consecutiv acel test sa pice. Incearca si un helgrind in VM-ul de SO
>> pe testul cu round robin.
>>
>> On Sat, 27 Apr 2019 at 00:54, Paul Olaru <olarupaulstelian97 at gmail.com>
>> wrote:
>> >
>> > Salut, testul de round robin îmi face și mie probleme. Pe VMchecker îmi
>> pică, pe o mașină virtuală de Linux a mea primesc în mod consistent mesajul
>> de Killed (și checkerul face fițe: îmi dă fail pe toate, dar rulând manual
>> par să meargă toate celelalte) – out of memory în Valgrind. Pe mașina de SO
>> îmi dau pass și același kill de la out of memory. Pe WSL, îmi dă pass și
>> acesta dar Valgrind consumă peste 1.4GB de RAM când termină, ceea ce este
>> peste resursele oferite atât de mașina mea custom cât și de cea de SO,
>> ambele fiind setate la 512MB (și probabil depășește și capacitatea
>> swap-ului?)
>> >
>> >
>> >
>> > Celelalte îmi trec și pe VMchecker.
>> >
>> >
>> >
>> > Sent from Mail for Windows 10
>> >
>> >
>> >
>> > From: Mihai Barbulescu via so
>> > Sent: Wednesday, April 24, 2019 10:10 PM
>> > To: Rares Folea
>> > Cc: Sisteme de Operare
>> > Subject: Re: [so] [Tema4][Linux] Memcheck failed
>> >
>> >
>> >
>> > Salut Rares,
>> >
>> >
>> >
>> > Tu ce comanda folosesti ca sa rulezi testele pe  Linux?
>> >
>> > Se foloseste comanda make -f Makefile.checker.
>> >
>> > Folosesti si ultima versiune de pe github [1] - e33f8600 ?
>> >
>> >
>> >
>> > Vedeti ca am facut un upgrade ca erau punctajele aiurea, tu esti
>> >
>> > singurul care a submis tema, ti-am facut eu resubmit la ea pe
>> >
>> > vmchecker acum ai 95 nu 90 cum afisa el aiurea.
>> >
>> >
>> >
>> > Faceti git pull si de pe:
>> https://github.com/systems-cs-pub-ro/so-assignments
>> >
>> > versiunea noua ar trebui sa fie: 2126edd
>> >
>> >
>> >
>> > In rest am verificat testele si sunt consistente github vs. vmchecker
>> >
>> > - deci nu inteleg cum la tine sunt numerotate aiurea.
>> >
>> >
>> >
>> > [1]
>> https://github.com/systems-cs-pub-ro/so-assignments/commit/e33f86007baf2e2a25e6827b94613c62ec298250
>> >
>> >
>> >
>> > On Wed, 24 Apr 2019 at 20:29, Mihai Barbulescu <b12mihai at gmail.com>
>> wrote:
>> >
>> > >
>> >
>> > > Salut.
>> >
>> > >
>> >
>> > > Mulțumesc ca ai semnalat. E posibil sa fie o inconsistenta între
>> github și vmchecker trebuie sa o verific.
>> >
>> > >
>> >
>> > > Cu stimă,
>> >
>> > > Mihai Bărbulescu
>> >
>> > >
>> >
>> > >
>> >
>> > > -------- Original Message --------
>> >
>> > > Subject: Re: [so] [Tema4][Linux] Memcheck failed
>> >
>> > > From: Rares Folea
>> >
>> > > To: Mihai Barbulescu
>> >
>> > > CC: Sisteme de Operare
>> >
>> > >
>> >
>> > >
>> >
>> > > Salut Mihai,
>> >
>> > >
>> >
>> > > Testul 16) din setul de teste locale se refera la “Test Round Robin”,
>> dar pe vmchecker, acest test are indentificatorul 15).
>> >
>> > > Referitor la modul de rulare, pe masina virtuala de linux rulam
>> testul 16 astfel:
>> >
>> > >
>> >
>> > > LD_LIBRARY_PATH=. valgrind --tool=memcheck ./_test/run_test 16
>> >
>> > >
>> >
>> > > Outputul valgrind-ului este:
>> >
>> > > ==16733== Memcheck, a memory error detector
>> >
>> > > ==16733== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et
>> al.
>> >
>> > > ==16733== Using Valgrind-3.15.0.GIT and LibVEX; rerun with -h for
>> copyright info
>> >
>> > > ==16733== Command: ./_test/run_test 16
>> >
>> > > ==16733==
>> >
>> > > Killed
>> >
>> > >
>> >
>> > > Logurile de sistem ce apar indica:
>> >
>> > > Apr 24 20:09:14 vagrant kernel: [118109.973987] Out of memory: Kill
>> process 16733 (memcheck-amd64-) score 863 or sacrifice child
>> >
>> > > Apr 24 20:09:14 vagrant kernel: [118109.976517] Killed process 16733
>> (memcheck-amd64-) total-vm:4716800kB, anon-rss:302812kB, file-rss:0kB,
>> shmem-rss:0kB
>> >
>> > > Apr 24 20:09:14 vagrant kernel: [118110.013082] oom_reaper: reaped
>> process 16733 (memcheck-amd64-), now anon-rss:0kB, file-rss:0kB,
>> shmem-rss:0k
>> >
>> > >
>> >
>> > > Acest comportament se manifesta doar pe masina virtuala care ruleaza
>> pe calculatorul meu, doar pe testul 16. (celelalte teste nu dau erori la
>> verificarea cu valgrind).
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > > Dar pe vmchecker trec toate testele de memcheck. :)
>> >
>> > > Multumesc,
>> >
>> > > Rares
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > > On 24 Apr 2019, at 14:30, Mihai Barbulescu <b12mihai at gmail.com>
>> wrote:
>> >
>> > >
>> >
>> > > Salut Rares,
>> >
>> > >
>> >
>> > > Sunt mai multe chestii pe care nu le inteleg:
>> >
>> > >
>> >
>> > > 1. Cum adica test 16 (15 pe vm)? Ele au un identificator clar, deci nu
>> >
>> > > inteleg ce test pica
>> >
>> > > 2. OOM manager din Linux da kill atunci cand se fac alocari (page
>> >
>> > > faults) excesive peste o limita setata daca imi amintesc bine de
>> >
>> > > ulimit. Eroarea pare una de vagrant, deci e posibil sa fi pornit
>> >
>> > > folosind vagrant masina si sa ti se fi dat kill la vagrant.
>> >
>> > >
>> >
>> > > Ne dai atat de putine detalii despre cum rulezi incat nu putem face
>> >
>> > > altceva decat sa speculam mai ceva ca la bursa.
>> >
>> > >
>> >
>> > > On Wed, 24 Apr 2019 at 10:16, Rares Folea via so <
>> so at cursuri.cs.pub.ro> wrote:
>> >
>> > >
>> >
>> > >
>> >
>> > > Multumesc de hint.
>> >
>> > > Intradevar, problema era ca nu asteptam in toate scenariile, dupa
>> toate threadurile.
>> >
>> > >
>> >
>> > > Acum vad ca trec toate testele de memorie pe vmchecker.
>> >
>> > >
>> >
>> > >
>> >
>> > > Doar pe masina virtuala, cand rulez valgrind peste acel test 16 (15
>> pe vm), logurile de sistem indica out-of-memory:
>> >
>> > > Apr 24 10:11:14 vagrant kernel: [109075.123564] Out of memory: Kill
>> process 11250 (memcheck-amd64-) score 866 or sacrifice child
>> >
>> > > Apr 24 10:11:14 vagrant kernel: [109075.124387] Killed process 11250
>> (memcheck-amd64-) total-vm:4736696kB, anon-rss:309400kB, file-rss:0kB,
>> shmem-rss:0kB
>> >
>> > > Apr 24 10:11:14 vagrant kernel: [109075.153180] oom_reaper: reaped
>> process 11250 (memcheck-amd64-), now anon-rss:0kB, file-rss:0kB,
>> shmem-rss:0kB
>> >
>> > >
>> >
>> > >
>> >
>> > > On 23 Apr 2019, at 22:27, Razvan Crainea <razvan.crainea at gmail.com>
>> wrote:
>> >
>> > >
>> >
>> > > Salut, Rareș!
>> >
>> > >
>> >
>> > > Cel mai probabil nu aștepți toate thread-urile, de acolo apare
>> leak-ul.
>> >
>> > > Legat de faptul că că procesul este omorât, poți verifica log-urile de
>> >
>> > > sistem să te asiguri că nu este un crash?
>> >
>> > >
>> >
>> > > Numai bine,
>> >
>> > > Răzvan
>> >
>> > >
>> >
>> > > On Tue, Apr 23, 2019 at 9:10 PM Rares Folea via so <
>> so at cursuri.cs.pub.ro> wrote:
>> >
>> > >
>> >
>> > >
>> >
>> > > Buna seara!
>> >
>> > >
>> >
>> > > Ma confrunt cu urmatoarele probleme referitoare la testele de memorie:
>> >
>> > >
>> >
>> > > La rularea pe masina virtuala cu valgrind a testelor 15 si 19 (14 si
>> 18 pe vmchecker), obtin 2 erori similare:
>> >
>> > >
>> >
>> > > ==4684== 288 bytes in 1 blocks are possibly lost in loss record 2 of 2
>> >
>> > > ==4684==    at 0x4C3204A: calloc (vg_replace_malloc.c:762)
>> >
>> > > ==4684==    by 0x40134A6: allocate_dtv (dl-tls.c:286)
>> >
>> > > ==4684==    by 0x40134A6: _dl_allocate_tls (dl-tls.c:530)
>> >
>> > > ==4684==    by 0x5049227: allocate_stack (allocatestack.c:627)
>> >
>> > > ==4684==    by 0x5049227: pthread_create@@GLIBC_2.2.5
>> (pthread_create.c:644)
>> >
>> > > ==4684==    by 0x4E3E65B: so_fork (in
>> /home/student/l3-so-assignments/4-scheduler/checker-lin/libscheduler.so)
>> >
>> > > ==4684==    by 0x10ABDE: test_sched_handler_15 (test_exec.c:282)
>> >
>> > > ==4684==    by 0x4E3E47E: start_thread (in
>> /home/student/l3-so-assignments/4-scheduler/checker-lin/libscheduler.so)
>> >
>> > > ==4684==    by 0x50486DA: start_thread (pthread_create.c:463)
>> >
>> > > ==4684==    by 0x538188E: clone (clone.S:95)
>> >
>> > >
>> >
>> > > ==4684==      possibly lost: 576 bytes in 2 blocks
>> >
>> > >
>> >
>> > > ==4684== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from
>> 0)
>> >
>> > >
>> >
>> > > Nu reusesc sa-mi dau seama de la ce ar putea fi cele doua erori si de
>> ce se manifesta doar la aceste doua teste.
>> >
>> > > Mentionez ca astept terminarea thread-urilor cu pthread_join, care ar
>> trebui sa efectueze eliberarea resurselor din structura pthread_t.
>> >
>> > > In plus, la testul 16 (15 vmchecker), se pare ca valgrind ocupa mult
>> prea multa memorie locala, iar ca urmare este omorat.
>> >
>> > >
>> >
>> > > student at vagrant:~/l3-so-assignments/4-scheduler/checker-lin$
>> LD_LIBRARY_PATH=. valgrind --tool=memcheck --track-origins=yes
>> --leak-check=full _test/run_test 16
>> >
>> > > ==4693== Memcheck, a memory error detector
>> >
>> > > ==4693== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et
>> al.
>> >
>> > > ==4693== Using Valgrind-3.15.0.GIT and LibVEX; rerun with -h for
>> copyright info
>> >
>> > > ==4693== Command: _test/run_test 16
>> >
>> > > ==4693==
>> >
>> > > Killed
>> >
>> > >
>> >
>> > >
>> >
>> > > Multumesc
>> >
>> > > _______________________________________________
>> >
>> > > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > > --
>> >
>> > > Răzvan Crainea
>> >
>> > >
>> >
>> > >
>> >
>> > > _______________________________________________
>> >
>> > > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > >
>> >
>> > > --
>> >
>> > > Cu stimă,
>> >
>> > > Mihai Bărbulescu
>> >
>> > >
>> >
>> > >
>> >
>> >
>> >
>> >
>> >
>> > --
>> >
>> > Cu stimă,
>> >
>> > Mihai Bărbulescu
>> >
>> > _______________________________________________
>> >
>> > http://ocw.cs.pub.ro/courses/so/info/lista-discutii
>> >
>> >
>>
>>
>>
>> --
>> Cu stimă,
>> Mihai Bărbulescu
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20190427/c57fcf36/attachment-0001.html>


More information about the so mailing list