micha
9f11556f10
* flush output after heap debug writeln at exit
...
git-svn-id: trunk@7413 -
2007-05-21 20:38:29 +00:00
micha
6c85fcb157
heap manager: initialize critical sections properly
...
git-svn-id: trunk@7412 -
2007-05-21 17:08:28 +00:00
micha
7f2a257102
+ heap manager now per thread, reduce heap lock contention
...
+ heap threading test
git-svn-id: trunk@7407 -
2007-05-20 20:58:12 +00:00
micha
bb9de8f193
* SHOW_MEM_USAGE define to always show maximum heap size used/allocated, independent of DUMP_MEM_USAGE
...
git-svn-id: trunk@7324 -
2007-05-13 12:34:16 +00:00
micha
4579c242df
* heap manager: look for better matching variable block size, with upperbound search
...
git-svn-id: trunk@7320 -
2007-05-12 20:52:08 +00:00
micha
aa951460a5
+ heap manager size statistics
...
git-svn-id: trunk@7319 -
2007-05-12 20:50:33 +00:00
micha
09a60a4019
* tiny optimization to heap manager: implement freeoslist as a fifo (instead of lifo) which should allow more os chunks to keep their fixed size formatting in case of diverse fixed size usage
...
git-svn-id: trunk@7237 -
2007-05-02 05:20:44 +00:00
micha
9c727d1762
* tiny optimization to heap manager, avoid repeated removing/readding to freeoslist overhead
...
git-svn-id: trunk@7236 -
2007-05-01 21:04:18 +00:00
micha
e30a47723b
* heap manager micro optimizations
...
git-svn-id: trunk@7219 -
2007-04-30 20:23:46 +00:00
micha
9bdde01a99
* avoid usage of freelists_free_chunk boolean, while still prevent repeated fixed size conversion overhead; should reduce memory usage in some cases
...
git-svn-id: trunk@7203 -
2007-04-30 12:52:28 +00:00
yury
3c10856a4f
* Dont throw runerrors in default MemoryMutexManager if HAS_MT_MEMORYMANAGER is defined.
...
git-svn-id: trunk@5962 -
2007-01-14 01:14:12 +00:00
Legolas
9e6d19a494
* rtl part of first Nintendo DS port
...
git-svn-id: trunk@5593 -
2006-12-14 17:34:51 +00:00
Jonas Maebe
64b7f00afd
* fixed ReturnNilIfGrowHeapFails
...
git-svn-id: trunk@5042 -
2006-10-28 18:17:34 +00:00
micha
dc3b37ff73
+ heap manager: reduce overhead on fixed size chunks from 8 to 4
...
git-svn-id: trunk@4904 -
2006-10-14 15:05:24 +00:00
Legolas
19d597f425
* Reactivated heap management for GBA
...
git-svn-id: trunk@4529 -
2006-09-01 17:54:59 +00:00
florian
d337c3ca6a
* clean up heap at exit, fixes #7183
...
git-svn-id: trunk@4410 -
2006-08-11 22:09:29 +00:00
peter
b3732f7215
* keep same fixed block, also if we resize to a smaller size.
...
git-svn-id: trunk@4313 -
2006-07-30 15:02:28 +00:00
yury
e062922528
* added an option to use target-specific memory manager instead of standard. This is controlled by HAS_MEMORYMANAGER and HAS_MT_MEMORYMANAGER defines.
...
* wince executables use C memory manager now (as all apps compiled by eVC++). It saves 5.5 KB of exe size.
git-svn-id: trunk@4282 -
2006-07-23 10:23:31 +00:00
florian
5575a837db
* gba patch from Francesco Lombardi
...
git-svn-id: trunk@3716 -
2006-05-28 14:48:24 +00:00
peter
4b7f51b0aa
* fixed uninitialized var
...
git-svn-id: trunk@2654 -
2006-02-20 11:24:38 +00:00
florian
0cc2b9b16b
* small speed improvements
...
git-svn-id: trunk@2633 -
2006-02-19 16:59:03 +00:00
florian
a9198b7300
* ensure always 16 byte aligned memory blocks
...
git-svn-id: trunk@2511 -
2006-02-10 19:08:43 +00:00
peter
9d817056ce
* optimize by removing expensive calculations
...
git-svn-id: trunk@1973 -
2005-12-16 17:19:37 +00:00
florian
e2a4dac215
+ i386 assembler versions of decr_ansistring and unique_ansistring
...
git-svn-id: trunk@1963 -
2005-12-15 19:51:57 +00:00
Jonas Maebe
31b173fe85
* always keep 1 free os chunk available in the freelist to avoid
...
a performance killing corner case where one block is constantly allocated
and freed and can result in a redividing of an os chunk in small parts
for each allocation
git-svn-id: trunk@1900 -
2005-12-07 20:01:15 +00:00
peter
f9f75b40e5
* fixed DUMPGROW compile
...
git-svn-id: trunk@1305 -
2005-10-06 05:57:58 +00:00
florian
4e6b371dc5
* patch from Martin Schreiber to fix bug #4247
...
git-svn-id: trunk@784 -
2005-08-03 19:55:06 +00:00
peter
1cecfcc09f
* only all resizes for fixed blocks when the blocksize doesn't
...
change.
* check the new size first if it fits in the fixed size range
to prevent truncation of the size when the fixedsizemask is applied
git-svn-id: trunk@636 -
2005-07-16 20:17:24 +00:00
peter
822f7f0f16
* allow freemem nil
...
git-svn-id: trunk@499 -
2005-06-25 21:11:16 +00:00
michael
fccc19aa5c
+ Removed HASGETHEAPSTATUS HASGETFPCHEAPSTATUS defines
...
git-svn-id: trunk@311 -
2005-06-09 18:04:47 +00:00
michael
a775d3d487
+ Removed HASCURRENCY VALUEGETMEM VALUEFREEMEM defines
...
git-svn-id: trunk@293 -
2005-06-09 17:33:22 +00:00
peter
4ace790492
* remove $Log
...
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
florian
0d7aaab6b8
* patch from Ales Katona making the memory manager more
...
smart when releasing memory chunks back to the OS
git-svn-id: trunk@190 -
2005-06-04 10:53:38 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
fc977d3259
* check if there is enough room before concatting blocks in
...
systryresizemem()
2005-04-04 15:40:30 +00:00
Jonas Maebe
2426ecafc3
* fixed several warnings and notes about unused variables (mainly) or
...
uninitialised use of variables/function results (a few)
2005-03-25 22:53:39 +00:00
peter
ccf36c0afd
* fix crash under win32 with previous reallocmem fix
2005-03-21 16:31:33 +00:00
peter
d7ae60a9e0
* fixed tryresizemem
2005-03-20 18:57:29 +00:00
peter
617bd39762
* fix getheapstatus bootstrapping
2005-03-04 16:49:34 +00:00
marco
28011bbfb0
* small typo fix on last commit
2005-03-02 14:25:19 +00:00
marco
190bd1ab34
* getfpcheapstatus now also on memmgr
2005-03-02 10:46:10 +00:00
marco
daf59fbd7e
* getFPCheapstatus (no, FPC HEAP, not FP CHEAP!)
2005-02-28 15:38:38 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
2d1aee8e53
* allow Freemem(nil)
2005-01-30 11:56:29 +00:00
peter
2e52bf2824
* fixed overflow when reusing a memory block for fixed size chunks
2004-12-19 13:45:56 +00:00
peter
dac91ff361
* fix currheapused
2004-11-26 22:22:58 +00:00
peter
c38daf68eb
* typo for GetHeapStatus
2004-11-22 22:26:21 +00:00
peter
a263b1d40e
* GetHeapStatus added, removed MaxAvail,MemAvail,HeapSize
2004-11-22 19:34:58 +00:00
peter
869b0ecc85
* compiler defined HEAP and HEAPSIZE removed
2004-10-25 15:38:59 +00:00