Switch to standard view 
  Sybase logo

Maximum Shared Addressable Memory in Adaptive Server Enterprise 11.5.x and 11.9.2

SUMMARY: This TechNote lists the shared addressable memory limits by platform for Adaptive Server Enterprise 11.5.x and 11.9.2.
Document ID: 20101 Last Revised: 09/28/99
Topic: Database Admin, Performance & Tuning Document Type: TechNote
Product: Adaptive Server Enterprise Version: 11.5.x; 11.9.2
Platform: HP, PC, Sun, IBM RS/6000, Digital UNIX Operating System: AIX, UNIX, HP-UX, Linux, Solaris, Windows NT


Maximum Shared Addressable Memory

Limits by Platform and Size

aHP-UX 10.20

1.75-2.75 GB

bDigital Unix 4.0

~4096 GB

Digital Alpha NT 4.0

2 GB

IBM AIX 4.1.4

2.5 GB

IBM RS/6000 AIX 4.2.1

2.75 GB

NCR 3.0.1

2 GB

SGI IRIX 6.2, 6.4

4 GB

Solaris 2.5.1, 2.6

4 GB

Windows NT 3.51, 4.0

2 GB

UnixWare 2.1

4 GB

cLinux 2.2.5 or newer

1.4–1.9 GB

aAchieving 2.75 GB on HP-UX 10.20

HP-UX 10.20 requires Hewlett-Packard patches PHKL_9076 and PHSS_15380 to achieve 2.75 GB of shared memory. Otherwise, the memory limit is 1.75 GB.


HP patch PHSS_15380 replaces patch PHSS_10926.

Tuning HP-UX 10.20

  1. After applying the patches, set a bit in the executable, dataserver, by running the chatr command:

    /usr/bin/chatr -M $SYBASE/bin/dataserver

  2. Start the server and use sp_configure to set "total memory" in 2K units, up to 2.75 GB, based on the available physical memory on your system.

  3. Certain operating system patches also may be necessary to get the extra 1GB. Contact Hewlett-Packard technical support, or access the HP Electronic Support Center, http://us-support.external.hp.com:80/wpsl/bin/doc.pl

    For European customers, the URL is http://europe-support.external.hp.com/

Once the "dataserver" binary is "chatr -M"ed, it cannot be run on an earlier version of HP-UX.

Using HP-UX 10.20 and Monitor Server 11.0.2

If you are using SQL Server Monitor Server 11.0.2 to monitor server performance, you also need Sybase EBF 7871. You can download EBFs from http://support.sybase.com/fd_ess.html

Using HP-UX 10.20 and Monitor Server 11.5.1

If you are using Monitor Server 11.5.1 to monitor server performance, you cannot use more than 1.75 GB of addressable memory and you will receive the following connection error message upon start-up:

msgid 20074 os_attach_region: shmat(409); invalid argument, 20111 KB attach: couldn't attach to kernel region

This is a known problem, CR 170994.


Shared memory limits are different on some platforms with earlier releases. See TechNote 20239, Addressable Memory Limits for Sybase SQL Server 11.0.x.

bAchieving ~4096 GB on Digital UNIX

You must tune several Digital UNIX kernel parameters to achieve additional shared addressable memory. Otherwise, the default operating system parameters limit Adaptive Server to 1 GB.

Tuning Digital UNIX

  1. Edit /etc/sysconfigtab to make shm-max equal 2 gigabytes minus 8192:

    shm-max = 2147475456

  2. Adaptive Server uses multiple memory segments, attaching them to the same virtual process space. Therefore you must reset these memory parameters to be greater than the total memory in the server:

    • per-proc-address-space

    • max-per-proc-address-space

    • vm-maxvas

  3. Reboot the operating system for changes to kernel parameters to take effect.

  4. Configure the server.

Example: Configuring a server to use 5 GB shared memory

Configure the server to use 5 GB of shared memory on Digital UNIX 4.0A (Rev. 464).

  1. Determine the values of shm-max and other operating system parameters:

    % grep shm-max /etc/sysconfigtab

    shm-max = 2147475456

    % grep vm-maxvas /etc/sysconfigtab

    vm-maxvas = 200000000000

    % grep per-proc-address-space /etc/sysconfigtab

    per-proc-address-space = 200000000000
    max-per-proc-address-space = 200000000000

    The output shows that the operating system is configured for a 200 GB address space.

  2. Log into isql and re-configure the server, in 2K pages, to use 5 GB of shared memory from the operating system:

    1> sp_configure "total memory", 2621440
    2> go

  3. Verify the server's total memory:

    1> sp_configure "total memory"
    2> go

    Parameter Name                 Default     Memory Used Config Value         Run Value
    ------------------------------ ----------- ----------- ------------        -----------
    total memory                         13312     5242880     2621440              2621440

  4. Verify the size of the shared memory segments.

    % ipcs -b

    Shared Memory:
    T      ID     KEY      MODE        OWNER    GROUP     SEGSZ
    m       0 844348508 --rw-rw-rw-      root   system       648
    m    8449 -1319305607 --rw-------  mshields   sybase2147475456
    m       2 -1319305507 --rw-------  mshields   sybase2147475456
    m       3 -1319306341 --rw-------  mshields   sybase1068343296

cLinux (ASE 11.9.2 only)

The maximum shared addressable memory depends on which kernel and run-time library you are using as follows:

Back to Top
© Copyright 2010, Sybase Inc.