Skip to content

Commit 394d50a

Browse files
authored
Merge pull request #13 from cchambreau/topic/events
New MPI_T Events tests and example
2 parents 67e9d79 + 7a188b8 commit 394d50a

11 files changed

+1794
-0
lines changed

events/Makefile

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
EXES = events_types events_callbacks events_read_data events_meta_data events_source events_dropped events_example
3+
4+
CC= mpicc
5+
6+
CFLAGS= -O2 -g -Wall
7+
LIBS=events_common.o
8+
9+
def: clean ${EXES}
10+
11+
events_types : events_types.o events_common.o
12+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
13+
14+
events_callbacks : events_callbacks.o events_common.o
15+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
16+
17+
events_read_data : events_read_data.o events_common.o
18+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
19+
20+
events_meta_data : events_meta_data.o events_common.o
21+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
22+
23+
events_source : events_source.o events_common.o
24+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
25+
26+
events_dropped : events_dropped.o events_common.o
27+
$(CC) $(CFLAGS) -o $@ $< ${LIBS}
28+
29+
events_example : events_example.o
30+
$(CC) $(CFLAGS) -o $@ $<
31+
32+
clean:
33+
rm -f ${EXES} core.* *.o

events/README.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# MPI_T Events Tests
2+
3+
If the MPI implementation includes support for the MPI_T Events functions as defined in [MPI Standard 4.0](https://www.mpi-forum.org/docs/mpi-4.0/mpi40-report.pdf) and includes some implemented events, these tests will confirm basic functionality as well as some error checking.
4+
5+
## Events Callback Test Requirements
6+
In order to confirm the MPI_T Events callback functionality, a callback must be registered and triggered by performing relevant MPI activity.
7+
8+
The events_types test will print the list of events available by providing the command line '-l' flag.
9+
10+
The events_callbacks event index can be set for the events_callbacks test with the `-i [number]` flag.
11+
12+
If the default MPI activity in the function generate\_callback\_activity() in events_common.c does not trigger the event callback, custom MPI activity will need to be added.
13+
14+
## Test Behavior
15+
16+
The behavior of each test can be modified with the following command line arguments:
17+
18+
- -d : print internal debugging messages [default: off]
19+
- -e : print error messages [default: off]
20+
- -f : perform failure tests [default: off]
21+
- -i [number] : event index for specific tests [default: 0]
22+
- -l : list available events (events_types only) [default: off]
23+
24+
## Test Descriptions
25+
26+
- events_callbacks
27+
- Register and free a callback function for an event
28+
- Get and set event handle and callback info
29+
- events_dropped
30+
- Register a callback function for dropped events
31+
- events\_meta_data
32+
- Get event timestamp and source
33+
- events\_read_data
34+
- Read and copy event data
35+
- events_source
36+
- Get number of source, source info object, and source timestamp
37+
- events_types
38+
- Get number of events and event info object
39+
40+
## Event Callback and Read Data Example
41+
The events_example.c file has been provided as an example of registering an event callback and reading event data.
42+
43+
## Test Suite And MPI Implementations
44+
45+
Tested with [Open MPI PR #8057](https://github.com/open-mpi/ompi/pull/8057) with pml ob1 module events.

0 commit comments

Comments
 (0)