1828198 Members
2399 Online
109975 Solutions
New Discussion

Re: HEAP_ANALYZER

 
J McQueen
New Member

HEAP_ANALYZER

I have a client (PC) - server (ALPHA) application and am trying to use the HEAP_ANALYZER to look at memory usage. However, it slows the server proces down by probably a factor of 100 and makes it almost impossible to do any data analysis.

I would be interested in ways to make the HEAP_ANALYZER more responsive.
4 REPLIES 4
Hein van den Heuvel
Honored Contributor

Re: HEAP_ANALYZER

This may all be very obvious to you, but I suspect most readers have no clue what you are talking about.

Is this the OpenVMS (version?) debugger heap analyzer on the Alpha with an X windows display back to a client PC? http://h71000.www7.hp.com/doc/82final/4538/4538pro_contents_003.html#toc_chapter_12

What is running on the PC, what on the Server? What communiation protocol?
Just a telnet session to a home grown application?
http client to apache server?
Oracle OCI / SQL*net to database?
Where is the heap analyzer running? Client or server?
What heap_analyzer? Web reference?

There was a recent topic here which stopped just short of going into heap analyzers:
http://forums1.itrc.hp.com/service/forums/questionanswer.do?threadId=1092400

The most extreme/effective heap analyzers will intercept / replace malloc+free and use page protection schemes to trap invalid access. That would slow things down of course.

fwiw,
Hein.
J McQueen
New Member

Re: HEAP_ANALYZER

The server is a C-based, threaded program running on VMS 7.3-2 and the heap_analyzer is the openVMS debugger heap_analyzer.

The client is a C# application on the PC using TCP/IP socket, message/response type communication with the server.

The server allocates and frees memory buffers for the various messages.

I would expect some slowdown but not as severe as what I found, so I figured there must be some way to make it more responsive.
John Gillings
Honored Contributor

Re: HEAP_ANALYZER

Your server process must be doing a huge amount of memory management to get a 100 fold slow down.

I'd try to isolate and simplify memory management within the application (which may resolve the issue you're trying to analyze!).

For example, if you have a lot of malloc/free of a particular object, maintain your own free list. This will be faster, and won't engage the RTL memory management code every time you want to allocate or free something.

A crucible of informative mistakes
J McQueen
New Member

Re: HEAP_ANALYZER

Answers not really that helpful and I haven't had the time to investigate more.