- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- Memory leak issue
Operating System - HP-UX
1755042
Members
3593
Online
108828
Solutions
Forums
Categories
Company
Local Language
юдл
back
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
юдл
back
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Blogs
Information
Community
Resources
Community Language
Language
Forums
Blogs
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-15-2009 02:55 AM
тАО07-15-2009 02:55 AM
Re: Memory leak issue
Firstly my application is single threaded. mallocnextgen is useful for multi threaded application
Secondly mallocnextgen is for itanium server but my build is made (or is should say cross compiled )on a pa-risc system where i cannot install this mallocnextgen
Does anybody had a quick look on the data i attached? I would request you to have a quick look. File is not of much size and only a look will give an idea of memory issue to experts.
Secondly mallocnextgen is for itanium server but my build is made (or is should say cross compiled )on a pa-risc system where i cannot install this mallocnextgen
Does anybody had a quick look on the data i attached? I would request you to have a quick look. File is not of much size and only a look will give an idea of memory issue to experts.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-15-2009 04:04 AM
тАО07-15-2009 04:04 AM
Re: Memory leak issue
>Firstly my application is single threaded. mallocnextgen is useful for multi threaded application
(Last time you said "Yes, it is a multi threaded application."?)
Do you know it won't help? The specs don't say it is only useful for threads.
If it is single threaded, you are allocating memory in a non-optimal manner. And from your other thread, you may need to special case your allocators for various block sizes, 64028, 120 4944, 40, 48, 12, 28, 64.
>where I cannot install this mallocnextgen
You simply install it on your Integrity box and then copy the shlib to your PA box.
(Last time you said "Yes, it is a multi threaded application."?)
Do you know it won't help? The specs don't say it is only useful for threads.
If it is single threaded, you are allocating memory in a non-optimal manner. And from your other thread, you may need to special case your allocators for various block sizes, 64028, 120 4944, 40, 48, 12, 28, 64.
>where I cannot install this mallocnextgen
You simply install it on your Integrity box and then copy the shlib to your PA box.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-15-2009 04:15 AM
тАО07-15-2009 04:15 AM
Re: Memory leak issue
"If it is single threaded, you are allocating memory in a non-optimal manner. And from your other thread, you may need to special case your allocators for various block sizes, 64028, 120 4944, 40, 48, 12, 28, 64."
>>>Can you kindly explain this in a bit more detail.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-17-2009 03:06 AM
тАО07-17-2009 03:06 AM
Re: Memory leak issue
>>you are allocating memory in a non-optimal manner. you may need to special case your allocators for various block sizes, 64028, 120 4944, 40, 48, 12, 28, 64."
>Can you kindly explain this in a bit more detail?
If you are allocating memory with random sizes and continually malloc and freeing this space, you will eventually fragment the heap.
Assuming the above block sizes, which have lots of allocations, if you get N blocks of 64028 and then you free N - M. You would end up with M blocks of 64028 and N - M freed blocks of 64028.
Suppose you then want to allocate blocks of 4944, those freed larger blocks would be used. Pretty soon those large blocks are broken up into smaller blocks, that can't be used for 64028 requests, so the arena grows.
What you could do is make a special allocator that only serves up 64028 byte blocks and when they are freed, it keeps them on a linked list for later use. That way these 64028 blocks won't get fragmented.
But this means you have to take up the burden of managing these blocks. Can you do a better job, if you know what your application does?
But the simplest way to solve this to see if MallocNextGen helps.
>Can you kindly explain this in a bit more detail?
If you are allocating memory with random sizes and continually malloc and freeing this space, you will eventually fragment the heap.
Assuming the above block sizes, which have lots of allocations, if you get N blocks of 64028 and then you free N - M. You would end up with M blocks of 64028 and N - M freed blocks of 64028.
Suppose you then want to allocate blocks of 4944, those freed larger blocks would be used. Pretty soon those large blocks are broken up into smaller blocks, that can't be used for 64028 requests, so the arena grows.
What you could do is make a special allocator that only serves up 64028 byte blocks and when they are freed, it keeps them on a linked list for later use. That way these 64028 blocks won't get fragmented.
But this means you have to take up the burden of managing these blocks. Can you do a better job, if you know what your application does?
But the simplest way to solve this to see if MallocNextGen helps.
- « Previous
-
- 1
- 2
- Next »
The opinions expressed above are the personal opinions of the authors, not of Hewlett Packard Enterprise. By using this site, you accept the Terms of Use and Rules of Participation.
News and Events
Support
© Copyright 2024 Hewlett Packard Enterprise Development LP