l-m.fp

来自「PDE simulator on GPU.」· FP 代码 · 共 50 行

FP
50
字号
!!FP1.0
#L-M matrix-matrix multiplication
#just for 4*4 matrixs now
#But we can generate the fragmen program in Application.
# 2 + DimensionOfMatirx*5 < 1024
# so the biggest matrix is 204*204
DECLARE OneTexOffset ={0, 0, 0, 0};

#find the (i,j) element in Texture
MOV R1.y, f[TEX0];#MATRIX X
MOV R2.x, f[TEX1];#MATRIX Y

#Step 0
TEX R4, R1, TEX0, 2D;
TEX R5, R2, TEX1, 2D;

MAD R3, R4, R5, R3;

#Step 1
ADD R1.x, R1, OneTexOffset.x;
ADD R2.y, R2, OneTexOffset.y;

TEX R4, R1, TEX0, 2D;
TEX R5, R2, TEX1, 2D;

MAD R3, R4, R5, R3;

#Step 2
ADD R1.x, R1, OneTexOffset.x;
ADD R2.y, R2, OneTexOffset.y;

TEX R4, R1, TEX0, 2D;
TEX R5, R2, TEX1, 2D;

MAD R3, R4, R5, R3;

#Step 3
ADD R1.x, R1, OneTexOffset.x;
ADD R2.y, R2, OneTexOffset.y;

TEX R4, R1, TEX0, 2D;
TEX R5, R2, TEX1, 2D;

MAD R3, R4, R5, R3;

#Step more if bigger dimension
#...

MOV o[COLR], R3;
END

⌨️ 快捷键说明

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