[ofa-general] [PATCH][dat1.2] dapl: cma provider needs to support lower inline send default for iWARP
Davis, Arlin R
arlin.r.davis at intel.com
Mon Apr 28 11:47:38 PDT 2008
IB and iWARP work best with different defaults. Add transport check
and set default accordingly. 64 for iWARP, 200 for IB.
DAPL_MAX_INLINE environment variable is still used to override.
Signed-off by: Arlin Davis ardavis at ichips.intel.com
---
dapl/openib_cma/dapl_ib_util.c | 11 +++++++++--
dapl/openib_cma/dapl_ib_util.h | 3 ++-
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/dapl/openib_cma/dapl_ib_util.c
b/dapl/openib_cma/dapl_ib_util.c
index 56c0a05..4de5a2c 100755
--- a/dapl/openib_cma/dapl_ib_util.c
+++ b/dapl/openib_cma/dapl_ib_util.c
@@ -274,8 +274,15 @@ DAT_RETURN dapls_ib_open_hca(IN IB_HCA_NAME
hca_name, IN DAPL_HCA *hca_ptr)
(unsigned long long)bswap_64(gid->global.interface_id));
/* set inline max with env or default, get local lid and gid 0
*/
- hca_ptr->ib_trans.max_inline_send =
- dapl_os_get_env_val("DAPL_MAX_INLINE",
INLINE_SEND_DEFAULT);
+ if (hca_ptr->ib_hca_handle->device->transport_type
+ == IBV_TRANSPORT_IWARP)
+ hca_ptr->ib_trans.max_inline_send =
+ dapl_os_get_env_val("DAPL_MAX_INLINE",
+ INLINE_SEND_IWARP_DEFAULT);
+ else
+ hca_ptr->ib_trans.max_inline_send =
+ dapl_os_get_env_val("DAPL_MAX_INLINE",
+ INLINE_SEND_IB_DEFAULT);
/* set CM timer defaults */
hca_ptr->ib_trans.max_cm_timeout =
diff --git a/dapl/openib_cma/dapl_ib_util.h
b/dapl/openib_cma/dapl_ib_util.h
index 93f4fde..1e464b2 100755
--- a/dapl/openib_cma/dapl_ib_util.h
+++ b/dapl/openib_cma/dapl_ib_util.h
@@ -122,7 +122,8 @@ typedef struct _ib_wait_obj_handle
#define IB_INVALID_HANDLE NULL
/* inline send rdma threshold */
-#define INLINE_SEND_DEFAULT 128
+#define INLINE_SEND_IWARP_DEFAULT 64
+#define INLINE_SEND_IB_DEFAULT 200
/* CM private data areas */
#define IB_MAX_REQ_PDATA_SIZE 48
--
1.5.2.5
More information about the general
mailing list