--- trunk/uoms/src/defines.h 2010/05/12 11:28:19 13
+++ trunk/uoms/src/defines.h 2010/11/29 18:07:07 14
@@ -1,51 +1,51 @@
-/*****************************************************************************/
-/* */
-/* Copyright (c) 2008, 2009, 2010 */
-/* Computer Architecture Group (CAG) */
-/* University of A Coruña, Spain */
-/* (http://gac.des.udc.es) */
-/* Galicia Supercomputing Center (CESGA) */
-/* (http://www.cesga.es) */
-/* Hewlett-Packard Spain (HP) */
-/* (http://www.hp.es) */
-/* */
-/* This file is part of UPC Operations Microbenchmarking Suite (UOMS). */
-/* */
-/* UOMS is free software: you can redistribute it and/or modify */
-/* it under the terms of the GNU Lesser General Public License as published */
-/* by the Free Software Foundation, either version 3 of the License, or */
-/* (at your option) any later version. */
-/* */
-/* UOMS is distributed in the hope that it will be useful, */
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
-/* GNU Lesser General Public License for more details. */
-/* */
-/* You should have received a copy of the GNU Lesser General Public License */
-/* along with UOMS. If not, see . */
-/* */
-/*****************************************************************************/
-
-/*****************************************************************************/
-/* */
-/* FUNDING: This development has been funded by Hewlett-Packard Spain */
-/* */
-/* Project Name: */
-/* UPCHACO (2008-2011) */
-/* Subproject: */
-/* Improving UPC Usability and Performance in Constellation Systems: */
-/* Implementation/Extensions of UPC Libraries. */
-/* (UPCPUProject -> UPC Performance and Usability Project) */
-/* */
-/*****************************************************************************/
+/******************************************************************************/
+/* */
+/* Copyright (c) 2008, 2009, 2010 */
+/* Computer Architecture Group (CAG) */
+/* University of A Coruña, Spain */
+/* (http://gac.des.udc.es) */
+/* Galicia Supercomputing Center (CESGA) */
+/* (http://www.cesga.es) */
+/* Hewlett-Packard Spain (HP) */
+/* (http://www.hp.es) */
+/* */
+/* This file is part of UPC Operations Microbenchmarking Suite (UOMS). */
+/* */
+/* UOMS is free software: you can redistribute it and/or modify */
+/* it under the terms of the GNU Lesser General Public License as published */
+/* by the Free Software Foundation, either version 3 of the License, or */
+/* (at your option) any later version. */
+/* */
+/* UOMS is distributed in the hope that it will be useful, */
+/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
+/* GNU Lesser General Public License for more details. */
+/* */
+/* You should have received a copy of the GNU Lesser General Public License */
+/* along with UOMS. If not, see . */
+/* */
+/******************************************************************************/
+
+/******************************************************************************/
+/* */
+/* FUNDING: This development has been funded by Hewlett-Packard Spain */
+/* */
+/* Project Name: */
+/* UPCHACO (2008-2011) */
+/* Subproject: */
+/* Improving UPC Usability and Performance in Constellation Systems: */
+/* Implementation/Extensions of UPC Libraries. */
+/* (UPCPUProject -> UPC Performance and Usability Project) */
+/* */
+/******************************************************************************/
-/*****************************************************************************
+/******************************************************************************
For further documentation, see
[1] Files under doc/
-******************************************************************************/
+*******************************************************************************/
/*
Do not edit this file!
@@ -72,92 +72,100 @@
#ifdef ASYNCI_MEM_TEST
#ifdef ASYNC_MEM_TEST
- #define NUM_BMS 51
+ #define NUM_BMS 57
#else
- #define NUM_BMS 45
+ #define NUM_BMS 51
#endif
#else
#ifdef ASYNC_MEM_TEST
- #define NUM_BMS 45
+ #define NUM_BMS 51
#else
- #define NUM_BMS 39
+ #define NUM_BMS 45
#endif
#endif
-#define VERSION "1.0"
+#define VERSION "1.1"
-#define BARRIER 0
-#define BROADCAST 1
-#define SCATTER 2
-#define GATHER 3
-#define GATHERALL 4
-#define EXCHANGE 5
-#define PERMUTE 6
-#define MEMGET 7
-#define MEMPUT 8
-#define MEMCPY 9
-#define LMEMGET 10
-#define LMEMPUT 11
-#define LMEMCPY 12
-#define SMEMCPY 13
-#define MEMMOVE 14
-
-#define ALLALLOC 15
-#define FREE 16
-
-#define REDUCE_C 17
-#define PREFIX_REDUCE_C 18
-#define REDUCE_UC 19
-#define PREFIX_REDUCE_UC 20
-#define REDUCE_S 21
-#define PREFIX_REDUCE_S 22
-#define REDUCE_US 23
-#define PREFIX_REDUCE_US 24
-#define REDUCE_I 25
-#define PREFIX_REDUCE_I 26
-#define REDUCE_UI 27
-#define PREFIX_REDUCE_UI 28
-#define REDUCE_L 29
-#define PREFIX_REDUCE_L 30
-#define REDUCE_UL 31
-#define PREFIX_REDUCE_UL 32
-#define REDUCE_F 33
-#define PREFIX_REDUCE_F 34
-#define REDUCE_D 35
-#define PREFIX_REDUCE_D 36
-#define REDUCE_LD 37
-#define PREFIX_REDUCE_LD 38
+#define FORALL_R 0
+#define FORALL_W 1
+#define FORALL_RW 2
+
+#define FOR_R 3
+#define FOR_W 4
+#define FOR_RW 5
+
+#define BARRIER 6
+#define BROADCAST 7
+#define SCATTER 8
+#define GATHER 9
+#define GATHERALL 10
+#define EXCHANGE 11
+#define PERMUTE 12
+#define MEMGET 13
+#define MEMPUT 14
+#define MEMCPY 15
+#define LMEMGET 16
+#define LMEMPUT 17
+#define LMEMCPY 18
+#define SMEMCPY 19
+#define MEMMOVE 20
+
+#define ALLALLOC 21
+#define FREE 22
+
+#define REDUCE_C 23
+#define PREFIX_REDUCE_C 24
+#define REDUCE_UC 25
+#define PREFIX_REDUCE_UC 26
+#define REDUCE_S 27
+#define PREFIX_REDUCE_S 28
+#define REDUCE_US 29
+#define PREFIX_REDUCE_US 30
+#define REDUCE_I 31
+#define PREFIX_REDUCE_I 32
+#define REDUCE_UI 33
+#define PREFIX_REDUCE_UI 34
+#define REDUCE_L 35
+#define PREFIX_REDUCE_L 36
+#define REDUCE_UL 37
+#define PREFIX_REDUCE_UL 38
+#define REDUCE_F 39
+#define PREFIX_REDUCE_F 40
+#define REDUCE_D 41
+#define PREFIX_REDUCE_D 42
+#define REDUCE_LD 43
+#define PREFIX_REDUCE_LD 44
#ifdef ASYNCI_MEM_TEST
#ifdef ASYNC_MEM_TEST
- #define AMEMGET 39
- #define AMEMPUT 40
- #define AMEMCPY 41
- #define ALMEMGET 42
- #define ALMEMPUT 43
- #define ALMEMCPY 44
+ #define AMEMGET 45
+ #define AMEMPUT 46
+ #define AMEMCPY 47
+ #define ALMEMGET 48
+ #define ALMEMPUT 49
+ #define ALMEMCPY 50
+ #define AIMEMGET 51
+ #define AIMEMPUT 52
+ #define AIMEMCPY 53
+ #define AILMEMGET 54
+ #define AILMEMPUT 55
+ #define AILMEMCPY 56
+ #else
#define AIMEMGET 45
#define AIMEMPUT 46
#define AIMEMCPY 47
#define AILMEMGET 48
#define AILMEMPUT 49
#define AILMEMCPY 50
- #else
- #define AIMEMGET 39
- #define AIMEMPUT 40
- #define AIMEMCPY 41
- #define AILMEMGET 42
- #define AILMEMPUT 43
- #define AILMEMCPY 44
#endif
#else
#ifdef ASYNC_MEM_TEST
- #define AMEMGET 39
- #define AMEMPUT 40
- #define AMEMCPY 41
- #define ALMEMGET 42
- #define ALMEMPUT 43
- #define ALMEMCPY 44
+ #define AMEMGET 45
+ #define AMEMPUT 46
+ #define AMEMCPY 47
+ #define ALMEMGET 48
+ #define ALMEMPUT 49
+ #define ALMEMCPY 50
#endif
#endif
@@ -165,19 +173,19 @@
if( var == NULL ){ \
printf("TH%02d: ERROR: %s == NULL\n", MYTHREAD, #var ); \
mem_is_ok = -1; \
- } \
- else{ \
- mem_is_ok = 0; \
- } \
+ } \
+ else{ \
+ mem_is_ok = 0; \
+ } \
}
#define UPCMEM_OK(var) { \
if( var == NULL ){ \
printf("TH%02d: ERROR: %s == NULL\n", MYTHREAD, #var ); \
- if (!MYTHREAD) upc_free(var); \
+ if (!MYTHREAD) upc_free(var); \
mem_is_ok = -1; \
- } \
- else{ \
- mem_is_ok = 0; \
- } \
+ } \
+ else{ \
+ mem_is_ok = 0; \
+ } \
}