| 113 | }; |
| 114 | |
| 115 | XLA_TEST_F(SVDTest, Simple2D) { |
| 116 | XlaBuilder builder(TestName()); |
| 117 | |
| 118 | Array2D<float> simple_2d_4x4_ = Array2D<float>{ |
| 119 | {4, 6, 8, 10}, |
| 120 | {6, 45, 54, 63}, |
| 121 | {8, 54, 146, 166}, |
| 122 | {10, 63, 166, 310}, |
| 123 | }; |
| 124 | XlaOp a; |
| 125 | auto a_data = CreateR2Parameter<float>(simple_2d_4x4_, 0, "a", &builder, &a); |
| 126 | auto result = SVD(a, 100, 1e-6); |
| 127 | ComputeMatmulUDVT(result, &builder); |
| 128 | |
| 129 | ComputeAndCompareR2<float>(&builder, simple_2d_4x4_, {a_data.get()}, |
| 130 | ErrorSpec(1e-3, 1e-3)); |
| 131 | } |
| 132 | |
| 133 | XLA_TEST_F(SVDTest, Test_VWVt_EQ_A_2x4x5) { |
| 134 | XlaBuilder builder(TestName()); |