Unanswered: 32bit Sybase ASE and multiple engines on a 24 GB server
Okay, I am not a DBA and not an expert, and I've just seen something at my new work that doesn't gel, so I am looking for some help.
At a previous employer, we had Sybase configured with multiple engines and shared memory. On Solaris, I seem to recall an oddity whereby each process reported by "prstat" showed it having the full "shared" memory about, and then the totals were just adding up those amounts.
Eeek, that sounds confusing, here's an example:
64bit Sybase configured to use 6 GB of RAM.
Six engines configured.
Server is V880 with 8 CPUs and 8 GB of RAM.
prstat would show six processes each with 6 GB of RAM, and thus the total shown by "prstat -a" for sybase was over 36 GB of RAM in use.
Obviously this was because prstat is doing simple adding up and isn't smart enough to not add up shared memory amounts.
Now, I am at my new work and I get the production server specification today.
Its a v1280 with 12 CPUs and 24 GB of RAM. I don't know how many engines have been configured, but the box runs a heap of other crap as well. However, it is running 32 bit Sybase.
I have a sneaky suspicion that the DBA has been tricked and doesn't get that Sybase is using, at most, 4GB of RAM, due to the 32bit limit. I think the SysAdmins are looking at tools like prstat and seeing the memory in use.
Or perhaps you don't need to use shared memory and each process can have its own data cache and operate almost independently?
Or perhaps I am on drugs and the above is all BS?
I defer to the experts...
BTW, the main database being maintained is over 150 GB. No idea of the working data within that (ie: how much is ancient stale, dead crap that no query ever touches).