From 5627445e6f1ad0792ee936a4013d106566e2b53d Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Thu, 28 Jun 2018 10:38:57 +0200 Subject: [PATCH] Removed rmcc_zmq from tests --- plugins/Full_CI_ZMQ/run_pt2_slave.irp.f | 18 +++--- plugins/mrcepa0/mrcc_stoch_routines.irp.f | 17 ++++-- src/ZMQ/utils.irp.f | 4 +- tests/bats/mrcepa0.bats | 68 +++++++++++------------ 4 files changed, 57 insertions(+), 50 deletions(-) diff --git a/plugins/Full_CI_ZMQ/run_pt2_slave.irp.f b/plugins/Full_CI_ZMQ/run_pt2_slave.irp.f index 8ffe502c..cd780ad9 100644 --- a/plugins/Full_CI_ZMQ/run_pt2_slave.irp.f +++ b/plugins/Full_CI_ZMQ/run_pt2_slave.irp.f @@ -46,8 +46,8 @@ subroutine run_pt2_slave(thread,iproc,energy) done = .False. do while (.not.done) - n_tasks = max(1,n_tasks) - n_tasks = min(n_tasks,n_tasks_max) +! n_tasks = max(1,n_tasks) +! n_tasks = min(n_tasks,n_tasks_max) integer, external :: get_tasks_from_taskserver if (get_tasks_from_taskserver(zmq_to_qp_run_socket,worker_id, task_id, task, n_tasks) == -1) then @@ -61,24 +61,24 @@ subroutine run_pt2_slave(thread,iproc,energy) read (task(k),*) subset(k), i_generator(k) enddo -! double precision :: time0, time1 -! call wall_time(time0) + double precision :: time0, time1 + call wall_time(time0) do k=1,n_tasks pt2(:,k) = 0.d0 buf%cur = 0 call select_connected(i_generator(k),energy,pt2(1,k),buf,subset(k)) enddo -! call wall_time(time1) -! + call wall_time(time1) + integer, external :: tasks_done_to_taskserver if (tasks_done_to_taskserver(zmq_to_qp_run_socket,worker_id,task_id,n_tasks) == -1) then done = .true. endif call push_pt2_results(zmq_socket_push, i_generator, pt2, task_id, n_tasks) -! ! Try to adjust n_tasks around 5 second per job -! n_tasks = min(n_tasks,int( 5.d0*dble(n_tasks) / (time1 - time0 + 1.d-9)))+1 - n_tasks = n_tasks+1 + ! Try to adjust n_tasks around 1 second per job + n_tasks = min(n_tasks,int( 1.d0*dble(n_tasks) / (time1 - time0 + 1.d-9)))+1 +! n_tasks = n_tasks+1 end do integer, external :: disconnect_from_taskserver diff --git a/plugins/mrcepa0/mrcc_stoch_routines.irp.f b/plugins/mrcepa0/mrcc_stoch_routines.irp.f index edf73e1e..24068bec 100644 --- a/plugins/mrcepa0/mrcc_stoch_routines.irp.f +++ b/plugins/mrcepa0/mrcc_stoch_routines.irp.f @@ -400,12 +400,13 @@ end function &BEGIN_PROVIDER [ integer, comb_teeth ] &BEGIN_PROVIDER [ integer, N_cps_max ] implicit none + integer :: comb_per_cp comb_teeth = 16 - N_cps_max = 128 - !comb_per_cp = 64 + N_cps_max = 64 +! comb_per_cp = 64 gen_per_cp = (N_det_generators / N_cps_max) + 1 - N_cps_max += 1 - !N_cps_max = N_det_generators / comb_per_cp + 1 +! N_cps_max += 1 + N_cps_max = N_det_generators / gen_per_cp + 1 END_PROVIDER @@ -525,6 +526,11 @@ subroutine get_comb_val(stato, detail, cur_cp, val) val = 0d0 first = cp_first_tooth(cur_cp) + !TODO : check + if (first == 0) then + return + endif + do j = comb_teeth, first, -1 !DIR$ FORCEINLINE k = mrcc_find(curs, mrcc_cweight,size(mrcc_cweight), first_det_of_teeth(j), first_det_of_teeth(j+1)) @@ -590,7 +596,7 @@ end subroutine &BEGIN_PROVIDER [ double precision, mrcc_cweight_cache, (N_det_generators) ] &BEGIN_PROVIDER [ double precision, fractage, (comb_teeth) ] &BEGIN_PROVIDER [ double precision, comb_step ] -&BEGIN_PROVIDER [ integer, first_det_of_teeth, (comb_teeth+1) ] +&BEGIN_PROVIDER [ integer, first_det_of_teeth, (0:comb_teeth+1) ] &BEGIN_PROVIDER [ integer, first_det_of_comb ] &BEGIN_PROVIDER [ integer, tooth_of_det, (N_det_generators) ] implicit none @@ -649,6 +655,7 @@ end subroutine end do first_det_of_teeth(comb_teeth+1) = N_det_generators + 1 first_det_of_teeth(1) = first_det_of_comb + first_det_of_teeth(0) = 1 if(first_det_of_teeth(1) /= first_det_of_comb) then diff --git a/src/ZMQ/utils.irp.f b/src/ZMQ/utils.irp.f index 1f775413..3fbc842b 100644 --- a/src/ZMQ/utils.irp.f +++ b/src/ZMQ/utils.irp.f @@ -246,7 +246,7 @@ IRP_ENDIF ! stop 'Unable to set ZMQ_RCVBUF on pull socket' ! endif - rc = f77_zmq_setsockopt(new_zmq_pull_socket,ZMQ_RCVHWM,nproc,4) + rc = f77_zmq_setsockopt(new_zmq_pull_socket,ZMQ_RCVHWM,2,4) if (rc /= 0) then stop 'Unable to set ZMQ_RCVHWM on pull socket' endif @@ -323,7 +323,7 @@ IRP_ENDIF stop 'Unable to set ZMQ_LINGER on push socket' endif - rc = f77_zmq_setsockopt(new_zmq_push_socket,ZMQ_SNDHWM,5,4) + rc = f77_zmq_setsockopt(new_zmq_push_socket,ZMQ_SNDHWM,2,4) if (rc /= 0) then stop 'Unable to set ZMQ_SNDHWM on push socket' endif diff --git a/tests/bats/mrcepa0.bats b/tests/bats/mrcepa0.bats index 879a85e1..e2025752 100644 --- a/tests/bats/mrcepa0.bats +++ b/tests/bats/mrcepa0.bats @@ -21,23 +21,23 @@ source $QP_ROOT/tests/bats/common.bats.sh eq $energy -76.2379929298452 1.e-4 } -@test "MRCC-stoch H2O cc-pVDZ" { - INPUT=h2o.ezfio - EXE=mrcc_zmq - test_exe $EXE || skip - qp_edit -c $INPUT - ezfio set_file $INPUT - ezfio set determinants threshold_generators 1. - ezfio set determinants threshold_selectors 1. - ezfio set determinants read_wf True - ezfio set mrcepa0 lambda_type 1 - ezfio set mrcepa0 n_it_max_dressed_ci 3 - cp -r $INPUT TMP ; qp_run $EXE TMP - ezfio set_file TMP - energy="$(ezfio get mrcepa0 energy_pt2)" - rm -rf TMP - eq $energy -76.2379929298452 1.e-4 -} +#@test "MRCC-stoch H2O cc-pVDZ" { +# INPUT=h2o.ezfio +# EXE=mrcc_zmq +# test_exe $EXE || skip +# qp_edit -c $INPUT +# ezfio set_file $INPUT +# ezfio set determinants threshold_generators 1. +# ezfio set determinants threshold_selectors 1. +# ezfio set determinants read_wf True +# ezfio set mrcepa0 lambda_type 1 +# ezfio set mrcepa0 n_it_max_dressed_ci 3 +# cp -r $INPUT TMP ; qp_run $EXE TMP +# ezfio set_file TMP +# energy="$(ezfio get mrcepa0 energy_pt2)" +# rm -rf TMP +# eq $energy -76.2379929298452 1.e-4 +#} @test "MRCC H2O cc-pVDZ" { INPUT=h2o.ezfio @@ -57,23 +57,23 @@ source $QP_ROOT/tests/bats/common.bats.sh eq $energy -76.2379517543157 1.e-4 } -@test "MRCC-stoch H2O cc-pVDZ" { - INPUT=h2o.ezfio - EXE=mrcc_zmq - test_exe $EXE || skip - qp_edit -c $INPUT - ezfio set_file $INPUT - ezfio set determinants threshold_generators 1. - ezfio set determinants threshold_selectors 1. - ezfio set determinants read_wf True - ezfio set mrcepa0 lambda_type 0 - ezfio set mrcepa0 n_it_max_dressed_ci 3 - cp -r $INPUT TMP ; qp_run $EXE TMP - ezfio set_file TMP - energy="$(ezfio get mrcepa0 energy_pt2)" - rm -rf TMP - eq $energy -76.2379517543157 1.e-4 -} +#@test "MRCC-stoch H2O cc-pVDZ" { +# INPUT=h2o.ezfio +# EXE=mrcc_zmq +# test_exe $EXE || skip +# qp_edit -c $INPUT +# ezfio set_file $INPUT +# ezfio set determinants threshold_generators 1. +# ezfio set determinants threshold_selectors 1. +# ezfio set determinants read_wf True +# ezfio set mrcepa0 lambda_type 0 +# ezfio set mrcepa0 n_it_max_dressed_ci 3 +# cp -r $INPUT TMP ; qp_run $EXE TMP +# ezfio set_file TMP +# energy="$(ezfio get mrcepa0 energy_pt2)" +# rm -rf TMP +# eq $energy -76.2379517543157 1.e-4 +#} @test "MRSC2 H2O cc-pVDZ" { INPUT=h2o.ezfio