From f3b5539e72bc7f52b26fc1b5ea5d1d9ee47649e8 Mon Sep 17 00:00:00 2001 From: Jeff Hammond Date: Wed, 16 Oct 2024 12:27:52 +0300 Subject: [PATCH] add alg that does O(N^5) on CPU but other on GPU, which is slower --- src/tce/ccsd/ccsd_t2.F | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/tce/ccsd/ccsd_t2.F b/src/tce/ccsd/ccsd_t2.F index 54dc478335..bbe3240e6d 100644 --- a/src/tce/ccsd/ccsd_t2.F +++ b/src/tce/ccsd/ccsd_t2.F @@ -309,11 +309,19 @@ SUBROUTINE ccsd_t2(rtdb,d_f1,d_i0,d_t1,d_t2,d_v2, CALL ccsd_t2_7_3(d_t2,k_t2_offset,d_v2,k_v2_offset, & d_i1,k_i1_offset) else if (ccsd_t2_7_alg.eq.2) then + ! no GPU in 7_1_x yet - it just does transpose CALL ccsd_t2_7_1_x(d_v2,k_v2_offset, & d_i1,k_i1_offset,maxh,maxp) CALL ccsd_t2_7_2_x(d_t1,k_t1_offset,d_v2,k_v2_offset, & d_i1,k_i1_offset,maxh,maxp) CALL ccsd_t2_7_3_x(d_t2,k_t2_offset,d_v2,k_v2_offset, + & d_i1,k_i1_offset,maxh,maxp) + else if (ccsd_t2_7_alg.eq.3) then + CALL ccsd_t2_7_1(d_v2,k_v2_offset, + & d_i1,k_i1_offset,maxh,maxp) + CALL ccsd_t2_7_2(d_t1,k_t1_offset,d_v2,k_v2_offset, + & d_i1,k_i1_offset,maxh,maxp) + CALL ccsd_t2_7_3_x(d_t2,k_t2_offset,d_v2,k_v2_offset, & d_i1,k_i1_offset,maxh,maxp) else CALL errquit('ccsd_t2_7_alg',ccsd_t2_7_alg,INPUT_ERR) @@ -322,7 +330,7 @@ SUBROUTINE ccsd_t2(rtdb,d_f1,d_i0,d_t1,d_t2,d_v2, if (ccsd_t2_7_alg.eq.1) then CALL ccsd_t2_7(d_t2,k_t2_offset,d_i1,k_i1_offset, & d_i0,k_i0_offset) - else if (ccsd_t2_7_alg.eq.2) then + else if (ccsd_t2_7_alg.gt.1) then CALL ccsd_t2_7_x(d_t2,k_t2_offset,d_i1,k_i1_offset, & d_i0,k_i0_offset,maxh,maxp) else