generalize mempool so that one can create multiple instances of it.
[charm.git] / src / arch / gemini_gni / mempool.h
1 /*****************************************************************************
2  * $Source$
3  * $Author$ 
4  * $Date$
5  * $Revision$
6  *****************************************************************************/
7
8 /* Sanjay's pooling allocator adapted for cmialloc usage*/
9 #ifndef GNIPOOL_H
10 #define GNIPOOL_H  
11
12
13 #if defined(__cplusplus)
14 extern "C" {
15 #endif
16 #define GNI_POOL_HEADER_SIZE 8
17 #define GNI_POOL_DEFAULT_BINS 30
18 #include "converse.h"
19
20 #define GNI_POOL_HEADER_SIZE 8
21
22 void GniPoolPrintList(char *p); 
23
24 void GniPoolAllocInit(int numBins);
25
26
27 void * GniPoolAlloc(unsigned int numBytes);
28
29 void  GniPoolFree(void * p);
30 void  GniPoolAllocStats();
31
32 /* theoretically we should put a pool cleanup function in here */
33
34 #if defined(__cplusplus)
35 }
36 #endif
37
38 #endif /* GNIPOOL.H */