10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-07-23 11:17:33 +02:00

ungodly hack to prevent double providing

This commit is contained in:
Yann Garniron 2018-08-30 21:24:45 +02:00
parent 0609e8c627
commit bb6e073cf1
2 changed files with 9 additions and 1 deletions

View File

@ -82,11 +82,16 @@ BEGIN_PROVIDER [ double precision, delta_ij_tmp, (N_states,N_det_delta_ij,2) ]
double precision, allocatable :: dress(:), del(:,:), del_s2(:,:) double precision, allocatable :: dress(:), del(:,:), del_s2(:,:)
double precision :: E_CI_before(N_states), relative_error double precision :: E_CI_before(N_states), relative_error
integer :: cnt = 0
! prevents re-providing if delta_ij_tmp is ! prevents re-providing if delta_ij_tmp is
! just being copied ! just being copied
if(N_det_delta_ij /= N_det) return !if(N_det_delta_ij /= N_det) return
cnt += 1
if(mod(cnt,2) == 0) return
if(.true.) then if(.true.) then
allocate(dress(N_states), del(N_states, N_det_delta_ij), del_s2(N_states, N_det_delta_ij)) allocate(dress(N_states), del(N_states, N_det_delta_ij), del_s2(N_states, N_det_delta_ij))

View File

@ -137,6 +137,7 @@ subroutine run_dress_slave(thread,iproce,energy)
end do end do
if(purge_task_id(will_send) /= 0) then if(purge_task_id(will_send) /= 0) then
call push_dress_results(zmq_socket_push, will_send, sum_f, edI_task, edI_index, breve_delta_m, purge_task_id(will_send), n_tasks) call push_dress_results(zmq_socket_push, will_send, sum_f, edI_task, edI_index, breve_delta_m, purge_task_id(will_send), n_tasks)
!call task_done_to_taskserver(zmq_to_qp_run_socket,worker_id,purge_task_id(will_send))
end if end if
purge_task_id(will_send) = 0 purge_task_id(will_send) = 0
call omp_unset_lock(sending) call omp_unset_lock(sending)
@ -177,6 +178,7 @@ subroutine run_dress_slave(thread,iproce,energy)
f(i_generator) += 1 f(i_generator) += 1
!push bidon !push bidon
if(task_id /= 0) then if(task_id /= 0) then
!call task_done_to_taskserver(zmq_to_qp_run_socket,worker_id,task_id)
call push_dress_results(zmq_socket_push, 0, 0, edI_task, edI_index, breve_delta_m, task_id, 1) call push_dress_results(zmq_socket_push, 0, 0, edI_task, edI_index, breve_delta_m, task_id, 1)
end if end if
end if end if
@ -185,6 +187,7 @@ subroutine run_dress_slave(thread,iproce,energy)
!$OMP SINGLE !$OMP SINGLE
do m=1,dress_N_cp do m=1,dress_N_cp
if(purge_task_id(m) /= 0) then if(purge_task_id(m) /= 0) then
!call task_done_to_taskserver(zmq_to_qp_run_socket,worker_id,purge_task_id(m))
call push_dress_results(zmq_socket_push, 0, 0, edI_task, edI_index, breve_delta_m, purge_task_id(m), 1) call push_dress_results(zmq_socket_push, 0, 0, edI_task, edI_index, breve_delta_m, purge_task_id(m), 1)
end if end if
end do end do