mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-29 06:35:28 -04:00
DBCSR-RMA-3D: fix a bug when using 3D layers and images
svn-origin-rev: 17376
This commit is contained in:
parent
339b0a3769
commit
ae3bd46f79
14 changed files with 481 additions and 32 deletions
|
|
@ -24,12 +24,13 @@ MODULE cp_dbcsr_cp2k_link
|
|||
cp_dbcsr_get_matrix_type, cp_dbcsr_has_symmetry, cp_dbcsr_reserve_blocks, cp_dbcsr_set, &
|
||||
cp_dbcsr_type, dbcsr_get_conf_avg_elements_images, dbcsr_get_conf_comm_thread_load, &
|
||||
dbcsr_get_conf_mm_driver, dbcsr_get_conf_mm_stacksize, dbcsr_get_conf_mpi_mem, &
|
||||
dbcsr_get_conf_nstacks, dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_randmat_seed, &
|
||||
dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_nstacks, dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_num_mult_images, &
|
||||
dbcsr_get_conf_randmat_seed, dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_use_mpi_filtering, dbcsr_set_conf_avg_elements_images, &
|
||||
dbcsr_set_conf_comm_thread_load, dbcsr_set_conf_max_ele_block, dbcsr_set_conf_mm_driver, &
|
||||
dbcsr_set_conf_mm_stacksize, dbcsr_set_conf_nstacks, dbcsr_set_conf_num_layers_3D, &
|
||||
dbcsr_set_conf_randmat_seed, dbcsr_set_conf_use_comm_thread, dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_num_mult_images, dbcsr_set_conf_randmat_seed, &
|
||||
dbcsr_set_conf_use_comm_thread, dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_use_mpi_filtering, dbcsr_type_no_symmetry, has_acc, has_mpi, &
|
||||
mm_driver_blas, mm_driver_matmul, mm_driver_smm, mm_driver_xsmm, mm_name_blas, &
|
||||
mm_name_matmul, mm_name_smm, mm_name_xsmm, multrec_limit
|
||||
|
|
@ -81,10 +82,8 @@ CONTAINS
|
|||
CHARACTER(len=*), PARAMETER :: routineN = 'cp_dbcsr_config', &
|
||||
routineP = moduleN//':'//routineN
|
||||
|
||||
INTEGER :: avg_elements_images, comm_thread_load, &
|
||||
error_handle, max_ele_block, &
|
||||
mm_driver, mm_ss, num_layers, &
|
||||
randmat_seed
|
||||
INTEGER :: avg_elements_images, comm_thread_load, error_handle, max_ele_block, mm_driver, &
|
||||
mm_ss, num_layers, num_mult_images, randmat_seed
|
||||
INTEGER, DIMENSION(3) :: nstacks
|
||||
LOGICAL :: use_comm_thread, use_mpi_exp, &
|
||||
use_mpi_filtering
|
||||
|
|
@ -101,6 +100,8 @@ CONTAINS
|
|||
"MAX_ELEMENTS_PER_BLOCK", i_val=max_ele_block)
|
||||
CALL section_vals_val_get(dbcsr_section, &
|
||||
"avg_elements_images", i_val=avg_elements_images)
|
||||
CALL section_vals_val_get(dbcsr_section, &
|
||||
"num_mult_images", i_val=num_mult_images)
|
||||
CALL section_vals_val_get(dbcsr_section, &
|
||||
"n_size_mnk_stacks", i_val=nstacks(1))
|
||||
nstacks(2:3) = nstacks(1)
|
||||
|
|
@ -147,6 +148,8 @@ CONTAINS
|
|||
CALL dbcsr_set_conf_mm_stacksize(mm_ss)
|
||||
IF (avg_elements_images > 0) &
|
||||
CALL dbcsr_set_conf_avg_elements_images(avg_elements_images)
|
||||
IF (num_mult_images > 0) &
|
||||
CALL dbcsr_set_conf_num_mult_images(num_mult_images)
|
||||
IF (nstacks(1) > 0) &
|
||||
CALL dbcsr_set_conf_nstacks(nstacks)
|
||||
CALL dbcsr_set_conf_use_mpi_filtering(use_mpi_filtering)
|
||||
|
|
@ -202,6 +205,8 @@ CONTAINS
|
|||
WRITE (UNIT=unit_num, FMT='(1X,A,T72,A)') &
|
||||
"DBCSR| Maximum elements for images", "UNLIMITED"
|
||||
ENDIF
|
||||
WRITE (UNIT=unit_num, FMT='(1X,A,T70,I11)') &
|
||||
"DBCSR| Multiplicative factor virtual images", dbcsr_get_conf_num_mult_images()
|
||||
WRITE (UNIT=unit_num, FMT='(1X,A,T70,I11)') &
|
||||
"DBCSR| Randmat seed", dbcsr_get_conf_randmat_seed()
|
||||
|
||||
|
|
|
|||
|
|
@ -33,9 +33,11 @@ MODULE dbcsr_config
|
|||
|
||||
PUBLIC :: dbcsr_get_conf_mpi_mem
|
||||
|
||||
PUBLIC :: dbcsr_set_conf_mm_driver, dbcsr_get_conf_mm_driver, dbcsr_get_conf_avg_elements_images
|
||||
PUBLIC :: dbcsr_set_conf_mm_driver, dbcsr_get_conf_mm_driver, &
|
||||
dbcsr_get_conf_avg_elements_images, dbcsr_get_conf_num_mult_images
|
||||
|
||||
PUBLIC :: dbcsr_set_conf_avg_elements_images, dbcsr_set_conf_nstacks, dbcsr_get_conf_nstacks
|
||||
PUBLIC :: dbcsr_set_conf_avg_elements_images, dbcsr_set_conf_num_mult_images, &
|
||||
dbcsr_set_conf_nstacks, dbcsr_get_conf_nstacks
|
||||
|
||||
PUBLIC :: dbcsr_set_conf_use_mpi_exp, dbcsr_get_conf_use_mpi_exp
|
||||
PUBLIC :: dbcsr_set_conf_num_layers_3D, dbcsr_get_conf_num_layers_3D
|
||||
|
|
@ -63,7 +65,7 @@ MODULE dbcsr_config
|
|||
mm_name_xsmm
|
||||
PUBLIC :: use_mpi_exp, use_mpi_filtering, use_comm_thread, comm_thread_load
|
||||
PUBLIC :: num_layers_3D
|
||||
PUBLIC :: max_elements_per_block, avg_elements_images
|
||||
PUBLIC :: max_elements_per_block, avg_elements_images, num_mult_images
|
||||
!
|
||||
PUBLIC :: is_initialized
|
||||
|
||||
|
|
@ -146,6 +148,9 @@ MODULE dbcsr_config
|
|||
! Maximum number of elements for each image
|
||||
INTEGER, SAVE :: avg_elements_images = -1
|
||||
|
||||
! Multiplicative factor for number of virtual images
|
||||
INTEGER, SAVE :: num_mult_images = 1
|
||||
|
||||
! Number of stacks to use
|
||||
INTEGER, SAVE :: nm_stacks = 3
|
||||
INTEGER, SAVE :: nn_stacks = 3
|
||||
|
|
@ -369,11 +374,7 @@ CONTAINS
|
|||
CHARACTER(len=*), PARAMETER :: routineN = 'dbcsr_set_conf_avg_elements_images', &
|
||||
routineP = moduleN//':'//routineN
|
||||
|
||||
INTEGER :: error_handle
|
||||
|
||||
CALL timeset(routineN, error_handle)
|
||||
avg_elements_images = new_avg_elements_images
|
||||
CALL timestop(error_handle)
|
||||
END SUBROUTINE dbcsr_set_conf_avg_elements_images
|
||||
|
||||
! **************************************************************************************************
|
||||
|
|
@ -386,6 +387,29 @@ CONTAINS
|
|||
dbcsr_get_conf_avg_elements_images = avg_elements_images
|
||||
END FUNCTION dbcsr_get_conf_avg_elements_images
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief ...
|
||||
!> \param new_num_mult_images ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE dbcsr_set_conf_num_mult_images(new_num_mult_images)
|
||||
INTEGER, INTENT(IN) :: new_num_mult_images
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'dbcsr_set_conf_num_mult_images', &
|
||||
routineP = moduleN//':'//routineN
|
||||
|
||||
num_mult_images = new_num_mult_images
|
||||
END SUBROUTINE dbcsr_set_conf_num_mult_images
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief ...
|
||||
!> \retval dbcsr_get_conf_num_mult_images ...
|
||||
! **************************************************************************************************
|
||||
FUNCTION dbcsr_get_conf_num_mult_images()
|
||||
INTEGER :: dbcsr_get_conf_num_mult_images
|
||||
|
||||
dbcsr_get_conf_num_mult_images = num_mult_images
|
||||
END FUNCTION dbcsr_get_conf_num_mult_images
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief ...
|
||||
!> \param nstacks ...
|
||||
|
|
|
|||
|
|
@ -34,11 +34,12 @@ MODULE dbcsr_api
|
|||
accdrv_priority_streams, dbcsr_get_conf_avg_elements_images, &
|
||||
dbcsr_get_conf_comm_thread_load, dbcsr_get_conf_max_ele_block, dbcsr_get_conf_mm_driver, &
|
||||
dbcsr_get_conf_mm_stacksize, dbcsr_get_conf_mpi_mem, dbcsr_get_conf_nstacks, &
|
||||
dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_randmat_seed, dbcsr_get_conf_use_comm_thread, &
|
||||
dbcsr_get_conf_use_mpi_exp, dbcsr_get_conf_use_mpi_filtering, &
|
||||
dbcsr_set_conf_avg_elements_images, dbcsr_set_conf_comm_thread_load, &
|
||||
dbcsr_set_conf_max_ele_block, dbcsr_set_conf_mm_driver, dbcsr_set_conf_mm_stacksize, &
|
||||
dbcsr_set_conf_nstacks, dbcsr_set_conf_num_layers_3D, dbcsr_set_conf_randmat_seed, &
|
||||
dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_num_mult_images, dbcsr_get_conf_randmat_seed, &
|
||||
dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_use_mpi_filtering, dbcsr_set_conf_avg_elements_images, &
|
||||
dbcsr_set_conf_comm_thread_load, dbcsr_set_conf_max_ele_block, dbcsr_set_conf_mm_driver, &
|
||||
dbcsr_set_conf_mm_stacksize, dbcsr_set_conf_nstacks, dbcsr_set_conf_num_layers_3D, &
|
||||
dbcsr_set_conf_num_mult_images, dbcsr_set_conf_randmat_seed, &
|
||||
dbcsr_set_conf_use_comm_thread, dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_use_mpi_filtering, dbcsr_set_default_config, has_acc, has_mpi, &
|
||||
mm_driver_auto, mm_driver_blas, mm_driver_matmul, mm_driver_smm, mm_driver_xsmm, &
|
||||
|
|
@ -214,6 +215,7 @@ MODULE dbcsr_api
|
|||
dbcsr_get_conf_max_ele_block, &
|
||||
dbcsr_get_conf_mm_driver, &
|
||||
dbcsr_get_conf_avg_elements_images, &
|
||||
dbcsr_get_conf_num_mult_images, &
|
||||
dbcsr_get_conf_mm_stacksize, &
|
||||
dbcsr_get_conf_mpi_mem, &
|
||||
dbcsr_get_conf_nstacks, &
|
||||
|
|
@ -290,6 +292,7 @@ MODULE dbcsr_api
|
|||
dbcsr_set_conf_mm_driver, &
|
||||
dbcsr_set_conf_mm_stacksize, &
|
||||
dbcsr_set_conf_avg_elements_images, &
|
||||
dbcsr_set_conf_num_mult_images, &
|
||||
dbcsr_set_conf_nstacks, &
|
||||
dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_use_mpi_filtering, &
|
||||
|
|
|
|||
9
src/dbcsr/dist/dbcsr_dist_methods.F
vendored
9
src/dbcsr/dist/dbcsr_dist_methods.F
vendored
|
|
@ -17,7 +17,8 @@ MODULE dbcsr_dist_methods
|
|||
array_release,&
|
||||
array_size
|
||||
USE dbcsr_config, ONLY: avg_elements_images,&
|
||||
comm_thread_load
|
||||
comm_thread_load,&
|
||||
num_mult_images
|
||||
USE dbcsr_error_handling, ONLY: dbcsr_assert,&
|
||||
dbcsr_fatal_level,&
|
||||
dbcsr_internal_error,&
|
||||
|
|
@ -501,8 +502,12 @@ CONTAINS
|
|||
|
||||
lcmv = lcm(nprows, npcols)
|
||||
num_images_1d = lcmv
|
||||
IF (num_mult_images .GT. 1) THEN
|
||||
num_images_1d = num_images_1d*num_mult_images
|
||||
RETURN
|
||||
ENDIF
|
||||
IF (matrix_dense_size_1d .EQ. 0) RETURN
|
||||
|
||||
!
|
||||
IF (avg_elements_images .GT. 0) THEN
|
||||
num_images_1d = num_images_1d* &
|
||||
CEILING((DBLE(matrix_dense_size_1d)/num_images_1d)/ &
|
||||
|
|
|
|||
|
|
@ -2361,6 +2361,29 @@ CONTAINS
|
|||
ileft_buffer_comm = 0
|
||||
ALLOCATE (do_comm_left(nrows3D))
|
||||
ALLOCATE (right_vcol(ncols3D), left_vrow(nrows3D))
|
||||
! Pre-set image coordinates
|
||||
IF (min_nimages .GT. 1 .AND. shift_k .GT. 0) THEN
|
||||
DO icol3D = 1, ncols3D
|
||||
CALL image_calculator(imgdist_right, &
|
||||
vprow=recv_vrow, &
|
||||
vpcol=right_vcol(icol3D), &
|
||||
mypcol=mypcol, &
|
||||
myvprow=right_myfirstvrow, &
|
||||
myvpcol=right_myfirstvcol+(icol3D-1)*layers_3D_C_reduction%side3D, &
|
||||
vprow_shift=start_k, &
|
||||
shifting='R')
|
||||
ENDDO
|
||||
DO irow3D = 1, nrows3D
|
||||
CALL image_calculator(imgdist_left, &
|
||||
vprow=left_vrow(irow3D), &
|
||||
vpcol=recv_vcol, &
|
||||
myprow=myprow, &
|
||||
myvprow=left_myfirstvrow+(irow3D-1)*layers_3D_C_reduction%side3D, &
|
||||
myvpcol=left_myfirstvcol, &
|
||||
vpcol_shift=start_k, &
|
||||
shifting='L')
|
||||
ENDDO
|
||||
ENDIF
|
||||
grouped_steps_index: DO istep_k = shift_k, nvirt_k+shift_k
|
||||
ivirt_k = istep_k/nranks3D
|
||||
v_ki = MOD(ivirt_k, min_nimages)
|
||||
|
|
@ -2562,7 +2585,8 @@ CONTAINS
|
|||
ENDIF
|
||||
IF (istep_k .GT. final_step_k) THEN
|
||||
!$OMP PARALLEL DEFAULT (NONE) &
|
||||
!$OMP SHARED (multrec, left_buffer, ileft_buffer_calc, buffers_calc) &
|
||||
!$OMP SHARED (multrec, left_buffer, ileft_buffer_calc, buffers_calc, &
|
||||
!$OMP myrow3D, mycol3D, product_matrix3D) &
|
||||
!$OMP PRIVATE (ithread)
|
||||
ithread = 0
|
||||
!$ ithread = omp_get_thread_num()
|
||||
|
|
@ -2572,6 +2596,12 @@ CONTAINS
|
|||
DEALLOCATE (multrec(ithread, &
|
||||
left_buffer(ileft_buffer_calc)%coord3D, &
|
||||
buffers_calc%right%coord3D)%p)
|
||||
IF (left_buffer(ileft_buffer_calc)%coord3D .NE. myrow3D .OR. &
|
||||
buffers_calc%right%coord3D .NE. mycol3D) THEN
|
||||
! Finalize the matrix to send
|
||||
CALL dbcsr_finalize(product_matrix3D%mats(left_buffer(ileft_buffer_calc)%coord3D, &
|
||||
buffers_calc%right%coord3D)%matrix)
|
||||
ENDIF
|
||||
!$OMP END PARALLEL
|
||||
ENDIF
|
||||
ENDIF wait_calc
|
||||
|
|
@ -2654,8 +2684,6 @@ CONTAINS
|
|||
irecv3D = MOD(nranks3D+myrank3D-iproc, nranks3D)
|
||||
irow3D = MOD(isend3D, nrows3D)+1
|
||||
icol3D = isend3D/nrows3D+1
|
||||
! Finalize the matrix to send
|
||||
CALL dbcsr_finalize(product_matrix3D%mats(irow3D, icol3D)%matrix)
|
||||
product_matrix_size_comm(idata, 1) = &
|
||||
product_matrix3D%mats(irow3D, icol3D)%matrix%m%index(dbcsr_slot_nze)
|
||||
IF (product_matrix_size_comm(idata, 1) .GT. 0) THEN
|
||||
|
|
|
|||
|
|
@ -44,7 +44,8 @@ MODULE cp_dbcsr_interface
|
|||
dbcsr_get_conf_avg_elements_images, dbcsr_get_conf_comm_thread_load, &
|
||||
dbcsr_get_conf_max_ele_block, dbcsr_get_conf_mm_driver, dbcsr_get_conf_mm_stacksize, &
|
||||
dbcsr_get_conf_mpi_mem, dbcsr_get_conf_nstacks, dbcsr_get_conf_num_layers_3D, &
|
||||
dbcsr_get_conf_randmat_seed, dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_num_mult_images, dbcsr_get_conf_randmat_seed, &
|
||||
dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_use_mpi_filtering, dbcsr_get_data_p, dbcsr_get_data_size, &
|
||||
dbcsr_get_data_type, dbcsr_get_diag, dbcsr_get_info, dbcsr_get_matrix_type, &
|
||||
dbcsr_get_num_blocks, dbcsr_get_occupation, dbcsr_get_stored_coordinates, &
|
||||
|
|
@ -64,7 +65,8 @@ MODULE cp_dbcsr_interface
|
|||
dbcsr_scale_by_vector, dbcsr_set, dbcsr_set_conf_avg_elements_images, &
|
||||
dbcsr_set_conf_comm_thread_load, dbcsr_set_conf_max_ele_block, dbcsr_set_conf_mm_driver, &
|
||||
dbcsr_set_conf_mm_stacksize, dbcsr_set_conf_nstacks, dbcsr_set_conf_num_layers_3D, &
|
||||
dbcsr_set_conf_randmat_seed, dbcsr_set_conf_use_comm_thread, dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_num_mult_images, dbcsr_set_conf_randmat_seed, &
|
||||
dbcsr_set_conf_use_comm_thread, dbcsr_set_conf_use_mpi_exp, &
|
||||
dbcsr_set_conf_use_mpi_filtering, dbcsr_set_diag, dbcsr_setname, dbcsr_sum_replicated, &
|
||||
dbcsr_test_arnoldi, dbcsr_test_binary_io, dbcsr_test_mm, dbcsr_trace, dbcsr_triu, &
|
||||
dbcsr_type_antisymmetric, dbcsr_type_complex_4, dbcsr_type_complex_8, &
|
||||
|
|
@ -93,13 +95,14 @@ MODULE cp_dbcsr_interface
|
|||
!
|
||||
! Interface to libdbcsr (contains cp2k timing and error)
|
||||
PUBLIC :: dbcsr_get_conf_comm_thread_load, &
|
||||
dbcsr_get_conf_avg_elements_images, &
|
||||
dbcsr_get_conf_avg_elements_images, dbcsr_get_conf_num_mult_images, &
|
||||
dbcsr_get_conf_mm_stacksize, dbcsr_get_conf_nstacks, &
|
||||
dbcsr_set_conf_mm_stacksize, &
|
||||
dbcsr_get_conf_use_mpi_exp, dbcsr_get_conf_use_mpi_filtering, &
|
||||
dbcsr_set_conf_num_layers_3D, dbcsr_get_conf_num_layers_3D
|
||||
PUBLIC :: dbcsr_set_conf_comm_thread_load, dbcsr_set_conf_max_ele_block, dbcsr_set_conf_mm_driver, &
|
||||
dbcsr_set_conf_avg_elements_images, dbcsr_set_conf_nstacks, dbcsr_set_conf_use_comm_thread, &
|
||||
dbcsr_set_conf_num_mult_images, &
|
||||
has_mpi, dbcsr_set_conf_use_mpi_exp, dbcsr_set_conf_use_mpi_filtering
|
||||
PUBLIC :: has_acc, dbcsr_create_dist_block_cyclic, dbcsr_create_dist_r_unrot, dbcsr_distribution_local_cols, &
|
||||
dbcsr_distribution_nlocal_rows, dbcsr_distribution_nrows, dbcsr_distribution_local_rows, &
|
||||
|
|
|
|||
|
|
@ -24,10 +24,11 @@ MODULE input_cp2k_global
|
|||
accdrv_do_inhomogenous, accdrv_min_flop_process, accdrv_min_flop_sort, &
|
||||
accdrv_posterior_buffers, accdrv_posterior_streams, accdrv_priority_buffers, &
|
||||
accdrv_priority_streams, dbcsr_get_conf_avg_elements_images, dbcsr_get_conf_max_ele_block, &
|
||||
dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_randmat_seed, dbcsr_get_conf_use_comm_thread, &
|
||||
dbcsr_get_conf_use_mpi_exp, dbcsr_get_conf_use_mpi_filtering, mm_driver_auto, &
|
||||
mm_driver_blas, mm_driver_matmul, mm_driver_smm, mm_driver_xsmm, mm_name_auto, &
|
||||
mm_name_blas, mm_name_matmul, mm_name_smm, mm_name_xsmm, multrec_limit
|
||||
dbcsr_get_conf_num_layers_3D, dbcsr_get_conf_num_mult_images, dbcsr_get_conf_randmat_seed, &
|
||||
dbcsr_get_conf_use_comm_thread, dbcsr_get_conf_use_mpi_exp, &
|
||||
dbcsr_get_conf_use_mpi_filtering, mm_driver_auto, mm_driver_blas, mm_driver_matmul, &
|
||||
mm_driver_smm, mm_driver_xsmm, mm_name_auto, mm_name_blas, mm_name_matmul, mm_name_smm, &
|
||||
mm_name_xsmm, multrec_limit
|
||||
USE cp_output_handling, ONLY: add_last_numeric,&
|
||||
cp_print_key_section_create,&
|
||||
debug_print_level,&
|
||||
|
|
@ -554,6 +555,13 @@ CONTAINS
|
|||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
!
|
||||
CALL keyword_create(keyword, name="num_mult_images", &
|
||||
description="Multiplicative factor for number of virtual images.", &
|
||||
usage="num_mult_images 2", &
|
||||
default_i_val=dbcsr_get_conf_num_mult_images())
|
||||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
!
|
||||
CALL keyword_create(keyword, name="randmat_seed", &
|
||||
description="Seed value used to create random matrices in testing", &
|
||||
usage="randmat_seed 3141592", &
|
||||
|
|
|
|||
184
tests/QS/regtest-rma-3D/H2O-32-dftb-ls-2_mult.inp
Normal file
184
tests/QS/regtest-rma-3D/H2O-32-dftb-ls-2_mult.inp
Normal file
|
|
@ -0,0 +1,184 @@
|
|||
@SET NREP 2
|
||||
@SET GMAXVAL 40
|
||||
&FORCE_EVAL
|
||||
METHOD QS
|
||||
&DFT
|
||||
&QS
|
||||
LS_SCF
|
||||
METHOD DFTB
|
||||
&DFTB
|
||||
SELF_CONSISTENT T
|
||||
DO_EWALD T
|
||||
DISPERSION F
|
||||
&PARAMETER
|
||||
PARAM_FILE_PATH DFTB/scc
|
||||
PARAM_FILE_NAME scc_parameter
|
||||
UFF_FORCE_FIELD uff_table
|
||||
&END PARAMETER
|
||||
&END DFTB
|
||||
&DISTRIBUTION
|
||||
BASIC_OPTIMIZATION .FALSE.
|
||||
BASIC_SPATIAL_OPTIMIZATION .TRUE.
|
||||
&END
|
||||
&END QS
|
||||
&PRINT
|
||||
&MULLIKEN OFF
|
||||
&END
|
||||
&END
|
||||
&LS_SCF
|
||||
MAX_SCF 20
|
||||
EPS_FILTER 1.0E-7
|
||||
EPS_SCF 1.0E-6
|
||||
MU -0.20
|
||||
MIXING_FRACTION 0.45
|
||||
S_PRECONDITIONER MOLECULAR
|
||||
REPORT_ALL_SPARSITIES ON
|
||||
PERFORM_MU_SCAN OFF
|
||||
&END
|
||||
&SCF
|
||||
MAX_SCF 30
|
||||
EPS_SCF 1.0E-7
|
||||
&PRINT
|
||||
&RESTART OFF
|
||||
&END
|
||||
&END
|
||||
&END
|
||||
&POISSON
|
||||
&EWALD
|
||||
EWALD_TYPE SPME
|
||||
GMAX ${GMAXVAL} ${GMAXVAL} ${GMAXVAL}
|
||||
O_SPLINE 5
|
||||
&END EWALD
|
||||
&END POISSON
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&PRINT
|
||||
&MOLECULES OFF
|
||||
&END
|
||||
&ATOMIC_COORDINATES OFF
|
||||
&END
|
||||
&END
|
||||
&TOPOLOGY
|
||||
MULTIPLE_UNIT_CELL ${NREP} ${NREP} ${NREP}
|
||||
&END
|
||||
&CELL
|
||||
ABC 9.8528 9.8528 9.8528
|
||||
MULTIPLE_UNIT_CELL ${NREP} ${NREP} ${NREP}
|
||||
&END CELL
|
||||
# 32 H2O (TIP5P,1bar,300K) a = 9.8528
|
||||
&COORD
|
||||
O 2.280398 9.146539 5.088696 H2O
|
||||
H 1.762019 9.820429 5.528454 H2O
|
||||
H 3.095987 9.107088 5.588186 H2O
|
||||
! O 1.251703 2.406261 7.769908 H2O
|
||||
! H 0.554129 2.982634 8.082024 H2O
|
||||
! H 1.771257 2.954779 7.182181 H2O
|
||||
! O 1.596302 6.920128 0.656695 H2O
|
||||
! H 2.112148 6.126321 0.798136 H2O
|
||||
! H 1.776389 7.463264 1.424030 H2O
|
||||
! O 2.957518 3.771868 1.877387 H2O
|
||||
! H 3.754249 3.824017 1.349436 H2O
|
||||
! H 3.010580 4.524142 2.466878 H2O
|
||||
! O 0.228972 5.884026 6.532308 H2O
|
||||
! H 0.939475 5.243834 6.571945 H2O
|
||||
! H 0.515723 6.520548 5.877445 H2O
|
||||
! O 9.023431 6.119654 0.092451 H2O
|
||||
! H 9.852960 6.490366 0.393593 H2O
|
||||
! H 8.556008 6.860063 -0.294256 H2O
|
||||
! O 7.256289 8.493641 5.772041 H2O
|
||||
! H 7.886607 7.941321 6.234506 H2O
|
||||
! H 7.793855 9.141028 5.315813 H2O
|
||||
! O 5.090422 9.467016 0.743177 H2O
|
||||
! H 4.467366 9.971162 0.219851 H2O
|
||||
! H 5.758685 10.102795 0.998994 H2O
|
||||
! O 6.330888 7.363471 3.747750 H2O
|
||||
! H 6.652693 7.917443 3.036562 H2O
|
||||
! H 6.711966 7.743594 4.539279 H2O
|
||||
! O 7.763819 8.349367 9.279457 H2O
|
||||
! H 7.751955 8.745180 10.150905 H2O
|
||||
! H 7.829208 9.092212 8.679343 H2O
|
||||
! O 8.280798 3.837153 5.799282 H2O
|
||||
! H 8.312540 3.218330 6.528858 H2O
|
||||
! H 8.508855 4.680699 6.189990 H2O
|
||||
! O 8.878250 2.025797 1.664102 H2O
|
||||
! H 9.742249 1.704975 1.922581 H2O
|
||||
! H 8.799060 2.876412 2.095861 H2O
|
||||
! O 9.160372 0.285100 6.871004 H2O
|
||||
! H 9.505360 1.161677 6.701213 H2O
|
||||
! H 9.920117 -0.219794 7.161006 H2O
|
||||
! O 4.962043 4.134437 0.173376 H2O
|
||||
! H 4.749903 4.186003 -0.758595 H2O
|
||||
! H 5.248010 5.018415 0.403676 H2O
|
||||
! O 2.802896 8.690383 2.435952 H2O
|
||||
! H 3.576065 9.078451 2.026264 H2O
|
||||
! H 2.720238 9.146974 3.273164 H2O
|
||||
! O 9.123223 3.549232 8.876721 H2O
|
||||
! H 9.085561 4.493058 9.031660 H2O
|
||||
! H 9.215391 3.166305 9.749133 H2O
|
||||
! O 1.453702 1.402538 2.358278 H2O
|
||||
! H 1.999705 2.060411 1.927796 H2O
|
||||
! H 1.824184 0.564565 2.081195 H2O
|
||||
! O 6.536550 1.146790 7.609732 H2O
|
||||
! H 7.430334 0.849764 7.438978 H2O
|
||||
! H 6.576029 1.537017 8.482885 H2O
|
||||
! O 2.766709 0.881503 9.544263 H2O
|
||||
! H 2.415851 1.576460 8.987338 H2O
|
||||
! H 2.276957 0.099537 9.289499 H2O
|
||||
! O 0.856426 2.075964 5.010625 H2O
|
||||
! H 1.160987 1.818023 4.140602 H2O
|
||||
! H 0.350256 2.874437 4.860741 H2O
|
||||
! O 6.386036 1.918950 0.242690 H2O
|
||||
! H 5.768804 2.638450 0.375264 H2O
|
||||
! H 7.221823 2.257514 0.563730 H2O
|
||||
! O 2.733023 4.452756 5.850203 H2O
|
||||
! H 3.260797 5.243390 5.962382 H2O
|
||||
! H 3.347848 3.732214 5.988196 H2O
|
||||
! O 4.600039 9.254314 6.575944 H2O
|
||||
! H 5.328688 9.073059 5.982269 H2O
|
||||
! H 5.007063 9.672150 7.334875 H2O
|
||||
! O 3.665373 6.210561 3.158420 H2O
|
||||
! H 4.566850 6.413356 3.408312 H2O
|
||||
! H 3.273115 7.061666 2.963521 H2O
|
||||
! O 3.371648 6.925594 7.476036 H2O
|
||||
! H 3.878372 7.435003 6.843607 H2O
|
||||
! H 3.884673 6.966316 8.283117 H2O
|
||||
! O 5.287920 3.270653 6.155080 H2O
|
||||
! H 5.918240 3.116802 5.451335 H2O
|
||||
! H 5.355924 2.495093 6.711958 H2O
|
||||
! O 5.225237 6.959594 9.582991 H2O
|
||||
! H 5.071858 7.687254 10.185667 H2O
|
||||
! H 6.106394 7.112302 9.241707 H2O
|
||||
! O 0.846293 5.595877 3.820630 H2O
|
||||
! H 1.637363 5.184910 4.169264 H2O
|
||||
! H 0.427645 4.908936 3.301903 H2O
|
||||
! O 9.785620 8.164617 3.657879 H2O
|
||||
! H 9.971698 7.227076 3.709104 H2O
|
||||
! H 10.647901 8.579244 3.629806 H2O
|
||||
! O 8.509982 4.430362 2.679946 H2O
|
||||
! H 8.046808 5.126383 2.213838 H2O
|
||||
! H 7.995317 4.290074 3.474723 H2O
|
||||
! O 1.337625 8.580920 8.272484 H2O
|
||||
! H 1.872601 7.864672 7.930401 H2O
|
||||
! H 0.837635 8.186808 8.987268 H2O
|
||||
! O 8.054437 9.221335 1.991376 H2O
|
||||
! H 8.314696 10.115534 2.212519 H2O
|
||||
! H 8.687134 8.667252 2.448452 H2O
|
||||
&END COORD
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
&GLOBAL
|
||||
PROJECT H2O-32-dftb-ls-2
|
||||
RUN_TYPE ENERGY
|
||||
PRINT_LEVEL MEDIUM
|
||||
&TIMINGS
|
||||
THRESHOLD 0.000001
|
||||
&END
|
||||
&DBCSR
|
||||
USE_MPI_EXP T
|
||||
num_layers_3D 2
|
||||
num_mult_images 3
|
||||
&END
|
||||
! EXTENDED_FFT_LENGTHS ! enable for large systems and FFTW
|
||||
! TRACE
|
||||
! TRACE_MAX 1000
|
||||
&END GLOBAL
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
H2O-32-dftb-ls-2_mult.inp 11 1e-12 -32.574187802183182
|
||||
H2O-32-dftb-ls-2.inp 11 1e-12 -32.574187802183182
|
||||
H2O-OT-ASPC-1.inp 1 4e-14 -17.13993294772316
|
||||
H2-big-nimages.inp 11 2e-13 -27.808422055041138
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#
|
||||
H2O-32-dftb-ls-2_mult.inp
|
||||
#
|
||||
H2O-32-dftb-ls-2.inp
|
||||
#
|
||||
H2-big-nimages.inp
|
||||
|
|
|
|||
183
tests/QS/regtest-rma/H2O-32-dftb-ls-2_mult.inp
Normal file
183
tests/QS/regtest-rma/H2O-32-dftb-ls-2_mult.inp
Normal file
|
|
@ -0,0 +1,183 @@
|
|||
@SET NREP 2
|
||||
@SET GMAXVAL 40
|
||||
&FORCE_EVAL
|
||||
METHOD QS
|
||||
&DFT
|
||||
&QS
|
||||
LS_SCF
|
||||
METHOD DFTB
|
||||
&DFTB
|
||||
SELF_CONSISTENT T
|
||||
DO_EWALD T
|
||||
DISPERSION F
|
||||
&PARAMETER
|
||||
PARAM_FILE_PATH DFTB/scc
|
||||
PARAM_FILE_NAME scc_parameter
|
||||
UFF_FORCE_FIELD uff_table
|
||||
&END PARAMETER
|
||||
&END DFTB
|
||||
&DISTRIBUTION
|
||||
BASIC_OPTIMIZATION .FALSE.
|
||||
BASIC_SPATIAL_OPTIMIZATION .TRUE.
|
||||
&END
|
||||
&END QS
|
||||
&PRINT
|
||||
&MULLIKEN OFF
|
||||
&END
|
||||
&END
|
||||
&LS_SCF
|
||||
MAX_SCF 20
|
||||
EPS_FILTER 1.0E-7
|
||||
EPS_SCF 1.0E-6
|
||||
MU -0.20
|
||||
MIXING_FRACTION 0.45
|
||||
S_PRECONDITIONER MOLECULAR
|
||||
REPORT_ALL_SPARSITIES ON
|
||||
PERFORM_MU_SCAN OFF
|
||||
&END
|
||||
&SCF
|
||||
MAX_SCF 30
|
||||
EPS_SCF 1.0E-7
|
||||
&PRINT
|
||||
&RESTART OFF
|
||||
&END
|
||||
&END
|
||||
&END
|
||||
&POISSON
|
||||
&EWALD
|
||||
EWALD_TYPE SPME
|
||||
GMAX ${GMAXVAL} ${GMAXVAL} ${GMAXVAL}
|
||||
O_SPLINE 5
|
||||
&END EWALD
|
||||
&END POISSON
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&PRINT
|
||||
&MOLECULES OFF
|
||||
&END
|
||||
&ATOMIC_COORDINATES OFF
|
||||
&END
|
||||
&END
|
||||
&TOPOLOGY
|
||||
MULTIPLE_UNIT_CELL ${NREP} ${NREP} ${NREP}
|
||||
&END
|
||||
&CELL
|
||||
ABC 9.8528 9.8528 9.8528
|
||||
MULTIPLE_UNIT_CELL ${NREP} ${NREP} ${NREP}
|
||||
&END CELL
|
||||
# 32 H2O (TIP5P,1bar,300K) a = 9.8528
|
||||
&COORD
|
||||
O 2.280398 9.146539 5.088696 H2O
|
||||
H 1.762019 9.820429 5.528454 H2O
|
||||
H 3.095987 9.107088 5.588186 H2O
|
||||
! O 1.251703 2.406261 7.769908 H2O
|
||||
! H 0.554129 2.982634 8.082024 H2O
|
||||
! H 1.771257 2.954779 7.182181 H2O
|
||||
! O 1.596302 6.920128 0.656695 H2O
|
||||
! H 2.112148 6.126321 0.798136 H2O
|
||||
! H 1.776389 7.463264 1.424030 H2O
|
||||
! O 2.957518 3.771868 1.877387 H2O
|
||||
! H 3.754249 3.824017 1.349436 H2O
|
||||
! H 3.010580 4.524142 2.466878 H2O
|
||||
! O 0.228972 5.884026 6.532308 H2O
|
||||
! H 0.939475 5.243834 6.571945 H2O
|
||||
! H 0.515723 6.520548 5.877445 H2O
|
||||
! O 9.023431 6.119654 0.092451 H2O
|
||||
! H 9.852960 6.490366 0.393593 H2O
|
||||
! H 8.556008 6.860063 -0.294256 H2O
|
||||
! O 7.256289 8.493641 5.772041 H2O
|
||||
! H 7.886607 7.941321 6.234506 H2O
|
||||
! H 7.793855 9.141028 5.315813 H2O
|
||||
! O 5.090422 9.467016 0.743177 H2O
|
||||
! H 4.467366 9.971162 0.219851 H2O
|
||||
! H 5.758685 10.102795 0.998994 H2O
|
||||
! O 6.330888 7.363471 3.747750 H2O
|
||||
! H 6.652693 7.917443 3.036562 H2O
|
||||
! H 6.711966 7.743594 4.539279 H2O
|
||||
! O 7.763819 8.349367 9.279457 H2O
|
||||
! H 7.751955 8.745180 10.150905 H2O
|
||||
! H 7.829208 9.092212 8.679343 H2O
|
||||
! O 8.280798 3.837153 5.799282 H2O
|
||||
! H 8.312540 3.218330 6.528858 H2O
|
||||
! H 8.508855 4.680699 6.189990 H2O
|
||||
! O 8.878250 2.025797 1.664102 H2O
|
||||
! H 9.742249 1.704975 1.922581 H2O
|
||||
! H 8.799060 2.876412 2.095861 H2O
|
||||
! O 9.160372 0.285100 6.871004 H2O
|
||||
! H 9.505360 1.161677 6.701213 H2O
|
||||
! H 9.920117 -0.219794 7.161006 H2O
|
||||
! O 4.962043 4.134437 0.173376 H2O
|
||||
! H 4.749903 4.186003 -0.758595 H2O
|
||||
! H 5.248010 5.018415 0.403676 H2O
|
||||
! O 2.802896 8.690383 2.435952 H2O
|
||||
! H 3.576065 9.078451 2.026264 H2O
|
||||
! H 2.720238 9.146974 3.273164 H2O
|
||||
! O 9.123223 3.549232 8.876721 H2O
|
||||
! H 9.085561 4.493058 9.031660 H2O
|
||||
! H 9.215391 3.166305 9.749133 H2O
|
||||
! O 1.453702 1.402538 2.358278 H2O
|
||||
! H 1.999705 2.060411 1.927796 H2O
|
||||
! H 1.824184 0.564565 2.081195 H2O
|
||||
! O 6.536550 1.146790 7.609732 H2O
|
||||
! H 7.430334 0.849764 7.438978 H2O
|
||||
! H 6.576029 1.537017 8.482885 H2O
|
||||
! O 2.766709 0.881503 9.544263 H2O
|
||||
! H 2.415851 1.576460 8.987338 H2O
|
||||
! H 2.276957 0.099537 9.289499 H2O
|
||||
! O 0.856426 2.075964 5.010625 H2O
|
||||
! H 1.160987 1.818023 4.140602 H2O
|
||||
! H 0.350256 2.874437 4.860741 H2O
|
||||
! O 6.386036 1.918950 0.242690 H2O
|
||||
! H 5.768804 2.638450 0.375264 H2O
|
||||
! H 7.221823 2.257514 0.563730 H2O
|
||||
! O 2.733023 4.452756 5.850203 H2O
|
||||
! H 3.260797 5.243390 5.962382 H2O
|
||||
! H 3.347848 3.732214 5.988196 H2O
|
||||
! O 4.600039 9.254314 6.575944 H2O
|
||||
! H 5.328688 9.073059 5.982269 H2O
|
||||
! H 5.007063 9.672150 7.334875 H2O
|
||||
! O 3.665373 6.210561 3.158420 H2O
|
||||
! H 4.566850 6.413356 3.408312 H2O
|
||||
! H 3.273115 7.061666 2.963521 H2O
|
||||
! O 3.371648 6.925594 7.476036 H2O
|
||||
! H 3.878372 7.435003 6.843607 H2O
|
||||
! H 3.884673 6.966316 8.283117 H2O
|
||||
! O 5.287920 3.270653 6.155080 H2O
|
||||
! H 5.918240 3.116802 5.451335 H2O
|
||||
! H 5.355924 2.495093 6.711958 H2O
|
||||
! O 5.225237 6.959594 9.582991 H2O
|
||||
! H 5.071858 7.687254 10.185667 H2O
|
||||
! H 6.106394 7.112302 9.241707 H2O
|
||||
! O 0.846293 5.595877 3.820630 H2O
|
||||
! H 1.637363 5.184910 4.169264 H2O
|
||||
! H 0.427645 4.908936 3.301903 H2O
|
||||
! O 9.785620 8.164617 3.657879 H2O
|
||||
! H 9.971698 7.227076 3.709104 H2O
|
||||
! H 10.647901 8.579244 3.629806 H2O
|
||||
! O 8.509982 4.430362 2.679946 H2O
|
||||
! H 8.046808 5.126383 2.213838 H2O
|
||||
! H 7.995317 4.290074 3.474723 H2O
|
||||
! O 1.337625 8.580920 8.272484 H2O
|
||||
! H 1.872601 7.864672 7.930401 H2O
|
||||
! H 0.837635 8.186808 8.987268 H2O
|
||||
! O 8.054437 9.221335 1.991376 H2O
|
||||
! H 8.314696 10.115534 2.212519 H2O
|
||||
! H 8.687134 8.667252 2.448452 H2O
|
||||
&END COORD
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
&GLOBAL
|
||||
PROJECT H2O-32-dftb-ls-2
|
||||
RUN_TYPE ENERGY
|
||||
PRINT_LEVEL MEDIUM
|
||||
&TIMINGS
|
||||
THRESHOLD 0.000001
|
||||
&END
|
||||
&DBCSR
|
||||
USE_MPI_EXP T
|
||||
num_mult_images 3
|
||||
&END
|
||||
! EXTENDED_FFT_LENGTHS ! enable for large systems and FFTW
|
||||
! TRACE
|
||||
! TRACE_MAX 1000
|
||||
&END GLOBAL
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
H2O-32-dftb-ls-2_mult.inp 11 1e-12 -32.574187802183182
|
||||
H2O-32-dftb-ls-2.inp 11 1e-12 -32.574187802183182
|
||||
H2O-OT-ASPC-1.inp 1 4e-14 -17.13993294772316
|
||||
H2O-OT-ASPC-1_clusters.inp 1 4e-14 -17.13993294772316
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
#
|
||||
H2O-32-dftb-ls-2_mult.inp
|
||||
#
|
||||
H2O-32-dftb-ls-2.inp
|
||||
#
|
||||
H2-big-nimages.inp
|
||||
|
|
|
|||
|
|
@ -221,7 +221,7 @@ def main():
|
|||
endc='\033[0m'
|
||||
for filename in args.file_lists:
|
||||
comp=(float(files[filename][1])-ref)/ref
|
||||
if abs(comp)>1e-15: color='\033[91m'
|
||||
if abs(comp)>1e-14: color='\033[91m'
|
||||
else: color='\033[0m'
|
||||
print(('{0} ==> {1} : {2} : '+color+'{3}'+endc).format(files[filename][0],filename,files[filename][1],(float(files[filename][1])-ref)/ref))
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue