Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

curenje memorije

[es] :: .NET :: curenje memorije

[ Pregleda: 4424 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

acca
Aleksandar
Beograd

Član broj: 5442
Poruke: 44
62.108.108.*



Profil

icon curenje memorije02.11.2004. u 18:31 - pre 236 meseci
Pozdrav svima,

Nov sam na ovom forumu, pa se unapred izvinjavam ako je pitanje koje cu postaviti nekome glupo.

Dakle,

u firmi u kojoj radim (administriram w2k3 mrezu) trenutno se uvodi novi informacioni sistem. Aplikacija je razvijana u c# i vrti se na svim radnim stanicama. Na database serveru je SQL Server 2000. Postoji i treci server (aplikativni).

Problem je sledeci: nakon nekog vremena (pola sata ili vise) na radnim stanicama (wxp pro) u task manageru vidim da je upotreba memorije koju koristi ta aplikacija zaista velika (ide i do 300MB). Sto usporava racunare, smanjuje efikasnost rada i korisnici su nezadovoljni. Programeri iz firme koja je razvila aplikaciju kazu da je to tako normalno, i da je uzrok tome "arhitektura .Net frameworka i specificnosti c# jezika".

A sada pitanja:
Sta vi mislite, da li je moguce napraviti takvu aplikaciju koja ce oslobadjati memoriju i sprecavati tzv.(tako kazu ti programeri) "curenje memorije"?
I sta je u stvari to "curenje memorije"?
da li mozda ti programeri ne prikrivaju neko svoje neznanje, ili sam ja paranoican?


hvala unapred,
acca
 
Odgovor na temu

JogyII

Član broj: 29257
Poruke: 623
*.SMIN.panline.net.



Profil

icon Re: curenje memorije02.11.2004. u 18:34 - pre 236 meseci
300 MB je ipak malo preveliko, probaj da minimizujes, pa restorujes aplikaciju

So Long, and Thanks for All the Fish


 
Odgovor na temu

acca
Aleksandar
Beograd

Član broj: 5442
Poruke: 44
62.108.108.*



Profil

icon Re: curenje memorije02.11.2004. u 18:38 - pre 236 meseci
To cu probati sutra. Znam da kada restartujem aplikaciju, onda sve bude u redu neko vreme (pola sata), ali ja sam u stvari hteo znati da li je toliko velika potrosnja memorije nesto sto je za ocekivati ili ne.

Thnx anyway JogyII.
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
66.228.70.*



+6 Profil

icon Re: curenje memorije02.11.2004. u 19:02 - pre 236 meseci
Programeri su u pravu utoliko što .NET aplikacije (kao i Java npr) poveravaju .NET virtualnoj mašini da oslobađa memoriju kad ona nađe za shodno preko mehanizma koji se zove Garbage Collector (GC). Nažalost, ne postoji lak način da se "zaobiđe" GC, ali postoje tehnike da se optimizuje korišćenje memorije i u takvim uslovima. Pokaži programerima npr ovaj link (u stvari reklama za profajler, ali ipak ima korisnih informacija)

http://www.compuware.com/dl/memnet.pdf
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
66.228.70.*



+6 Profil

icon Re: curenje memorije02.11.2004. u 19:24 - pre 236 meseci
I totalno Off topic (mada je ovo u neku ruku izdaja braće programera, hehehe). Ne znam zašto ti kao mušterija uopšte treba da razmišljaš o takvim stvarima. Ako aplikacija koristi previše memorije i usporava sistem, zadatak programera je da reše taj problem ili bar da ti kažu kako da ga "zaobiđeš". Šta tebe briga za "arhitekturu .Net frameworka i specificnosti c# jezika"? Jedino ako ste baš zahtevali da rade program u C#u, ali zašto biste to radili?
 
Odgovor na temu

acca
Aleksandar
Beograd

Član broj: 5442
Poruke: 44
62.108.108.*



Profil

icon Re: curenje memorije02.11.2004. u 19:32 - pre 236 meseci
dragi tata,

Nije postojao nikakav eksplicitni zahtev za odredjenim programskim jezikom. A mene ovo interesuje jer je za razvoj aplikacije vec placeno prilicno puno para (~300.000 eur, imali su neku vezu), pa ako je moguce uraditi optimizaciju upotrebe racunarskih resursa, zeleo bih da ih pritisnem da to i urade.

hvala za link
 
Odgovor na temu

akrosoft
Dusan Mihajlovic
Beograd

Član broj: 31201
Poruke: 129
*.nat-pool.bgd.sbb.co.yu.

Sajt: www.RoditeljPortal.com


Profil

icon Re: curenje memorije02.11.2004. u 19:44 - pre 236 meseci
Dosta zavisi i od sta radi ta aplikacija, koje reserse koristi itd.... u principu .NET Framework, odnosno GC, ima problema sa time, ali je sve to resivo u manjoj ili vecoj meri sto naravno zavisi i od sposobnosti programera. GC bi trebalo da olaksava rad i sprecava takve stvari, ali u pojedinim slucajevima se ispostavlja drugacije, e u takvim slucajevima ga treba prisiliti da radi ono sto ti hoces (da oslobadjas resurse kako treba), a ne da ga pustis da radi kako on hoce. Mada, cesto je uzrok i nemarnost programera i pojedini resursi ostanu nepotrebno zauzeti i GC ne zna da li su potrebni ili ne pa ih ne oslobadja.
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.microsoft.com.



+18 Profil

icon Re: curenje memorije02.11.2004. u 19:54 - pre 236 meseci
Ja sam koristio .NET za jedan relativno veliki proizvod, i jedini put kada sam naisao na takve probleme je bio kada sam koristio native resurse (bilo da je memorija, fajlovi, handleovi) koje nisam na vreme brisao. GC je sam po sebi radio posao kako treba.

Ali Nemanja je u pravu, o tome treba da se brine onaj ko ti je prodao softver, a ne ti, dakle slobodno im kazi da imas problem sa kolicinom memorije koju program jede nakon duzeg rada. Ako im jos i zakacis neki perfmon grafikon koji prikazuje 48 sati rada sa recimo Process Size, Handle Count i GC counterima, to ce im obicno mnogo pomoci.
 
Odgovor na temu

JogyII

Član broj: 29257
Poruke: 623
*.SMIN.panline.net.



Profil

icon Re: curenje memorije02.11.2004. u 20:00 - pre 236 meseci
meni pada napamet jos jedna stvar, do 300 mb se vrlo tesko dolazi osim ako oni nisu recimo kesirali celu MS-SQL bazu na klijentu U MEMORIJI, recimo otvorili dataset i ocitali lepo sve tabele, i drze ih kesirane

naravno ako je to u pitanju to ce povuci jos dosta problema kasnije

So Long, and Thanks for All the Fish


 
Odgovor na temu

JogyII

Član broj: 29257
Poruke: 623
*.SMIN.panline.net.



Profil

icon Re: curenje memorije02.11.2004. u 20:01 - pre 236 meseci
usput nisam rekao da izadjes i udjes iz aplikacije, nego da je minimizujes i restorujes

So Long, and Thanks for All the Fish


 
Odgovor na temu

sasas
Saša Slavnić
radim za neke švabe

Član broj: 35478
Poruke: 617
195.246.3.*



Profil

icon Re: curenje memorije02.11.2004. u 20:01 - pre 236 meseci
Citat:
acca:
Nije postojao nikakav eksplicitni zahtev za odredjenim programskim jezikom.
...
ako je moguce uraditi optimizaciju upotrebe racunarskih resursa, zeleo bih da ih pritisnem da to i urade.


Celo ovo pitanje mi se cini malo glupo - jer nemas na osnovu cega da "pritisces" programere. Da li imate minimalnu konfiguraciju na kojoj softver radi u ugovoru? Garantovan broj klijenata koji mogu da koriste sistem, i sa kakvim performansama? Otezavajuca okolnost je sto softver radi, a to sto radi sporo ce ti programeri uvek proglasiti za feature, a ne bug (bilo to opravdano ili ne). Na kraju krajeva, ms nas je tome naucio kroz sve ove godine. Programeri ce ti demonstrirati da sistem radi, a ako nisi zadovoljan brzinom - kupi brzi procesor, vise rama, gigabit lan...

Inace, meni se isto cini da je rucni garbage collection, i to onako odokativno, mesarski, jedino realno resenje ako je softver vec gotov. Ms ne radi posao dobro automatski (ugradjeni GC mehanizam), a kupovina treceg resenja (profajlera i sl.) nije verovatna, u najmanju ruku :) Osim ako vi platite naravno, i ako se programerima bude dalo da uce jos jedan alat.

