Solved

How to use new MemoryManager (like QMemory) in a Windows Service Application?

Posted on 2004-10-12
6
230 Views
Last Modified: 2010-04-04
Hello, experts,
because my windows service application uses a lot of memory (about 500 MB) storing all data in strings, I was looking for s.th. making the memory allocation and release faster. QMemory (http://homepages.borland.com/torry/debug.htm) looks very interesting.
But I'm not able to include this new memory manager in my windows service. When I put the qmemory-unit as the first unit in the project file, then I get an out of memory error while installing the service (where it makes no difference, how much memory I'm allocating with QMemInstall). When I execute QMemInstall later (in my serviceexecute-method), everything looks fine, until later the application crashes (I assume, because the original memory manager did some work before I started the new one). Experiments with ShareQmm failed, too.
Before I make experiments for endless hours, I want to ask you: How can I use qmemory (or another good memory manager) in a windows service application?

Thanks for your help.




Ulrich
0
Comment
Question by:Delphifrog
  • 2
  • 2
  • 2
6 Comments
 
LVL 12

Accepted Solution

by:
Lee_Nover earned 250 total points
ID: 12291392
don't know about QMemory but never had problems with MultiMM/HPMM from OptimalCode.com
the site is down quite some time now .. I can mail you the code if needed
there's also another commercial memory manager from Nexus DB .. heard only things about it but never tried it
0
 
LVL 14

Assisted Solution

by:DragonSlayer
DragonSlayer earned 250 total points
ID: 12291444
Yup, never had probs with HPMM either.

There is also another Memory Manager that my company is planning to evaluate... http://www.havoctribe.org/BigBrain.php ... seems to be quite promising, with cross-platform compatibility and multi-processor speedups...
0
 

Author Comment

by:Delphifrog
ID: 12293497
Firstly, thank you for the other product names. I just shopped around a little bit and found the following page:

http://www.wasanderes.de/mmtest/

The results of this test don't sound very promising.

Nevertheless, I'm evaluating the nexusdb-memory manager right now. The good news: it didn't produce an error and didn't crash in the first 30 minutes of testing. The bad news: I'm not sure, if I see any improvement or if the new memory manager does anything at all.

So probably I have to forget QMemory and have to buy the nexus-product (I had problems with the trial edition of bigbrain and the licencing restrictions, so I went to nexus).

When I've made up my decision, I will report this here.

Bye for now



Ulrich
0
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

 
LVL 12

Assisted Solution

by:Lee_Nover
Lee_Nover earned 250 total points
ID: 12294739
if you're willing to try HPMM I put it here: http://leenover.homeip.net/delphi/miscstuff/multimm.zip
0
 
LVL 14

Assisted Solution

by:DragonSlayer
DragonSlayer earned 250 total points
ID: 12295161
Did you check out the BigBrain link I sent? It is free for non-commercial use. Also, it has some (perhaps biased) comparison between NexusDB and BigBrain.
0
 

Author Comment

by:Delphifrog
ID: 12304493
Yes, I checked the Bigbrain link, read the comparison and downloaded the free version. There is no documentation included in the package and because the price for Bigbrain (I use it for commercial applications and always need source code) is much higher than for nexus (which seems easy to use, just include one line in the project file), I've paid for the NexusDB product.
My application still is stable, so NexusDB works in a windows service.  But if it really improves my application, I'm still not sure.

So I thank you both very much and try to split the points (this is my first question here in experts-exchange).

Bye



Ulrich
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …

815 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now