Re: FastMM 4.40 released (replacement memory manager for Delphi IDE and applications, free and open source)



Nexus DB internally uses their MM (NexusMM).


"Shane Stump" <ShaneStumpNOSPAM@xxxxxxxxxxxxx> wrote in message
news:4351a94b@xxxxxxxxxxxxxxxxxxxxxxxxx
> Is this library compatible with NexusDB? Or does NexusDB automatically use
> its own MM?
>
> Regards,
>
> Shane
>
> "Pierre le Riche" <pleriche@xxxxxxxxxxx> wrote in message
> news:434f9610@xxxxxxxxxxxxxxxxxxxxxxxxx
>> Hi All,
>>
>> I've just uploaded the latest version to SourceForge. Here is some info
>> about FastMM:
>>
>> Description:
>> A fast replacement memory manager for Borland Delphi Win32 applications
>> that
>> scales well under multi-threaded usage, is not prone to memory
>> fragmentation,
>> and supports shared memory without the use of external .DLL files.
>>
>> Homepage:
>> http://fastmm.sourceforge.net
>>
>> Advantages:
>> - Fast
>> - Low overhead. FastMM is designed for an average of 5% and maximum of
>> 10%
>> overhead per block.
>> - Supports up to 3GB of user mode address space under Windows 32-bit and
>> 4GB
>> under Windows 64-bit. Add the "$SetPEFlags $20" option (in curly
>> braces)
>> to your .dpr to enable this.
>> - Highly aligned memory blocks. Can be configured for either 8-byte or
>> 16-byte
>> alignment.
>> - Good scaling under multi-threaded applications
>> - Intelligent reallocations. Avoids slow memory move operations through
>> not performing unneccesary downsizes and by having a minimum percentage
>> block size growth factor when an in-place block upsize is not possible.
>> - Resistant to address space fragmentation
>> - No external DLL required when sharing memory between the application
>> and
>> external libraries (provided both use this memory manager)
>> - Optionally reports memory leaks on program shutdown. (This check can be
>> set
>> to be performed only if Delphi is currently running on the machine, so
>> end
>> users won't be bothered by the error message.)
>> - Supports Delphi 5 (or later), C++ Builder 6 (or later), Kylix 3.
>>
>> Change log:
>> Version 4.29 (30 September 2005):
>> - Added the "RequireDebuggerPresenceForLeakReporting" option to only
>> display
>> the leak report if the application is run inside the IDE. (Thanks to
>> Günther
>> Schoch.)
>> - Added the "ForceMMX" option, which when disabled will check the CPU for
>> MMX compatibility before using MMX. (Thanks to Jan Schlüter.)
>> - Added the module name to the title of error dialogs to more easily
>> identify
>> which application caused the error. (Thanks to Kristofer Skaug.)
>> - Added an ASCII dump to the "FullDebugMode" memory dumps. (Thanks to
>> Hallvard
>> Vassbotn.)
>> - Added the option "HideExpectedLeaksRegisteredByPointer" to suppress the
>> display and logging of expected memory leaks that were registered by
>> pointer.
>> (Thanks to Dan Miser.) Leaks registered by size or class are often
>> ambiguous,
>> so these expected leaks are always logged to file (in FullDebugMode)
>> and are
>> never hidden from the leak display (only displayed if there is at least
>> one
>> unexpected leak).
>> - Added a procedure "GetRegisteredMemoryLeaks" to return a list of all
>> registered memory leaks. (Thanks to Dan Miser.)
>> - Added the "RawStackTraces" option to perform "raw" stack traces,
>> negating
>> the need for stack frames. This will usually result in more complete
>> stack
>> traces in FullDebugMode error reports, but it is significantly slower.
>> (Thanks to Hallvard Vassbotn, Dan Miser and the JCL team.)
>> Version 4.31 (2 October 2005):
>> - Fixed the crash bug when both "RawStackTraces" and "FullDebugMode" were
>> enabled. (Thanks to Dan Miser and Mark Edington.)
>> Version 4.33 (6 October 2005):
>> - Added a header corruption check to all memory blocks that are
>> identified as
>> leaks in FullDebugMode. This allows better differentiation between
>> memory
>> pool corruption bugs and actual memory leaks.
>> - Fixed the stack overflow bug when using "RawStackTraces".
>> Version 4.35 (6 October 2005):
>> - Fixed a compilation error when the "NoMessageBoxes" option is set.
>> (Thanks
>> to Paul Ishenin.)
>> - Before performing a "raw" stack trace, FastMM now checks whether
>> exception
>> handling is in place. If exception handling is not in place FastMM
>> falls
>> back to stack frame tracing. (Exception handling is required to handle
>> the
>> possible A/Vs when reading invalid call addresses. Exception handling
>> is
>> usually always available except when SysUtils hasn't been initialized
>> yet or
>> after SysUtils has been finalized.)
>> Version 4.37 (8 October 2005):
>> - Fixed the missing call stack trace entry issue when dynamically loading
>> DLLs.
>> (Thanks to Paul Ishenin.)
>> Version 4.39 (12 October 2005):
>> - Restored the performance with "RawStackTraces" enabled back to the
>> level it
>> was in 4.35.
>> - Fixed the stack overflow error when using "RawStackTraces" that I
>> thought I
>> had fixed in 4.31, but unfortunately didn't. (Thanks to Craig
>> Peterson.)
>> Version 4.40 (13 October 2005):
>> - Improved "RawStackTraces" to have less incorrect extra entries. (Thanks
>> to
>> Craig Peterson.)
>> - Added the Russian (by Paul Ishenin) and Afrikaans translations of
>> FastMM4Messages.pas.
>>
>> Regards,
>> Pierre
>>
>
>


.



Relevant Pages

  • Re: FastMM 4.40 released (replacement memory manager for Delphi IDE and applications, free and open
    ... > A fast replacement memory manager for Borland Delphi Win32 applications ... > - Optionally reports memory leaks on program shutdown. ... > the need for stack frames. ... If exception handling is not in place FastMM falls ...
    (borland.public.delphi.thirdpartytools.general)
  • Re: FastMM 4.40 released (replacement memory manager for Delphi IDE and applications, free and open
    ... > A fast replacement memory manager for Borland Delphi Win32 applications ... > - Optionally reports memory leaks on program shutdown. ... > the need for stack frames. ... If exception handling is not in place FastMM falls ...
    (borland.public.delphi.thirdpartytools.general)
  • Re: MDAC memory leak
    ... when the storage should be freed. ...  Most libraries place the decision of when to free ... strcore leaks are hard to diagnose, because they mean you have an unfreed CString. ... There's a capability of breaking on a particular memory allocation, ...
    (microsoft.public.vc.mfc)
  • Re: tip50 Accepted
    ... This is also the version to be bundled with Tcl core 8.6 beta. ... Is it really true that memory leaks are being plugged in code which is ... It is really unbelievable that a developer would be hunting down ...
    (comp.lang.tcl)
  • Re: tip50 Accepted
    ... This is also the version to be bundled with Tcl core 8.6 beta. ... Is it really true that memory leaks are being plugged in code which is ...
    (comp.lang.tcl)