voutloopy.br

来自「用于GPU通用计算的编程语言BrookGPU 0.4」· BR 代码 · 共 1,099 行 · 第 1/3 页

BR
1,099
字号
   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine2f(float input0[][],                            float input1[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else {      output=input1[newindex];   }}kernel void floatstreamCombine2(float input0[][],                           float input1[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine3f(float input0[][],                            float input1[][],                            float input2[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else {      output=input2[newindex];   }}kernel void floatstreamCombine3(float input0[][],                           float input1[][],                           float input2[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine4f(float input0[][],                            float input1[][],                            float input2[][],                            float input3[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else {      output=input3[newindex];   }}kernel void floatstreamCombine4(float input0[][],                           float input1[][],                           float input2[][],                           float input3[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine5f(float input0[][],                            float input1[][],                            float input2[][],                            float input3[][],                            float input4[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else {      output=input4[newindex];   }}/*kernel void floatstreamCombine5(float input0[][],                           float input1[][],                           float input2[][],                           float input3[][],                           float input4[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else if (whichmod==4) {      output=input4[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine6f(float input0[][],                            float input1[][],                            float input2[][],                            float input3[][],                            float input4[][],                            float input5[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else if (whichmod==4) {      output=input4[newindex];   }else {      output=input5[newindex];   }}kernel void floatstreamCombine6(float input0[][],                           float input1[][],                           float input2[][],                           float input3[][],                           float input4[][],                           float input5[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else if (whichmod==4) {      output=input4[newindex];   }else if (whichmod==5) {      output=input5[newindex];   }else {      output=oldoutput;   }}kernel void floatstreamCombine7f(float input0[][],                            float input1[][],                            float input2[][],                            float input3[][],                            float input4[][],                            float input5[][],                            float input6[][],                            float modulus,                            float length,                             float lengthmodmodulus,                            out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         -0.5f,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else if (whichmod==4) {      output=input4[newindex];   }else if (whichmod==5) {      output=input5[newindex];   }else {      output=input6[newindex];   }}kernel void floatstreamCombine7(float input0[][],                           float input1[][],                           float input2[][],                           float input3[][],                           float input4[][],                           float input5[][],                           float input6[][],                           float modulus,                           float offset,                           float length,                            float lengthmodmodulus,                           float oldoutput<>,                           out float output <>) {   float2 newindex;   float whichmod;   calculateDividedIndex(indexof(output), modulus, length, newindex);   calculateIndexModulus(indexof(output),                          modulus,                         offset,                         lengthmodmodulus,                         whichmod);   if (whichmod==0||whichmod==modulus) {      output=input0[newindex];   }else if (whichmod==1) {      output=input1[newindex];   }else if (whichmod==2) {      output=input2[newindex];   }else if (whichmod==3) {      output=input3[newindex];   }else if (whichmod==4) {      output=input4[newindex];   }else if (whichmod==5) {      output=input5[newindex];

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?