OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-CompactHash commits / 723d612

Adding OpenMP Pragmas
723d61293b44e80350ab94c4cdc066051616b11d
by brobey <brobey@lanl.gov> · 2015-11-08T01:28:01.000Z

Changed files (6) +24 -17

HashFactory/HashFactory.c +8 -0
……@@ -1776,6 +1776,7 @@ int intintIdentityPerfectOpenMPHash_SetupTable(intintHash_Table * table) {
17761776 (intintIdentityPerfectOpenMPHash_Bucket *) & table->
17771777 tableData[sizeof(intintIdentityPerfectOpenMPHash_TableData)];
17781778 if (intintHash_GetTableType(table) & ~HASH_SENTINEL_PERFECT_HASHES) {
1779#pragma omp parallel for
17791780 for (int index = 0;
17801781 index <
17811782 ((intintIdentityPerfectOpenMPHash_TableData *) table->
……@@ -1790,6 +1791,7 @@ int intintIdentityPerfectOpenMPHash_EmptyTable(intintHash_Table * table) {
17901791 intintIdentityPerfectOpenMPHash_Bucket *buckets =
17911792 (intintIdentityPerfectOpenMPHash_Bucket *) & table->
17921793 tableData[sizeof(intintIdentityPerfectOpenMPHash_TableData)];
1794#pragma omp parallel for
17931795 for (int index = 0;
17941796 index <
17951797 ((intintIdentityPerfectOpenMPHash_TableData *) table->tableData)->
……@@ -2932,6 +2934,7 @@ int intintIdentitySentinelPerfectOpenMPHash_SetupTable(intintHash_Table * table)
29322934 tableData[sizeof
29332935 (intintIdentitySentinelPerfectOpenMPHash_TableData)];
29342936 if (intintHash_GetTableType(table) & ~HASH_SENTINEL_PERFECT_HASHES) {
2937#pragma omp parallel for
29352938 for (int index = 0;
29362939 index <
29372940 ((intintIdentitySentinelPerfectOpenMPHash_TableData *)
……@@ -2949,6 +2952,7 @@ int intintIdentitySentinelPerfectOpenMPHash_EmptyTable(intintHash_Table * table)
29492952 (intintIdentitySentinelPerfectOpenMPHash_Bucket *) & table->
29502953 tableData[sizeof
29512954 (intintIdentitySentinelPerfectOpenMPHash_TableData)];
2955#pragma omp parallel for
29522956 for (int index = 0;
29532957 index <
29542958 ((intintIdentitySentinelPerfectOpenMPHash_TableData *) table->
……@@ -4194,6 +4198,7 @@ int intintLCGLinearOpenCompactOpenMPHash_SetupTable(intintHash_Table * table) {
41944198 (intintLCGLinearOpenCompactOpenMPHash_Bucket *) & table->
41954199 tableData[sizeof(intintLCGLinearOpenCompactOpenMPHash_TableData)];
41964200 if (intintHash_GetTableType(table) & ~HASH_SENTINEL_PERFECT_HASHES) {
4201#pragma omp parallel for
41974202 for (int index = 0;
41984203 index <
41994204 ((intintLCGLinearOpenCompactOpenMPHash_TableData *) table->
……@@ -4208,6 +4213,7 @@ int intintLCGLinearOpenCompactOpenMPHash_EmptyTable(intintHash_Table * table) {
42084213 intintLCGLinearOpenCompactOpenMPHash_Bucket *buckets =
42094214 (intintLCGLinearOpenCompactOpenMPHash_Bucket *) & table->
42104215 tableData[sizeof(intintLCGLinearOpenCompactOpenMPHash_TableData)];
4216#pragma omp parallel for
42114217 for (int index = 0;
42124218 index <
42134219 ((intintLCGLinearOpenCompactOpenMPHash_TableData *) table->
……@@ -5598,6 +5604,7 @@ int intintLCGQuadraticOpenCompactOpenMPHash_SetupTable(intintHash_Table * table)
55985604 tableData[sizeof
55995605 (intintLCGQuadraticOpenCompactOpenMPHash_TableData)];
56005606 if (intintHash_GetTableType(table) & ~HASH_SENTINEL_PERFECT_HASHES) {
5607#pragma omp parallel for
56015608 for (int index = 0;
56025609 index <
56035610 ((intintLCGQuadraticOpenCompactOpenMPHash_TableData *)
……@@ -5613,6 +5620,7 @@ int intintLCGQuadraticOpenCompactOpenMPHash_EmptyTable(intintHash_Table * table)
56135620 (intintLCGQuadraticOpenCompactOpenMPHash_Bucket *) & table->
56145621 tableData[sizeof
56155622 (intintLCGQuadraticOpenCompactOpenMPHash_TableData)];
5623#pragma omp parallel for
56165624 for (int index = 0;
56175625 index <
56185626 ((intintLCGQuadraticOpenCompactOpenMPHash_TableData *) table->
HashFactory/Makefile.am +1 -1
……@@ -24,7 +24,7 @@ HashFactory.h: HashFactory.hp HashFactory.hm perfectHash.hm compactHash.hm
2424 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.hm HashFactory.hp | ${INDENT} -linux -brf -o HashFactory.h
2525
2626HashFactory.c: HashFactory.cp HashFactory.cm HashFactory.cl perfectHash.cm compactHash.cm HashFactory.h
27 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.cm HashFactory.cp | ${INDENT} -linux -brf -o HashFactory.c
27 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.cm HashFactory.cp | ${INDENT} -linux -brf | sed -e '/OMP_PRAGMA_PARALLEL_FOR/s/[[:space:]]*OMP_PRAGMA_PARALLEL_FOR;/#pragma omp parallel for/' > HashFactory.c
2828 ./embed_source.pl HashFactory.cl >> HashFactory.c
2929
3030HashFactory.cl: HashFactory.clp HashFactory.cm perfectHash.cm compactHash.cm
HashFactory/Makefile.in +1 -1
……@@ -770,7 +770,7 @@ HashFactory.h: HashFactory.hp HashFactory.hm perfectHash.hm compactHash.hm
770770 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.hm HashFactory.hp | ${INDENT} -linux -brf -o HashFactory.h
771771
772772HashFactory.c: HashFactory.cp HashFactory.cm HashFactory.cl perfectHash.cm compactHash.cm HashFactory.h
773 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.cm HashFactory.cp | ${INDENT} -linux -brf -o HashFactory.c
773 ${CPREPROCESSOR} -CC -x c -imacros HashFactory.cm HashFactory.cp | ${INDENT} -linux -brf | sed -e '/OMP_PRAGMA_PARALLEL_FOR/s/[[:space:]]*OMP_PRAGMA_PARALLEL_FOR;/#pragma omp parallel for/' > HashFactory.c
774774 ./embed_source.pl HashFactory.cl >> HashFactory.c
775775
776776HashFactory.cl: HashFactory.clp HashFactory.cm perfectHash.cm compactHash.cm
HashFactory/baseHash.cm +12 -13
……@@ -72,7 +72,8 @@
7272 }NAME##MODIFIER##Hash_Bucket;\
7373\
7474
75#define BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, FACTORY_DESTROY_EXP, CREATE_EXP, INIT_EXP, ALLOC_EXP, DESTROY_EXP)\
75#define BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, FACTORY_DESTROY_EXP,\
76 CREATE_EXP, INIT_EXP, ALLOC_EXP, DESTROY_EXP, SETUP_EXP, EMPTY_EXP)\
7677 \
7778 NAME##Hash_Table *NAME##MODIFIER##Hash_CreateTable(NAME##Hash_Factory* factory, int hashIndex, size_t keyRange, size_t numEntries, float loadFactor){\
7879 NAME##Hash_Table* table = (NAME##Hash_Table*)malloc(sizeof(NAME##Hash_Table));\
……@@ -116,9 +117,6 @@
116117 free(table);\
117118 return exitCode;\
118119 }\
119\
120
121#define BASE_HASH_INIT(NAME, MODIFIER, SETUP_EXP, EMPTY_EXP)\
122120 \
123121 int NAME##MODIFIER##Hash_SetupTable(NAME##Hash_Table *table){\
124122 int exitCode=0;\
……@@ -282,6 +280,8 @@
282280#define OPENMP_HASH_SETUP_EXP(NAME, MODIFIER, INNER_EMPTY_EXP)\
283281 NAME##MODIFIER##Hash_Bucket *buckets = (NAME##MODIFIER##Hash_Bucket*)&table->tableData[sizeof(NAME##MODIFIER##Hash_TableData)];\
284282 if (intintHash_GetTableType(table) & ~HASH_SENTINEL_PERFECT_HASHES) {\
283 OMP_PRAGMA_PARALLEL_FOR;\
284 \
285285 for(int index = 0; index < ((NAME##MODIFIER##Hash_TableData*)table->tableData)->numBuckets; index++){\
286286 INNER_EMPTY_EXP\
287287 }\
……@@ -299,6 +299,7 @@
299299
300300#define OPENMP_HASH_EMPTY_EXP(NAME, MODIFIER, INNER_EMPTY_EXP)\
301301 NAME##MODIFIER##Hash_Bucket *buckets = (NAME##MODIFIER##Hash_Bucket*)&table->tableData[sizeof(NAME##MODIFIER##Hash_TableData)];\
302 OMP_PRAGMA_PARALLEL_FOR;\
302303 for(int index = 0; index < ((NAME##MODIFIER##Hash_TableData*)table->tableData)->numBuckets; index++){\
303304 INNER_EMPTY_EXP\
304305 }\
……@@ -313,9 +314,8 @@
313314 \
314315 BASE_TYPES_DEFINE(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC_DATA)\
315316 \
316 BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, , CREATE_EXP, INIT_EXP, ,)\
317 \
318 BASE_HASH_INIT(NAME, MODIFIER, HASH_SETUP_EXP(NAME, MODIFIER, INNER_EMPTY_EXP), HASH_EMPTY_EXP(NAME, MODIFIER, INNER_EMPTY_EXP))\
317 BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, , CREATE_EXP, INIT_EXP, , ,\
318 HASH_SETUP_EXP(NAME, MODIFIER, INNER_EMPTY_EXP), HASH_EMPTY_EXP(NAME, MODIFIER, INNER_EMPTY_EXP))\
319319 \
320320 BASE_HASH_METHODS(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, SEARCH_EXP, CMPXCHG_HASH_READ_KEY_EXP, ,##__VA_ARGS__)\
321321 \
……@@ -543,9 +543,9 @@
543543 \
544544 BASE_TYPES_DEFINE(NAME, MODIFIER##CL, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC_DATA)\
545545 \
546 BASE_HASH_UTIL(NAME, MODIFIER##CL, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, CL_FACTORY_CREATE_EXP(NAME, MODIFIER, FACTORY_CREATE_EXP, STRINGIFY(CL_UTIL_PROGRAM(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, BASE_TYPES_DEFINE, COMPRESS_FUNC_DATA, INNER_EMPTY_EXP))), CL_FACTORY_DESTROY_EXP(NAME, MODIFIER, ), CL_CREATE_EXP(NAME, MODIFIER, CREATE_EXP), INIT_EXP, CL_ALLOC_EXP(NAME, MODIFIER), CL_DESTROY_EXP(NAME))\
547 \
548 BASE_HASH_INIT(NAME, MODIFIER##CL, CL_SETUP_EXP(NAME, MODIFIER, ), CL_EMPTY_EXP(NAME, MODIFIER, ))\
546 BASE_HASH_UTIL(NAME, MODIFIER##CL, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, CL_FACTORY_CREATE_EXP(NAME, MODIFIER, FACTORY_CREATE_EXP,\
547 STRINGIFY(CL_UTIL_PROGRAM(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, BASE_TYPES_DEFINE, COMPRESS_FUNC_DATA, INNER_EMPTY_EXP))), CL_FACTORY_DESTROY_EXP(NAME, MODIFIER, ),\
548 CL_CREATE_EXP(NAME, MODIFIER, CREATE_EXP), INIT_EXP, CL_ALLOC_EXP(NAME, MODIFIER), CL_DESTROY_EXP(NAME), CL_SETUP_EXP(NAME, MODIFIER, ), CL_EMPTY_EXP(NAME, MODIFIER, ))\
549549 \
550550 int NAME##MODIFIER##CLHash_QuerySingle(NAME##Hash_Table *table, KEY_TYPE key, VALUE_TYPE *valueOutput){\
551551 return NAME##MODIFIER##CLHash_Query(table, 1, &key, valueOutput);\
……@@ -651,9 +651,8 @@
651651 \
652652 BASE_TYPES_DEFINE(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC_DATA)\
653653 \
654 BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, , CREATE_EXP, INIT_EXP, , )\
655 \
656 BASE_HASH_INIT(NAME, MODIFIER, OPENMP_HASH_SETUP_EXP(NAME, MODIFIER, INNER_EMPTY_EXP), OPENMP_HASH_EMPTY_EXP(NAME, MODIFIER, INNER_EMPTY_EXP))\
654 BASE_HASH_UTIL(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, FACTORY_CREATE_EXP, , CREATE_EXP, INIT_EXP, , ,\
655 OPENMP_HASH_SETUP_EXP(NAME, MODIFIER, INNER_EMPTY_EXP), OPENMP_HASH_EMPTY_EXP(NAME, MODIFIER, INNER_EMPTY_EXP))\
657656 \
658657 BASE_HASH_METHODS(NAME, MODIFIER, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, SEARCH_EXP, CMPXCHG_HASH_READ_KEY_EXP, ,##__VA_ARGS__)\
659658 \
HashFactory/compactHash.cm +1 -1
……@@ -57,7 +57,7 @@
5757
5858#define COMPACT_OPENMP_HASH_DEFINE(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, INIT_EXP, SEARCH_EXP, ...)\
5959 \
60 BASE_HASH_DEFINE(NAME, MODIFIER##CompactOpenMP, HASH_ID, KEY_TYPE, VALUE_TYPE, KEY_VALUE_BASE_HASH_TYPES_DEFINE, COMPRESS_FUNC, COMPRESS_FUNC_DATA,,, INIT_EXP, SEARCH_EXP, KEY_VALUE_HASH_INNER_EMPTY_EXP, ##__VA_ARGS__)\
60 OPENMP_BASE_HASH_DEFINE(NAME, MODIFIER##CompactOpenMP, HASH_ID, KEY_TYPE, VALUE_TYPE, KEY_VALUE_BASE_HASH_TYPES_DEFINE, COMPRESS_FUNC, COMPRESS_FUNC_DATA,,, INIT_EXP, SEARCH_EXP, KEY_VALUE_HASH_INNER_EMPTY_EXP, ##__VA_ARGS__)\
6161\
6262
6363#define OPEN_COMPACT_HASH_INIT_EXP(NAME, MODIFIER, INIT_EXP) \
HashFactory/perfectHash.cm +1 -1
……@@ -108,7 +108,7 @@
108108
109109#define SENTINEL_PERFECT_OPENMP_HASH_DEFINE(NAME, MODIFIER, HASH_ID, KEY_TYPE, VALUE_TYPE, COMPRESS_FUNC, COMPRESS_FUNC_DATA, INIT_EXP)\
110110 \
111 BASE_HASH_DEFINE(NAME, MODIFIER##SentinelPerfectOpenMP, HASH_ID, KEY_TYPE, VALUE_TYPE, SENTINEL_VALUE_BASE_HASH_TYPES_DEFINE, COMPRESS_FUNC, COMPRESS_FUNC_DATA,,, SENTINEL_PERFECT_HASH_INIT_EXP(NAME, MODIFIER##SentinelPerfectOpenMP, INIT_EXP, COMPRESS_FUNC, COMPRESS_FUNC_DATA, KEY_TYPE), SENTINEL_PERFECT_HASH_SEARCH_EXP, SENTINEL_VALUE_HASH_INNER_EMPTY_EXP(NAME, MODIFIER##SentinelPerfectOpenMP))\
111 OPENMP_BASE_HASH_DEFINE(NAME, MODIFIER##SentinelPerfectOpenMP, HASH_ID, KEY_TYPE, VALUE_TYPE, SENTINEL_VALUE_BASE_HASH_TYPES_DEFINE, COMPRESS_FUNC, COMPRESS_FUNC_DATA,,, SENTINEL_PERFECT_HASH_INIT_EXP(NAME, MODIFIER##SentinelPerfectOpenMP, INIT_EXP, COMPRESS_FUNC, COMPRESS_FUNC_DATA, KEY_TYPE), SENTINEL_PERFECT_HASH_SEARCH_EXP, SENTINEL_VALUE_HASH_INNER_EMPTY_EXP(NAME, MODIFIER##SentinelPerfectOpenMP))\
112112\
113113
114114#define IDENTITY_PERFECT_CL_HASH_KERN_DEFINE(NAME, KEY_TYPE, VALUE_TYPE)\