Skip to Content
Former Member
Apr 09, 2014 at 05:47 PM

How to calculate available shared memory for Sybase Max Memory?


Firstly thank you guys for helping me to figure out to increase max memory on linux. but I still not sure how to calculate available max memory for sybase from shared memory of linux.

I want to open a new ticket for this. As I search over internet, this looks like a common question.

Here is my case:

OS: CentOS release 4.9 (Final) 64-bit

SYBASE ASE 12.5.4 is also 64-bit

This server is dedicated for Sybase, no other application.

I following the guide from doc and your guys instructions:

1. Calc available memory: Total physical memory - reserved for OS(1G) - Other app memory (2G for ramdisk)

for may case: 17G - 1G -2G = 14G

2. Then I set shmmax = 14G = 14738890752 bytes (=13.76GB) //as documented, this is for max memory for single segment of memory

3. Then I set shmall = 3598362 (4k) ( = =13.76GB) // at beginning, I thought no need to change this, but actually, need to change it to make it working

4. Then I set /dev/shm = 14G //not sure about this. even sybase get the memory, if I check with df -h, the use% is still 0%

5. Then I set max memory = 14G = 7196724(2k)

With about calculation, it is not working, I can not set 14G for max memory, then I try to increase shmall little by little, finally, after I set shmall = 30000000(4k), then I am able to set max memory = 7500000(2k) = 14.31G

So when I predict there is 14G for syabse max memory, I should set both shmmax and shmall. what's the calculation? sybase document only mentioned shmmax.

with the latest CentOS 6.3, it set shmmax and shmall by default as:

shmmax = 68719476736 (=64G)

shmall = 4294967296 (4k) (=16384G ???)

So if I put above setting for my case( not try it yet), what would be available for sybase max memory?

My ticket for this issue: