Skip to content

Commit dd74c62

Browse files
committed
pml/ob1: custom matching cleanup and configury
This commit updates the new custom matching code in pml/ob1 so it can not be enabled with a configure option. This commit also renames the fuzzy-matching headers to avoid potential name conflicts and removes the use of C reserved identifiers. Signed-off-by: Nathan Hjelm <[email protected]>
1 parent 572694b commit dd74c62

19 files changed

+3659
-3593
lines changed

ompi/mca/pml/ob1/Makefile.am

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,14 @@ ob1_sources = \
4747
pml_ob1_recvreq.h \
4848
pml_ob1_sendreq.c \
4949
pml_ob1_sendreq.h \
50-
pml_ob1_start.c
50+
pml_ob1_start.c \
51+
custommatch/pml_ob1_custom_match.h \
52+
custommatch/pml_ob1_custom_match_arrays.h \
53+
custommatch/pml_ob1_custom_match_vectors.h \
54+
custommatch/pml_ob1_custom_match_linkedlist.h \
55+
custommatch/pml_ob1_custom_match_fuzzy512-byte.h \
56+
custommatch/pml_ob1_custom_match_fuzzy512-short.h \
57+
custommatch/pml_ob1_custom_match_fuzzy512-word.h
5158

5259
# If we have CUDA support requested, build the CUDA file also
5360
if OPAL_cuda_support

ompi/mca/pml/ob1/configure.m4

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,44 @@ AC_DEFUN([MCA_ompi_pml_ob1_POST_CONFIG], [
2222
# ------------------------------------------------
2323
# We can always build, unless we were explicitly disabled.
2424
AC_DEFUN([MCA_ompi_pml_ob1_CONFIG],[
25+
OPAL_VAR_SCOPE_PUSH([pml_ob1_matching_engine])
26+
AC_ARG_WITH([pml-ob1-matching], [AC_HELP_STRING([--with-pml-ob1-matching=type],
27+
[Configure pml/ob1 to use an alternate matching engine. Only valid on x86_64 systems.
28+
Valid values are: none, default, arrays, fuzzy-byte, fuzzy-short, fuzzy-word, vector (default: none)])])
29+
30+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_NONE
31+
32+
if test -n "$with_pml_ob1_matching" ; then
33+
case $with_pml_ob1_matching in
34+
none)
35+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_NONE
36+
;;
37+
default)
38+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_LINKEDLIST
39+
;;
40+
arrays)
41+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_ARRAYS
42+
;;
43+
fuzzy-byte)
44+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_FUZZY_BYTE
45+
;;
46+
fuzzy-short)
47+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_FUZZY_SHORT
48+
;;
49+
fuzzy-word)
50+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_FUZZY_WORD
51+
;;
52+
vector)
53+
pml_ob1_matching_engine=MCA_PML_OB1_CUSTOM_MATCHING_VECTOR
54+
;;
55+
*)
56+
AC_ERROR([invalid matching type specified for --pml-ob1-matching: $with_pml_ob1_matching])
57+
;;
58+
esac
59+
fi
60+
61+
AC_DEFINE_UNQUOTED([MCA_PML_OB1_CUSTOM_MATCHING], [$pml_ob1_matching_engine], [Custom matching engine to use in pml/ob1])
62+
2563
AC_CONFIG_FILES([ompi/mca/pml/ob1/Makefile])
2664
[$1]
2765
])dnl

0 commit comments

Comments
 (0)