|
My Project
programmer's documentation
|
Introduction
C user functions for performance tuning.
Several functions are present in the file, each specific to different performance tuning parameters.
Advanced mesh numbering
Advanced partitioning
Example 1
{
1,
false);
1,
false);
}
Example 2
Example 3
Example 4
{
int n_extra_partitions = 3;
int extra_partitions_list[] = {12, 24, 48};
}
Parallel IO
#if defined(HAVE_MPI_IO) && MPI_VERSION > 1
int block_rank_step = 8;
int block_min_size = 1024*1024*8;
MPI_Info_create(&hints);
MPI_Info_set(hints, "striping_factor", "8");
MPI_Info_set(hints, "striping_unit", "8388608");
MPI_Info_set(hints, "romio_cb_read", "automatic");
MPI_Info_set(hints, "romio_cb_write", "automatic");
MPI_Info_set(hints, "romio_ds_read", "automatic");
MPI_Info_set(hints, "romio_ds_write", "automatic");
MPI_Info_set(hints, "collective_buffering", "true");
MPI_Info_set(hints, "access_style", "read_once");
MPI_Info_free(&hints);
#endif
Matrix tuning
void cs_partition_set_preprocess(bool active)
Activate or deactivate initial partitioning for preprocessing.
Definition: cs_partition.c:2970
Definition: cs_matrix.h:71
Definition: cs_renumber.h:67
void cs_matrix_set_variant(cs_matrix_fill_type_t fill_type, const cs_matrix_variant_t *mv)
Definition: cs_matrix_default.c:838
Definition: cs_renumber.h:75
Definition: cs_partition.h:86
Definition: cs_file.h:100
void cs_file_set_default_comm(int block_rank_step, int block_min_size, MPI_Comm comm)
Set default MPI communicator values for file access.
Definition: cs_file.c:3112
void cs_grid_set_matrix_tuning(cs_matrix_fill_type_t fill_type, int max_level)
Set matrix tuning behavior for multigrid coarse meshes.
Definition: cs_grid.c:6416
Definition: cs_partition.h:85
cs_file_access_t
Shared file access methods.
Definition: cs_file.h:84
struct _cs_matrix_variant_t cs_matrix_variant_t
Definition: cs_matrix.h:94
void cs_renumber_set_n_threads(int n_threads)
Set the target number of threads for mesh renumbering.
Definition: cs_renumber.c:5674
Definition: cs_renumber.h:60
void cs_matrix_set_tuning(cs_matrix_fill_type_t fill_type, int tune)
Definition: cs_matrix_default.c:865
void cs_matrix_variant_destroy(cs_matrix_variant_t **mv)
Destroy a matrix variant structure.
Definition: cs_matrix.c:7515
void cs_matrix_variant_set_func(cs_matrix_variant_t *mv, const cs_numbering_t *numbering, cs_matrix_fill_type_t fill_type, int ed_flag, const char *func_name)
Select the sparse matrix-vector product function to be used by a matrix variant for a given fill type...
Definition: cs_matrix.c:7557
void cs_renumber_set_algorithm(bool halo_adjacent_cells_last, bool halo_adjacent_faces_last, cs_renumber_ordering_t i_faces_base_ordering, cs_renumber_cells_type_t cells_pre_numbering, cs_renumber_cells_type_t cells_numbering, cs_renumber_i_faces_type_t i_faces_numbering, cs_renumber_b_faces_type_t b_faces_numbering, cs_renumber_vertices_type_t vertices_numbering)
Select the algorithm for mesh renumbering.
Definition: cs_renumber.c:5764
void cs_file_set_mpi_io_positionning(cs_file_mpi_positionning_t positionning)
Set the positionning method for MPI-IO.
Definition: cs_file.c:3260
MPI_Comm cs_glob_mpi_comm
Definition: cs_defs.c:181
void cs_matrix_set_tuning_runs(int n_min_products, double t_measure)
Definition: cs_matrix_default.c:917
void cs_partition_set_write_level(int write_flag)
Set partitioning write to file option.
Definition: cs_partition.c:2936
cs_numbering_t * i_face_numbering
Definition: cs_mesh.h:138
Definition: cs_renumber.h:85
void cs_file_set_default_access(cs_file_mode_t mode, cs_file_access_t method, MPI_Info hints)
Set the default options for file access.
Definition: cs_file.c:2953
Definition: cs_matrix.h:60
Definition: cs_renumber.h:93
void cs_partition_add_partitions(int n_extra_partitions, int extra_partitions_list[])
Define list of extra partitionings to build.
Definition: cs_partition.c:3033
#define MPI_Info
Definition: cs_defs.h:93
void cs_renumber_set_min_subset_size(cs_lnum_t min_i_subset_size, cs_lnum_t min_b_subset_size)
Set the minimum sunset sizes when renumbering for threads.
Definition: cs_renumber.c:5715
Definition: cs_matrix.h:70
Definition: cs_matrix.h:69
Definition: cs_partition.h:112
#define MPI_INFO_NULL
Definition: cs_defs.h:94
cs_matrix_variant_t * cs_matrix_variant_create(cs_matrix_type_t type, const cs_numbering_t *numbering)
Build matrix variant.
Definition: cs_matrix.c:7239
Definition: cs_partition.h:110
void cs_partition_set_algorithm(cs_partition_stage_t stage, cs_partition_algorithm_t algorithm, int rank_step, bool ignore_perio)
Set algorithm for domain partitioning.
Definition: cs_partition.c:2861