Scippy

SCIP

Solving Constraint Integer Programs

mem.c File Reference

Detailed Description

block memory pools and memory buffers

Author
Tobias Achterberg
Gerald Gamrath

Definition in file mem.c.

#include <assert.h>
#include "scip/def.h"
#include "scip/mem.h"
#include "scip/pub_message.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPmemCreate (SCIP_MEM **mem)
 
SCIP_RETCODE SCIPmemFree (SCIP_MEM **mem)
 
SCIP_Longint SCIPmemGetUsed (SCIP_MEM *mem)
 
SCIP_Longint SCIPmemGetTotal (SCIP_MEM *mem)
 
SCIP_Longint SCIPmemGetUsedBlockmemoryMax (SCIP_MEM *mem)
 
SCIP_Longint SCIPmemGetUnusedBlockmemoryMax (SCIP_MEM *mem)
 
SCIP_Longint SCIPmemGetAllocatedBlockmemoryMax (SCIP_MEM *mem)
 

Function Documentation

◆ SCIPmemCreate()

SCIP_RETCODE SCIPmemCreate ( SCIP_MEM **  mem)

creates block and buffer memory structures

Parameters
mempointer to block and buffer memory structure

Definition at line 33 of file mem.c.

References BMSallocMemory, BMScreateBlockMemory, BMScreateBufferMemory, FALSE, NULL, SCIP_ALLOC, SCIP_DEFAULT_MEM_ARRAYGROWFAC, SCIP_DEFAULT_MEM_ARRAYGROWINIT, SCIP_OKAY, SCIPdebugMessage, and TRUE.

Referenced by doScipCreate().

◆ SCIPmemFree()

SCIP_RETCODE SCIPmemFree ( SCIP_MEM **  mem)

frees block and buffer memory structures

Parameters
mempointer to block and buffer memory structure

Definition at line 59 of file mem.c.

References BMSblockMemoryCheckEmpty, BMSdestroyBlockMemory, BMSdestroyBufferMemory, BMSfreeMemory, NULL, and SCIP_OKAY.

Referenced by SCIPfree().

◆ SCIPmemGetUsed()

SCIP_Longint SCIPmemGetUsed ( SCIP_MEM mem)

returns the total number of bytes used in block and buffer memory

Parameters
mempointer to block and buffer memory structure

Definition at line 87 of file mem.c.

References BMSgetBlockMemoryUsed, BMSgetBufferMemoryUsed(), SCIP_Mem::buffer, SCIP_Mem::cleanbuffer, NULL, SCIP_Mem::probmem, and SCIP_Mem::setmem.

Referenced by SCIPgetMemUsed().

◆ SCIPmemGetTotal()

SCIP_Longint SCIPmemGetTotal ( SCIP_MEM mem)

returns the total number of bytes in block and buffer memory

Parameters
mempointer to block and buffer memory structure

Definition at line 98 of file mem.c.

References BMSgetBlockMemoryAllocated, BMSgetBufferMemoryUsed(), SCIP_Mem::buffer, SCIP_Mem::cleanbuffer, NULL, SCIP_Mem::probmem, and SCIP_Mem::setmem.

Referenced by SCIPgetMemTotal(), and SCIPstatUpdateMemsaveMode().

◆ SCIPmemGetUsedBlockmemoryMax()

SCIP_Longint SCIPmemGetUsedBlockmemoryMax ( SCIP_MEM mem)

returns the maximal number of used bytes in block memory

Parameters
mempointer to block and buffer memory structure

Definition at line 109 of file mem.c.

References BMSgetBlockMemoryUsedMax, NULL, SCIP_Mem::probmem, and SCIP_Mem::setmem.

◆ SCIPmemGetUnusedBlockmemoryMax()

SCIP_Longint SCIPmemGetUnusedBlockmemoryMax ( SCIP_MEM mem)

returns the maximal number of allocated but not used bytes in block memory

Parameters
mempointer to block and buffer memory structure

Definition at line 119 of file mem.c.

References BMSgetBlockMemoryUnusedMax, NULL, SCIP_Mem::probmem, and SCIP_Mem::setmem.

◆ SCIPmemGetAllocatedBlockmemoryMax()

SCIP_Longint SCIPmemGetAllocatedBlockmemoryMax ( SCIP_MEM mem)

returns the maximal number of allocated bytes in block memory

Parameters
mempointer to block and buffer memory structure

Definition at line 129 of file mem.c.

References BMSgetBlockMemoryAllocatedMax, NULL, SCIP_Mem::probmem, and SCIP_Mem::setmem.