BigBrain
Memory Manager for Delphi and Big
Brain Pro and BigBrainUltra for the most-demanding enterprise applications,
Already know
about memory managers? We have a special FAQ
for you.
Is
your Delphi app slow? Is it even slower on multi-processor (SMP) systems?
Doom is not necessarily impending... Big Brain may solve most or even
ALL of your performance problems.
WHY do you
need a Memory Manager Replacement?
Whenever you manipulate strings you allocate and release memory. Whenever
you create a class like a TList or TStringList, you also allocate and
release memory. The manager that handles this memory allocation is SHARED
across all the threads in your application and Locks are placed on the
memory manager to prevent memory corruption in Multi-threaded applications.
The more your app does, the more locks on this shared object occur and
the slower your app becomes. When a timeslice is allocated to
your thread the thread may be blocked by the inability to get this lock
and excessive "context switching" will occur.
But wait, it
gets worse!
Furthermore, when you transfer your app to your production environment,
you may likely put it on an Dual or Quad processor machine. In a Multi-processor
environment, the mechanism for handling your standard critical section
becomes more-expensive because the operating system must jump through
extra hoops to aquire locks that function properly across independent
processors. In these environments, when the two processors fight for the
same lock... your performance goes WAY WAY DOWN!
How far down can it
go? Well... we ran real world tests and found that under the standard
memory manager, we could get so much context switching (caused when one
thread waits on a lock from another thread) to occur that the application
would only use 4% of each processor and the application would appear to
have completely locked up. Things that were supposed to take 5 seconds,
would take... 30 minutes! No kidding!Replace the memory manager, and you
get 100% usage across each processor, and near-linear scalability. Dual
processor machines are then twice as powerful as single. Quads are 4x
as powerful. |