[ofa-general] [PATCH][master] dapl: cma provider needs to support lower inline send default for iWARP
Arlin Davis
arlin.r.davis at intel.com
Mon Apr 28 11:47:41 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 1f41186..41986a3 100755
--- a/dapl/openib_cma/dapl_ib_util.c
+++ b/dapl/openib_cma/dapl_ib_util.c
@@ -270,8 +270,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 71593fd..3368180 100755
--- a/dapl/openib_cma/dapl_ib_util.h
+++ b/dapl/openib_cma/dapl_ib_util.h
@@ -111,7 +111,8 @@ typedef struct _ib_wait_obj_handle
#define IB_INVALID_HANDLE NULL
/* inline send rdma threshold */
-#define INLINE_SEND_DEFAULT 64
+#define INLINE_SEND_IWARP_DEFAULT 64
+#define INLINE_SEND_IB_DEFAULT 200
/* CMA private data areas */
#define CMA_PDATA_HDR 36
--
1.5.2.5
More information about the general
mailing list