From f7a5e049e2653149aedb35cb172ec89e4748a222 Mon Sep 17 00:00:00 2001 From: Xianyi Zhang Date: Sat, 26 Feb 2011 11:51:39 +0800 Subject: [PATCH] Enable Debug flags in memory alloc and init functions. --- driver/others/init.c | 2 +- driver/others/memory.c | 25 +++++++++++++++++++------ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/driver/others/init.c b/driver/others/init.c index 452656c..7ee7dc4 100644 --- a/driver/others/init.c +++ b/driver/others/init.c @@ -92,7 +92,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define SHARE_NAME "/sys/devices/system/cpu/cpu%d/cache/index%d/shared_cpu_map" #define NODE_DIR "/sys/devices/system/node" -#undef DEBUG +//#undef DEBUG /* Private variables */ typedef struct { diff --git a/driver/others/memory.c b/driver/others/memory.c index fa41465..dd83344 100644 --- a/driver/others/memory.c +++ b/driver/others/memory.c @@ -68,9 +68,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. /* or implied, of The University of Texas at Austin. */ /*********************************************************************/ -#undef DEBUG +//#undef DEBUG #include "common.h" +#include #ifdef OS_WINDOWS #define ALLOC_WINDOWS @@ -386,11 +387,23 @@ static void *alloc_mmap(void *address){ MMAP_ACCESS, MMAP_POLICY, -1, 0); if (map_address != (void *)-1) { - + #ifdef OS_LINUX - my_mbind(map_address, BUFFER_SIZE * SCALING, MPOL_PREFERRED, NULL, 0, 0); +#ifdef DEBUG + int ret; + ret=my_mbind(map_address, BUFFER_SIZE * SCALING, MPOL_PREFERRED, NULL, 0, 0); + if(ret==-1){ + int errsv=errno; + perror("alloc_mmap:"); + printf("error code=%d,\tmap_address=%lx\n",errsv,map_address); + } + +#else + my_mbind(map_address, BUFFER_SIZE * SCALING, MPOL_PREFERRED, NULL, 0, 0); +#endif #endif + allocsize = DGEMM_P * DGEMM_Q * sizeof(double); start = (BLASULONG)map_address; @@ -986,7 +999,7 @@ void *blas_memory_alloc(int procpos){ memory[position].addr = map_address; #ifdef DEBUG - printf(" Mapping Succeeded. %p(%d)\n", (void *)alloc_area[position], position); + printf(" Mapping Succeeded. %p(%d)\n", (void *)memory[position].addr, position); #endif } @@ -1017,7 +1030,7 @@ void *blas_memory_alloc(int procpos){ #ifdef DEBUG printf("Mapped : %p %3d\n\n", - (void *)alloc_area[position], position); + (void *)memory[position].addr, position); #endif return (void *)memory[position].addr; @@ -1060,7 +1073,7 @@ void blas_memory_free(void *free_area){ #ifdef DEBUG for (position = 0; position < NUM_BUFFERS; position++) - printf("%4ld %p : %d\n", position, alloc_area[position], alloc_used[position]); + printf("%4ld %p : %d\n", position, memory[position].addr, memory[position].used); #endif return; -- 2.7.4