12 #include "../../source/blender/blenlib/BLI_strict_flags.h"
18 #ifdef WITH_JEMALLOC_CONF
22 const char *malloc_conf =
"background_thread:true,dirty_decay_ms:4000";
35 void *(*MEM_mallocN_aligned)(
size_t len,
60 return _aligned_malloc(
size, alignment);
61 #elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
64 if (posix_memalign(&
result, alignment,
size)) {
72 return memalign(alignment,
size);
void BLI_kdtree_nd_() free(KDTree *tree)
Read Guarded memory(de)allocation.
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
SyclQueue void void size_t num_bytes void
void MEM_use_guarded_allocator(void)
size_t(* MEM_get_peak_memory)(void)
void aligned_free(void *ptr)
void *(* MEM_malloc_arrayN)(size_t len, size_t size, const char *str)
void * aligned_malloc(size_t size, size_t alignment)
void(* MEM_freeN)(void *vmemh)
void(* MEM_reset_peak_memory)(void)
size_t(* MEM_get_memory_in_use)(void)
void *(* MEM_dupallocN)(const void *vmemh)
void *(* MEM_mallocN_aligned)(size_t len, size_t alignment, const char *str)
void *(* MEM_calloc_arrayN)(size_t len, size_t size, const char *str)
void(* MEM_printmemlist_stats)(void)
void(* MEM_set_memory_debug)(void)
void(* MEM_set_error_callback)(void(*func)(const char *))
void *(* MEM_reallocN_id)(void *vmemh, size_t len, const char *str)
size_t(* MEM_allocN_len)(const void *vmemh)
void MEM_use_lockfree_allocator(void)
bool(* MEM_consistency_check)(void)
const char *(* MEM_name_ptr)(void *vmemh)
void *(* MEM_recallocN_id)(void *vmemh, size_t len, const char *str)
unsigned int(* MEM_get_memory_blocks_in_use)(void)
void(* MEM_printmemlist_pydict)(void)
static void assert_for_allocator_change(void)
void *(* MEM_callocN)(size_t len, const char *str)
void *(* MEM_mallocN)(size_t len, const char *str)
void(* MEM_callbackmemlist)(void(*func)(void *))
void(* MEM_printmemlist)(void)
size_t MEM_guarded_allocN_len(const void *vmemh)
const char * MEM_guarded_name_ptr(void *vmemh)
unsigned int MEM_guarded_get_memory_blocks_in_use(void)
void * MEM_guarded_callocN(size_t len, const char *str)
void * MEM_guarded_dupallocN(const void *vmemh)
void * MEM_guarded_calloc_arrayN(size_t len, size_t size, const char *str)
void MEM_guarded_set_error_callback(void(*func)(const char *))
void MEM_guarded_printmemlist(void)
void MEM_guarded_printmemlist_pydict(void)
void MEM_guarded_callbackmemlist(void(*func)(void *))
bool MEM_guarded_consistency_check(void)
void MEM_guarded_set_memory_debug(void)
void MEM_guarded_printmemlist_stats(void)
size_t MEM_guarded_get_peak_memory(void)
void * MEM_guarded_malloc_arrayN(size_t len, size_t size, const char *str)
void * MEM_guarded_mallocN(size_t len, const char *str)
void * MEM_guarded_mallocN_aligned(size_t len, size_t alignment, const char *str)
void * MEM_guarded_reallocN_id(void *vmemh, size_t len, const char *str)
void * MEM_guarded_recallocN_id(void *vmemh, size_t len, const char *str)
void MEM_guarded_reset_peak_memory(void)
size_t MEM_guarded_get_memory_in_use(void)
void MEM_guarded_freeN(void *vmemh)
void * MEM_lockfree_mallocN_aligned(size_t len, size_t alignment, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(1) ATTR_NONNULL(3)
void * MEM_lockfree_mallocN(size_t len, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(1) ATTR_NONNULL(2)
void * MEM_lockfree_reallocN_id(void *vmemh, size_t len, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(2)
void MEM_lockfree_reset_peak_memory(void)
void * MEM_lockfree_recallocN_id(void *vmemh, size_t len, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(2)
void MEM_lockfree_set_error_callback(void(*func)(const char *))
void MEM_lockfree_printmemlist_stats(void)
void MEM_lockfree_set_memory_debug(void)
void * MEM_lockfree_callocN(size_t len, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(1) ATTR_NONNULL(2)
bool MEM_lockfree_consistency_check(void)
void * MEM_lockfree_dupallocN(const void *vmemh) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
const char * MEM_lockfree_name_ptr(void *vmemh)
void * MEM_lockfree_malloc_arrayN(size_t len, size_t size, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(1
void MEM_lockfree_printmemlist_pydict(void)
#define ALIGNED_MALLOC_MINIMUM_ALIGNMENT
void MEM_lockfree_printmemlist(void)
void MEM_lockfree_freeN(void *vmemh)
size_t MEM_lockfree_allocN_len(const void *vmemh) ATTR_WARN_UNUSED_RESULT
void MEM_lockfree_callbackmemlist(void(*func)(void *))
void * MEM_lockfree_calloc_arrayN(size_t len, size_t size, const char *str) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_ALLOC_SIZE(1
size_t MEM_lockfree_get_memory_in_use(void)
unsigned int MEM_lockfree_get_memory_blocks_in_use(void)
size_t MEM_lockfree_get_peak_memory(void) ATTR_WARN_UNUSED_RESULT