uncontrolled program growth

geo at Brl-Tgr.ARPA geo at Brl-Tgr.ARPA
Mon Apr 16 23:50:32 AEST 1984


From:      "George William Hartwig, Jr." <geo at Brl-Tgr.ARPA>


I seem to have a problem with a program of mine. When I designed this
program I was under the impression that if I acquired space for my
program via malloc, I could return it via free. Unfortunately this does
not seem to be true. With every call to malloc my program grows and the
calls to free don't seem to have any effect whatsoever. Thus my program
grow and grows and eventually gets to the point where malloc says
"no more core".

This program is being used to reduce data from a large  test and must
operate on enormous amounts of data. I could rewrite part of it avoid
some of the problem, perhaps even enough to complete the job, but the
rewrite would touch a large number of modules so I would like to be able
to avoid doing any rewriting if possible. 

Here is a history of the program's growth. The lines where taken from
"ps ug" at non even time intervals.

%MEM		SZ		RSS

60.7		4460		1517
61		4994		1518
61.6		5868		1529
58.1		6106		1437
59.8		6234		1478
61.5		7668		1512
62.6		8906		1529
60.4		9698		1467
53.7		10610		1289
61.6		11256		1478
64.3		12104		1548



It then ran a while longer finishing with the malloc errror "not enough core"
and th summary line

195.4u 496.0s 27:49 41% 63+2999k 18770+3279io 4222pf+ow



Help please

geo



More information about the Comp.unix.wizards mailing list