sgetrf 测试矩阵

/*矩阵原型                                                        
        | 1.0  1.0  1.0  1.0  0.0  0.0   0.0   0.0   0.0 |
        | 1.0  1.0  1.0  1.0  1.0  0.0   0.0   0.0   0.0 |
        | 4.0  1.0  1.0  1.0  1.0  1.0   0.0   0.0   0.0 |
        | 0.0  5.0  1.0  1.0  1.0  1.0   1.0   0.0   0.0 |
A    =  | 0.0  0.0  6.0  1.0  1.0  1.0   1.0   1.0   0.0 |
        | 0.0  0.0  0.0  7.0  1.0  1.0   1.0   1.0   1.0 |
        | 0.0  0.0  0.0  0.0  8.0  1.0   1.0   1.0   1.0 |
        | 0.0  0.0  0.0  0.0  0.0  9.0   1.0   1.0   1.0 |
        | 0.0  0.0  0.0  0.0  0.0  0.0  10.0  11.0  12.0 |
*/


//column major stored:
  float amatrix[81]={
		1.0, 1.0, 4.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 
		1.0, 1.0, 1.0, 5.0, 0.0, 0.0, 0.0, 0.0, 0.0, 
		1.0, 1.0, 1.0, 1.0, 6.0, 0.0, 0.0, 0.0, 0.0, 
		1.0, 1.0, 1.0, 1.0, 1.0, 7.0, 0.0, 0.0, 0.0, 
		0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 8.0, 0.0, 0.0, 
		0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 9.0, 0.0, 
		0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0,10.0, 
		0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0,11.0, 
		0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0,12.0	
  };



一步一步partial Pivoting:

MatrixA(9,9), MatrixB(9,9)
h_B:

  1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000   0.00000   0.00000
  1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000   0.00000
  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000



h_B_LU_0th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.25000   0.75000   0.75000   0.75000   0.75000  -0.25000   0.00000   0.00000   0.00000
  0.25000   0.75000   0.75000   0.75000  -0.25000  -0.25000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_1th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.25000   0.15000   0.60000   0.60000  -0.40000  -0.40000  -0.15000   0.00000   0.00000
  0.25000   0.15000   0.60000   0.60000   0.60000  -0.40000  -0.15000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_2th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.25000   0.15000   0.10000   0.50000   0.50000  -0.50000  -0.25000  -0.10000   0.00000
  0.25000   0.15000   0.10000   0.50000  -0.50000  -0.50000  -0.25000  -0.10000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_3th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.25000   0.15000   0.10000   0.07143  -0.57143  -0.57143  -0.32143  -0.17143  -0.07143
  0.25000   0.15000   0.10000   0.07143   0.42857  -0.57143  -0.32143  -0.17143  -0.07143
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_4th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.62500  -0.37500  -0.22500  -0.12500
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.50000  -0.25000  -0.10000   0.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_5th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.05556  -0.19444  -0.04444   0.05556
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.06944  -0.30556  -0.15556  -0.05556
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
h_B_LU_6th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.06944  -0.03056   0.18056   0.31111
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.05556  -0.01944   0.16944   0.28889
h_B_LU_7th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.06944  -0.03056   0.18056   0.31111
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.05556  -0.01944   0.93846  -0.00308
h_B_LU_8th:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.06944  -0.03056   0.18056   0.31111
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.05556  -0.01944   0.93846  -0.00308
h_B_LU:

  4.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000   0.00000
  0.00000   5.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000   0.00000
  0.00000   0.00000   6.00000   1.00000   1.00000   1.00000   1.00000   1.00000   0.00000
  0.00000   0.00000   0.00000   7.00000   1.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   8.00000   1.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   9.00000   1.00000   1.00000   1.00000
  0.00000   0.00000   0.00000   0.00000   0.00000   0.00000  10.00000  11.00000  12.00000
  0.25000   0.15000   0.10000   0.07143   0.05357  -0.06944  -0.03056   0.18056   0.31111
  0.25000   0.15000   0.10000   0.07143  -0.07143  -0.05556  -0.01944   0.93846  -0.00308

Pivot_cpu:
 3  4  5  6  7  8  9  8  9 Computing result using CUDA Kernel...
done

选出当前列中剩余元素的最大值的行号imax,将 i 行 与 imax行进行全行交换。

参考网址:

IBM DocsIBM Documentation.https://www.ibm.com/docs/en/essl/6.3?topic=subroutines-sgetrf-dgetrf-cgetrf-zgetrf-general-matrix-factorization#am5gr_hsgetrf

^_^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值