]> git.openfabrics.org - ~ardavis/dapl.git/commitdiff
Add a configuration option for the maximum message size.
authorJianxin Xiong <jianxin.xiong@intel.com>
Thu, 27 Sep 2012 16:27:28 +0000 (09:27 -0700)
committerJianxin Xiong <jianxin.xiong@intel.com>
Thu, 27 Sep 2012 16:27:28 +0000 (09:27 -0700)
dapl/svc/mpxyd.c
doc/mpxyd.conf

index b8b79def791c7551d47d3f8a7a260d7ae0610b89..ee966bb2db604620a6f9e56b7508ed12a6dda4d1 100644 (file)
@@ -85,6 +85,7 @@ static int mix_buffer_sg = 128 * 1024;
 static int mix_cmd_depth = 50;
 static int mix_cmd_size = 256;
 static int mix_shared_buffer = 0;
+static int mix_max_msg_mb = 256;
 
 /* cm parameters */
 static int mcm_depth = 500;
@@ -494,6 +495,8 @@ static void mpxy_set_options(void)
                        log_level = atoi(value);
                else if (!strcasecmp("lock_file", opt))
                        strcpy(lock_file, value);
+               else if (!strcasecmp("max_message_mb", opt))
+                       mix_max_msg_mb = atoi(value);
                else if (!strcasecmp("buffer_pool_shared", opt))
                        mix_shared_buffer = atoi(value);
                else if (!strcasecmp("buffer_pool_mb", opt))
@@ -525,6 +528,7 @@ static void mpxy_log_options(void)
        mlog(0, "RDMA buffer pool size %d MB\n", mix_buffer_mb);
        mlog(0, "RDMA buffer segment size %d\n", mix_buffer_sg);
        mlog(0, "RDMA buffer alignment %d\n", mix_align);
+       mlog(0, "Maximum message size %d MB\n", mix_max_msg_mb);
        mlog(0, "mcm msg queue depth %d\n", mcm_depth);
        mlog(0, "mcm msg completion signal rate %d\n", mcm_signal);
 }
@@ -2012,7 +2016,7 @@ static int mix_qp_create(mcm_scif_dev_t *smd, dat_mix_qp_t *pmsg)
        memset((void *)&qp_create, 0, sizeof(qp_create));
        qp_create.cap.max_recv_wr = pmsg->qp_t.max_recv_wr;
        qp_create.cap.max_recv_sge = pmsg->qp_t.max_recv_sge;
-       qp_create.cap.max_send_wr = pmsg->qp_t.max_send_wr * (MIX_MAX_MSG_SIZE/mix_buffer_sg);
+       qp_create.cap.max_send_wr = pmsg->qp_t.max_send_wr * (mix_max_msg_mb*1024*1024/mix_buffer_sg);
        qp_create.cap.max_send_sge = pmsg->qp_t.max_send_sge;
        qp_create.cap.max_inline_data = pmsg->qp_t.max_inline_data;
        qp_create.qp_type = IBV_QPT_RC;
index bb15b21da56909b8e62bf13b4ba913f33802d5d9..51e0900fd87457e11d8c91375b01e1027ef1f20f 100644 (file)
@@ -56,6 +56,11 @@ mcm_depth 500
 \r
 mcm_signal_rate 100\r
 \r
+# max_message_mb:\r
+# Specifies the maximum message size. The default is 256 (MB).\r
+\r
+max_message_mb 256\r
+\r
 # buffer_pool_shared:\r
 # Specifies if the pre-allocated and pinned buffer is shared between \r
 # connections from the same client, or is private to each connection.\r