本文主要介绍RC服务类型的建链行为。
1 Local QP Initial Creation and Setup
1.1 CQ and PD Created Before Creating the Local QP
1)CQ Creation
在创建本地QP之前,software必须首先让HCA创建CQ,以便与将要创建的SQ和RQ相关联。QP的SQ与RQ可以有单独的CQ,也可以共享一个CQ。software通过执行多次verb调用的Create CQ,创建多个CQ。调用时,软件提供以下参数:
——HCA标识符(HCA句柄)。
——要创建的CQ期望大小。
CQ被创建后,verb返回以下参数:
——标识新创建的CQ句柄。
——CQ的实际大小(HCA如果不支持请求的大小,则创建较小的CQ,并返回实际的CQ大小)。
2)PD Creation
通过执行Allocate PD verb创造,唯一的输入参数是HCA句柄,唯一的输出参数是PD值。
1.2 Create the Local QP
软件通过执行verb调用的Create QP在HCA中创建QP,verb命令HCA接口创建所需类型的QP。输入参数为:
——HCA句柄。
——QP类型。
——与QP的SQ与RQ相关的CQ句柄。
——software期望发布到QP的SQ与RQ上的WR的最大数量。
——将发布到QP的SQ与RQ的WR的Gather/S