blender/intern/guardedalloc
Sergey Sharybin c0f8e15295 Speedup for guarded allocator
- Re-arrange locks, so no actual memory allocation
  (which is relatively slow) happens from inside
  the lock. operation system will take care of locks
  which might be needed there on it's own.

- Use spin lock instead of mutex, since it's just
  list operations happens from inside lock, no need
  in mutex here.

- Use atomic operations for memory in use and total
  used blocks counters.

This makes guarded allocator almost the same speed
as non-guarded one in files from Tube project.

There're still MemHead/MemTail overhead which might
be bad for CPU cache utilization
2013-08-19 10:51:40 +00:00
..
cpp code cleanup: some warnings and formatting for PyMethodDef's in the BGE. 2012-11-10 05:42:50 +00:00
intern Speedup for guarded allocator 2013-08-19 10:51:40 +00:00
test/simpletest style cleanup 2013-06-06 06:02:46 +00:00
CMakeLists.txt Speedup for guarded allocator 2013-08-19 10:51:40 +00:00
MEM_guardedalloc.h use gcc malloc attribute for low level allocation functions, prevents gcc from checking if resulting pointers alias existing pointers, also use sentinel attribute for uiButGetStrInfo so incorrect usage gives a warning. 2013-08-05 20:57:13 +00:00
mmap_win.h move BLO_sys_types.h -> BLI_sys_types.h (it had nothing todo with loading) 2013-05-28 19:35:26 +00:00
SConscript Speedup for guarded allocator 2013-08-19 10:51:40 +00:00