|
Yet Another eXchange Tool
DO_NOT_EDIT_HERE
|
#include <assert.h>#include <limits.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include "xt_arithmetic_util.h"#include "xt/xt_idxlist.h"#include "xt_idxlist_internal.h"#include "xt/xt_idxempty.h"#include "xt/xt_idxvec.h"#include "xt/xt_idxsection.h"#include "xt_idxsection_internal.h"#include "xt/xt_mpi.h"#include "xt/mergesort.h"#include "xt/quicksort.h"#include "xt_idxlist_unpack.h"#include "core/ppm_xfuncs.h"#include "core/core.h"#include "instr.h"Go to the source code of this file.
Data Structures | |
| struct | dim_desc |
| struct | Xt_idxsection_ |
Typedefs | |
| typedef struct Xt_idxsection_ * | Xt_idxsection |
Functions | |
| static void | idxsection_delete (Xt_idxlist data) |
| static size_t | idxsection_get_pack_size (Xt_idxlist data, MPI_Comm comm) |
| static void | idxsection_pack (Xt_idxlist data, void *buffer, int buffer_size, int *position, MPI_Comm comm) |
| static Xt_idxlist | idxsection_copy (Xt_idxlist idxlist) |
| static void | idxsection_get_indices (Xt_idxlist idxlist, Xt_int *indices) |
| static const Xt_int * | idxsection_get_indices_const (Xt_idxlist idxlist) |
| static void | idxsection_get_index_stripes (Xt_idxlist idxlist, struct Xt_stripe **stripes, int *num_stripes) |
| static int | idxsection_get_index_at_position (Xt_idxlist idxlist, int position, Xt_int *index) |
| static int | idxsection_get_position_of_index (Xt_idxlist idxlist, Xt_int index, int *position) |
| static int | idxsection_get_position_of_index_off (Xt_idxlist idxlist, Xt_int index, int *position, int offset) |
| static int | idxsection_get_positions_of_indices (Xt_idxlist body_idxlist, Xt_int const *selection_idx, int num_selection, int *positions, int single_match_only) |
| static Xt_int | idxsection_get_min_index (Xt_idxlist idxlist) |
| static Xt_int | idxsection_get_max_index (Xt_idxlist idxlist) |
| static int | idxsection_get_num_indices (Xt_idxsection section) |
| void | xt_idxsection_initialize (void) |
| void | xt_idxsection_finalize (void) |
| Xt_idxlist | xt_idxsection_new (Xt_int start, int num_dimensions, const Xt_int global_size[num_dimensions], const int local_size[num_dimensions], const Xt_int local_start[num_dimensions]) |
| Xt_idxlist | xt_idxsection_unpack (void *buffer, int buffer_size, int *position, MPI_Comm comm) |
| Xt_idxlist | xt_idxsection_get_intersection_with_other_idxlist (Xt_idxlist src_idxsection, Xt_idxlist dst_idxlist) |
| Xt_idxlist | xt_idxsection_get_intersection (Xt_idxlist idxlist_src, Xt_idxlist idxlist_dst) |
| static int | idxsection_get_indices_any (Xt_int start_index, Xt_int *indices, int ndim, struct dim_desc dims[ndim]) |
| static int | idxsection_get_positions_of_indices_v1 (Xt_idxlist body_idxlist, const Xt_int selection_idx[], int num_selection, int positions[], int single_match_only) |
| static int | idxsection_get_positions_of_indices_v2 (Xt_idxlist body_idxlist, const Xt_int selection_idx[], int num_selection, int positions[], int single_match_only) |
| static size_t | idxsection_get_positions_of_indices_recursive (Xt_int index_offset, int position_offset, const Xt_int indices[], size_t num_indices, int positions[], int ndim, struct dim_desc dims[ndim]) |
| static int | idxsection_get_positions_of_indices_v3 (Xt_idxlist body_idxlist, const Xt_int *restrict selection_idx, int num_selection, int *restrict positions, int single_match_only) |
Variables | |
| static const struct xt_idxlist_vtable | idxsection_vtable |
| static MPI_Datatype | dim_desc_dt |
Definition in file xt_idxsection.c.
| typedef struct Xt_idxsection_* Xt_idxsection |
Definition at line 146 of file xt_idxsection.c.
|
static |
Definition at line 563 of file xt_idxsection.c.
|
static |
Definition at line 293 of file xt_idxsection.c.
|
static |
Definition at line 737 of file xt_idxsection.c.
|
static |
Definition at line 679 of file xt_idxsection.c.
|
static |
Definition at line 633 of file xt_idxsection.c.
|
static |
Definition at line 667 of file xt_idxsection.c.
|
static |
Definition at line 1349 of file xt_idxsection.c.
|
static |
Definition at line 1342 of file xt_idxsection.c.
|
static |
|
static |
Definition at line 304 of file xt_idxsection.c.
|
static |
|
static |
|
static |
Definition at line 1272 of file xt_idxsection.c.
|
static |
Definition at line 836 of file xt_idxsection.c.
|
static |
Definition at line 925 of file xt_idxsection.c.
|
static |
Definition at line 1185 of file xt_idxsection.c.
|
static |
Definition at line 321 of file xt_idxsection.c.
| void xt_idxsection_finalize | ( | void | ) |
| Xt_idxlist xt_idxsection_get_intersection | ( | Xt_idxlist | idxlist_src, |
| Xt_idxlist | idxlist_dst | ||
| ) |
| Xt_idxlist xt_idxsection_get_intersection_with_other_idxlist | ( | Xt_idxlist | src_idxsection, |
| Xt_idxlist | dst_idxlist | ||
| ) |
Definition at line 401 of file xt_idxsection.c.
| void xt_idxsection_initialize | ( | void | ) |
| Xt_idxlist xt_idxsection_new | ( | Xt_int | start, |
| int | num_dimensions, | ||
| const Xt_int | global_size[num_dimensions], | ||
| const int | local_size[num_dimensions], | ||
| const Xt_int | local_start[num_dimensions] | ||
| ) |
generates an index list that is comprised of a section of a set of indices that are arranged in an n-dimensional cartesian coordinate system. The linear index correspondence is computed such that the right-most dimension is the one where indices increase fastest (i.e. according to C convention).
| [in] | start | lowest index of the global array (typically 0 or 1) |
| [in] | num_dimensions | number of dimensions |
| [in] | global_size | global size of each dimension |
| [in] | local_size | size of the local section in each dimension |
| [in] | local_start | vector with the lowest position in each dimension of the local window within the global index space |
Definition at line 199 of file xt_idxsection.c.
| Xt_idxlist xt_idxsection_unpack | ( | void * | buffer, |
| int | buffer_size, | ||
| int * | position, | ||
| MPI_Comm | comm | ||
| ) |
|
static |
Definition at line 143 of file xt_idxsection.c.
|
static |
Definition at line 116 of file xt_idxsection.c.
1.8.13