根据条件张量的真假,从两个输入张量中选择元素,构成一个新的张量。
1 | int Select(bool *cond, T *thenBranch, T *elseBranch, T *output, size_t length); |
参数 |
输入/输出 |
说明 |
约束 |
---|---|---|---|
cond |
输入 |
用于比较的判断条件。 |
指针不为空,且只接受一维张量。 |
thenBranch |
输入 |
若条件为真,则选择的元素。 |
指针不为空,且只接受一维张量。 |
elseBranch |
输入 |
若条件为假,则选择的元素。 |
指针不为空,且只接受一维张量。 |
output |
输入 |
用于存储经过判断条件,构成的张量,作为输出。 |
指针不为空,且只接受一维张量。 |
length |
输入 |
用于计算的张量长度。 |
取值范围[0,2^64-1],length等于output的有效空间,cond有效空间,thenBranch有效空间的最小值,需用户保障,防止缓冲区溢出等安全问题。 |