Javi u svakom slucaju sta si uradio, mozes nam svima ubuduce olaksati zivot ako smislite neko dobro resenje.

good luck!

ss.
When something is hard to do, then it's not worth doing.
 
Odgovor na temu

acca
Aleksandar
Beograd

Član broj: 5442
Poruke: 44
62.108.108.*



Profil

icon Re: curenje memorije02.11.2004. u 20:27 - pre 236 meseci
Citat:
JogyII: usput nisam rekao da izadjes i udjes iz aplikacije, nego da je minimizujes i restorujes

ok, shvatio sam te, to cu uraditi sutra kad dodjem na posao

Citat:
Reljam: dakle slobodno im kazi da imas problem sa kolicinom memorije koju program jede nakon duzeg rada. Ako im jos i zakacis neki perfmon grafikon koji prikazuje 48 sati rada sa recimo Process Size, Handle Count i GC counterima, to ce im obicno mnogo pomoci.

rekao sam im vec to. a sad ti meni reci, molim te, u kom performance objektu se nalaze ovi counteri koje navodis.

Citat:
JogyII: meni pada napamet jos jedna stvar, do 300 mb se vrlo tesko dolazi osim ako oni nisu recimo kesirali celu MS-SQL bazu na klijentu U MEMORIJI, recimo otvorili dataset i ocitali lepo sve tabele, i drze ih kesirane
naravno ako je to u pitanju to ce povuci jos dosta problema kasnije :(

mozes li mi reci kojih jos problema ce to povuci kasnije

 
Odgovor na temu

*.net

Član broj: 4660
Poruke: 138
*.informatika.com.



Profil

icon Re: curenje memorije03.11.2004. u 08:11 - pre 236 meseci
Na osnovu dosadasnjih poruka imam utisak da se radi o nekom ERP softveru. Da li si siguran da ste platili oko 300.000 eura? Bas sam juce slusao pricu o SAP-u koji ispada mnogo jeftiniji . Tako da bi mogli razmisljati u tom pravcu, ukoliko je zaista u pitanju poslovni softver.
 
Odgovor na temu

bokac
Beograd

Član broj: 19866
Poruke: 110
*.sbb.co.yu.



Profil

icon Re: curenje memorije03.11.2004. u 14:48 - pre 236 meseci
Citat:
JogyII: meni pada napamet jos jedna stvar, do 300 mb se vrlo tesko dolazi osim ako oni nisu recimo kesirali celu MS-SQL bazu na klijentu U MEMORIJI, recimo otvorili dataset i ocitali lepo sve tabele, i drze ih kesirane
naravno ako je to u pitanju to ce povuci jos dosta problema kasnije :(

Citat:
mozes li mi reci kojih jos problema ce to povuci kasnije

Pa samim tim sto ukoliko dolazi do unosa novih podataka u bazu, dolazice i do uvecavanja iste, a zatim i do veceg utroska memorije prilikom kesiranja... Ipak ne verujem da bi neko napravio ovakav propust i dozvolio punjenje dataset-a velikom kolicinom podataka, barem ne kod tog tvog "visokobudzetnog" softvera.
 
Odgovor na temu

[es] :: .NET :: curenje memorije

[ Pregleda: 4424 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.