|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_release (com_tasks) |
| Releases an fb_com_tasks object. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_release (atom_pairs) |
| Releases an fb_com_atom_pairs object. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_nullify (com_tasks) |
| Nullifies a fb_com_tasks object, note that it does not release the original object. This procedure is used to nullify the pointer contained in the object which is used to associate to the actual object content. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_nullify (atom_pairs) |
| Nullifies a fb_com_atom_pairs object, note that it does not release the original object. This procedure is used to nullify the pointer contained in the object which is used to associate to the actual object content. More...
|
|
logical function, public | qs_fb_com_tasks_types::fb_com_atom_pairs_has_data (atom_pairs) |
| Checks if a fb_com_atom_pairs object is associated with an actual data content or not. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_create (com_tasks) |
| Creates and initialises an empty fb_com_tasks object. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_create (atom_pairs) |
| Creates and initialises an empty fb_com_atom_pairs object. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_init (atom_pairs) |
| Initialises an fb_com_atom_pairs object, and makes it empty. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_get (com_tasks, task_dim, ntasks, nencode, tasks) |
| Gets attributes from a fb_com_tasks object, one should only access the data content in a fb_com_tasks object outside this module via this procedure. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_get (atom_pairs, npairs, natoms_encode, pairs) |
| Gets attributes from a fb_com_atom_pairs object, one should only access the data content in a fb_com_atom_pairs object outside this module via this procedure. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_set (com_tasks, task_dim, ntasks, nencode, tasks) |
| Sets attributes in a fb_com_tasks object, one should only access the data content in a fb_com_tasks object outside this module via this procedure. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_transpose_dest_src (tasks_dest_is_me, direction, tasks_src_is_me, para_env) |
| Start from a local set of tasks that has desc/src process equal to the local MPI rank, communicate with other processes so that a new local set of tasks is constructed with src/desc process equal to the local MPI rank. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_build_atom_pairs (com_tasks, atom_pairs, natoms_encode, send_or_recv) |
| Generate send or receive atom_pair lists from a com_tasks object. atom_pair list is used as a condensed index for the local/remote matrix blocks to be sent/received. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_encode_pair (ind, iatom, jatom, natoms) |
| Encodes (iatom, jatom) pair index of a block into a single integer. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_tasks_decode_pair (ind, iatom, jatom, natoms) |
| Dncodes a single integer into (iatom, jatom) pair index of a block into a single. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_decode (ind, pe, iatom, jatom, natoms) |
| Decodes a single integer into the (rank, iatom, jatom) index of a communication task to send/receive a block to/from a process. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_calc_buffer_sizes (atom_pairs, nprocs, row_blk_sizes, col_blk_sizes, sendrecv_sizes, sendrecv_disps, sendrecv_pair_counts, sendrecv_pair_disps) |
| Calculate the MPI send or recv buffer sizes according to the communication pairs (atom_pairs) and DBCSR matrix data. Each atom_pair corresponds to one DBCSR matrix block that needs to be sent or recerived. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_gather_blks (dbcsr_mat, atom_pairs_send, atom_pairs_recv, para_env, matrix_storage) |
| Given send and recv fb_com_atom_pair object, gather all the relevant DBCSR matrix blocks together, and add them to a fb_matrix_data object for storage. More...
|
|
subroutine, public | qs_fb_com_tasks_types::fb_com_atom_pairs_distribute_blks (matrix_storage, atom_pairs_send, atom_pairs_recv, para_env, dbcsr_mat) |
| Given send and recv fb_com_atom_pair object, distribute the matrix blocks stored in a fb_matrix_data object to a computable DBCSR matrix. It is assumed in this subroutine that the sizes of each block stored in fb_matrix_data object is consistent with the pre-defined block sizes in the DBCSR matrix. More...
|
|