MPI advanced Flashcards

1
Q

persistent communication

A

when we use same call reptedly in a loop

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

setup persistent communication

A

int MPI_Send_init(const void* buffer,
int count,
MPI_Datatype datatype,
int recipient,
int tag,
MPI_Comm communicator,
MPI_Request* request);

MPI_Send_init(&buffer_sent, 1, MPI_INT, RECEIVER, 0, MPI_COMM_WORLD, &request);

prepares a request handle for sending using persistent communications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

persistent communication start

A

launches the communication represented by the request handle passed

int MPI_Start(MPI_Request* request);

MPI_Start(&request)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

persistent comm free

A

MPI_Request_free(req)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

partitioned communication

A

used to transfer data by dividing it in chunks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

MPI type contiguous

A

int MPI_Type_contiguous(int count,
MPI_Datatype old_datatype,
MPI_Datatype* new_datatype);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

how to set up mpi data type creation

A

MPI_Datatype

MPI_Type_commit()

MPI_Type_free()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

MPY type vector

A

int MPI_Type_vector(int block_count,
int block_length,
int stride,
MPI_Datatype old_datatype,
MPI_Datatype* new_datatype);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

MPI type indexed

A

int MPI_Type_indexed(int block_count,
const int block_lengths[],
const int displacements[],
MPI_Datatype old_datatype,
MPI_Datatype* new_datatype);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Mpi TYPE create struct

A

int MPI_Type_create_struct(int block_count,
const int block_lengths[],
const MPI_Aint displacements[],
MPI_Datatype block_types[],
MPI_Datatype* new_datatype);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Mpi TYPE create subarray

A

int MPI_Type_create_subarray(int dim_count,
const int array_element_counts[],
const int subarray_element_counts[],
const int subarray_coordinates[],
int order,
MPI_Datatype old_datatype,
MPI_Datatype* new_datatype);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

when to use MPI types

A
  1. messages wth multiple types
  2. simplify code
  3. often access spread out data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

MPI type duplicate

A

MPI_Type_dup

How well did you know this?
1
Not at all
2
3
4
5
Perfectly