@@ -168,18 +168,20 @@ TEST_F(TestModuleHamiltVeff, veff_pw_spin_op_gpu_batch)
168168 std::vector<std::complex <double >> out1_spin (out_spin.size (), std::complex <double >(0 , 0 ));
169169 std::vector<std::complex <double >> expected_out1_spin (out_spin.size (), std::complex <double >(0 , 0 ));
170170
171- std::vector<std::complex <double >> res = out_spin;
172- std::vector<std::complex <double >> res1 = out1_spin;
173- res.insert (res.end (), res.begin (), res.end ());
174- res1.insert (res1.end (), res1.begin (), res1.end ());
171+ std::vector<std::complex <double >> res_batch = out_spin;
172+ std::vector<std::complex <double >> res1_batch = out1_spin;
173+ std::vector<std::complex <double >> expected_out_spin_batch = expected_out_spin;
174+ std::vector<std::complex <double >> expected_out1_spin_batch = expected_out1_spin;
175+ res_batch.insert (res_batch.end (), res_batch.begin (), res_batch.end ());
176+ res1_batch.insert (res1_batch.end (), res1_batch.begin (), res1_batch.end ());
175177 double * d_in = NULL ;
176178 std::complex <double >* d_res = NULL , * d_res1 = NULL ;
177179 resize_memory_double_op ()(d_in, in_spin.size ());
178- resize_memory_complex_op ()(d_res, res .size ());
179- resize_memory_complex_op ()(d_res1, res1 .size ());
180+ resize_memory_complex_op ()(d_res, res_batch .size ());
181+ resize_memory_complex_op ()(d_res1, res1_batch .size ());
180182 syncmem_double_h2d_op ()(d_in, in_spin.data (), in_spin.size ());
181- syncmem_complex_h2d_op ()(d_res, res .data (), res .size ());
182- syncmem_complex_h2d_op ()(d_res1, res1 .data (), res1 .size ());
183+ syncmem_complex_h2d_op ()(d_res, res_batch .data (), res_batch .size ());
184+ syncmem_complex_h2d_op ()(d_res1, res1_batch .data (), res1_batch .size ());
183185
184186 const double * in_[4 ];
185187 for (int ii = 0 ; ii < 4 ; ii++) {
@@ -188,13 +190,13 @@ TEST_F(TestModuleHamiltVeff, veff_pw_spin_op_gpu_batch)
188190
189191 veff_gpu_op ()(gpu_ctx, this ->size , d_res, d_res1, in_ , 2 );
190192
191- syncmem_complex_d2h_op ()(res .data (), d_res, res .size ());
192- syncmem_complex_d2h_op ()(res1 .data (), d_res1, res1 .size ());
193- expected_out_spin .insert (expected_out_spin .end (), expected_out_spin .begin (), expected_out_spin .end ());
194- expected_out1_spin .insert (expected_out1_spin .end (), expected_out1_spin .begin (), expected_out1_spin .end ());
195- for (int ii = 0 ; ii < res .size (); ii++) {
196- EXPECT_LT (fabs (res [ii] - expected_out_spin [ii]), 7.5e-5 );
197- EXPECT_LT (fabs (res1 [ii] - expected_out1_spin [ii]), 6e-5 );
193+ syncmem_complex_d2h_op ()(res_batch .data (), d_res, res_batch .size ());
194+ syncmem_complex_d2h_op ()(res1_batch .data (), d_res1, res1_batch .size ());
195+ expected_out_spin_batch .insert (expected_out_spin_batch .end (), expected_out_spin_batch .begin (), expected_out_spin_batch .end ());
196+ expected_out1_spin_batch .insert (expected_out1_spin_batch .end (), expected_out1_spin_batch .begin (), expected_out1_spin_batch .end ());
197+ for (int ii = 0 ; ii < res_batch .size (); ii++) {
198+ EXPECT_LT (fabs (res_batch [ii] - expected_out_spin_batch [ii]), 7.5e-5 );
199+ EXPECT_LT (fabs (res1_batch [ii] - expected_out1_spin_batch [ii]), 6e-5 );
198200 }
199201 delete_memory_double_op ()(d_in);
200202 delete_memory_complex_op ()(d_res);
0 commit comments