Robert C Subr (subrrc++at++wl.wpafb.af.mil)
Thu, 5 Feb 98 15:13:26 -0500
I am writing a program that pages many tiles in and out of a database. At any
one time there are 9 tiles, each unique with unique textures(1024x1024.bw). My
program seems to be operating fine and pages the tiles in and out fine. The
problem that I seem to be having is that some,part or all of my tiles that are
being removed, are staying in memory. I have watched the system memory usage
on the gr_osview and when I am paging in and out tiles, the memory creeps up
untiled the app drops out with the following error.
PF Fatal/Resource: pfMemory::new() Unable to allocate 1048592 bytes
from arena 0x18040000.
Try using pfSharedArenaSize() to increase the arena size
(currently 262144.00 KBytes) and check for adequate setrlimit()
values and available space on swap (or pfTmpDir()).
While top shows that the process size does not change at all,in ither database
process or appculldraw process. As long as I am not bringing and replacing
tiles the memory does not change. The tiles are pfb files. Each one was
created in a performer app, and saved out are pfb's. Any ideas would be
greatly apreaciated and a lot of help. I have also included the simple code I
am using to page the tiles. Could this be realated to the tile creation? Is
there some setting that I need to set to totally remove the tiles from memory?
Am I doing this wrong? Any comments and suggestions welcome.
Thanks in advance.
Rob
void dataBase (void *data)
{
static pfBuffer *buf = NULL;
if (!buf)
{
buf = new pfBuffer();
buf->select();
}
dbase->loadDbase(2);
buf->merge();
pfDBase();
}
dbase->loadDbase(2)
{
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:56:44 PDT