View Single Post

   
  #4 (permalink)  
Old 01-16-2008, 06:11 PM
ECStahl
 
Posts: n/a
Default Re: SHMEM_MAGIC on HP-UX

Xavier Maillard zedek@gnu-rox.org wrote:

>On 1 jui 2004, ecstahl@aol.com wrote:
>
> [ ... ]
>
>> The shmmax tunable limits the size of any single shared memory
>> segment, not the total shared memory.

>
>I know that.


Having it set over 1 Gb to 2.8 Gb does nothing for 32-bit processes. Though
neither does it cause the problem you're experiencing.


>
>> The largest a single 32-bit shared memory segment can be is 1
>> Gb.

>
>Ok.
>
>> A SHMEM_MAGIC executable would be able to create 1 GB shared
>> memory in quadrant 2, 1 Gb in quadrant 3, and around 0.75 Gb in
>> quadrant 4. But that's only if that space is available.

>
>What do you mean ? Do you mean It lakes RAM ? It yes, I should
>have mentionned that our machine is shipped with 4Gb of RAM.
>


No. That's just addressable [virtual memory] address space.


>The machine is solely deserving SQL server (ie. only Sybase
>should be running).
>


You mentioned memory windows earlier - and it sounded like you said you weren't
using them as yet. FYI: in a private memory window the maximum shared memory
for a process is 1 Gb or 2 Gb - the latter only with SHMEM_MAGIC.


>> Since 1 Gb is an entire quadrant then you would expect to see
>> an errno 12 not enough space or similar message if when trying
>> to create a 1 Gb segment and ther is anything else at all
>> already existing in quadrants 2 and 3. That includes any type
>> of shared memory.

>
>Hmm, not sure I follow you...
>


Wondering what the error message is that you're seeing, and whether there are
other shared memory structures getting in the way of what the app in question
needs.

It sounds like you do not have enough free and contiguous space available for
the amount of shared memory you want to use .

There are other possibilites eg not enough swap space for reservation, not
enough lockable memory (assuming your process wants to lock memory)...


>> ipcs only shows shared memory segments (32-bit or 64-bit). The

>
>Ok. That explains at least one point.
>
>> HP Response Center (and online somewhere - I don't have the
>> anonymous ftp site address with me) has a tool called shminfo
>> that reports all types of shared memory being used, it's size,
>> where it's located, and what the largest available free
>> contiguous space is. shminfo is a very useful tool.

>
>I will try to find it.
>


ftp://contrib:9unsupp8@hprc.external...ograms/shminfo

shminfo will show exactly what's available in free/contiguous space for shared
memory.

You should also run chatr or odump on the executable to verify that it's
SHMEM_MAGIC (that chatr -M on an EXEC_MAGIC was completed).

To check the magic number with odump, it should be 109 for SHMEM_MAGIC eg:

# odump binary_executable | grep magic
system id: 0214 (PA-RISC 2.0) magic number: 0109


>> Will Sybase start with individual shared memory segments
>> smaller than 1 Gb? That'll be the point where you've found the

>
>Yeah it can but the needs are 2.6Go of RAM. The machine (an
>octoprocessors with 4Go) is hugely stressed (deserves requests
>from the French Postal service).
>


How much shared memory was the app able to successfully create?


>> largest free and contiguous space.
>>
>> Also check swap space available for reservation with `swapinfo
>> -tm`. Is there enough for your purposes?

>
>AFAIK, the production team has told me there were 4Go of swap
>which in my opinion, sufficient.
>


Why guess? swapinfo -tm will confirm.


>> What is the exact error message?

>
>Sorry I can't remember since I am not at work.
>
>> Happy Trails,

>
>Thanks for your answer.
>
>> Eric Stahl

>
>Xavier Maillard
>--
>GnusFR (http://www.gnusfr.org)
>EmacsFR (http://www.emacsfr.org)
>
>.emacs: Because customisation is fun!



Reply With Quote