|
2 | 2 |
|
3 | 3 | Caffeine is an implementation of the Parallel Runtime Interface for Fortran (PRIF). This document |
4 | 4 | outlines the implementation status in Caffeine of the features defined in the |
5 | | -[latest PRIF specification, revision 0.4](https://dx.doi.org/10.25344/S4WG64). Caffeine contains interfaces for all |
6 | | -of the PRIF procedures and the symbols are linkable and callable, but some procedures will fail at runtime with an unimplemented error. For |
| 5 | +[latest PRIF specification, revision 0.5](https://dx.doi.org/10.25344/S4CG6G). Caffeine contains interfaces for all |
| 6 | +of the PRIF procedures (except when stated otherwise below) and the symbols are linkable and callable, but some procedures will fail at runtime with an unimplemented error. For |
7 | 7 | more details about the implementation of the various PRIF features, please see the |
8 | 8 | following sections: |
9 | 9 |
|
@@ -44,6 +44,8 @@ in the following sections. |
44 | 44 | | `prif_init` | **YES** | | |
45 | 45 | | `prif_stop`, `prif_error_stop` | *partial* | Missing support for `quiet=.true.` | |
46 | 46 | | `prif_fail_image` | no | | |
| 47 | +| `prif_register_stop_callback` | **YES** | | |
| 48 | + |
47 | 49 |
|
48 | 50 | --- |
49 | 51 |
|
@@ -86,6 +88,7 @@ in the following sections. |
86 | 88 | | `prif_lcobound_no_dim`, `prif_lcobound_with_dim` | no | | |
87 | 89 | | `prif_ucobound_no_dim`, `prif_ucobound_with_dim` | no | | |
88 | 90 | | `prif_coshape` | no | | |
| 91 | +| `prif_local_data_pointer` | **YES** | | |
89 | 92 | | `prif_image_index` | **YES** | | |
90 | 93 | | `prif_image_index_with_team` | no | | |
91 | 94 | | `prif_image_index_with_team_number` | no | | |
@@ -197,11 +200,13 @@ in the following sections. |
197 | 200 |
|
198 | 201 | | Procedure | Status | Notes | |
199 | 202 | |-----------|--------|-------| |
200 | | -| `prif_co_broadcast` | *partial* | no support for derived types with `allocatable` components | |
| 203 | +| `prif_co_broadcast` | **YES** | | |
201 | 204 | | `prif_co_max` | *partial* | only supports 32-bit and 64-bit numeric types | |
| 205 | +| `prif_co_max_character` | no | procedure not yet added to Caffeine | |
202 | 206 | | `prif_co_min` | *partial* | only supports 32-bit and 64-bit numeric types | |
| 207 | +| `prif_co_min_character` | no | procedure not yet added to Caffeine | |
203 | 208 | | `prif_co_sum` | *partial* | only supports 32-bit and 64-bit numeric types | |
204 | | -| `prif_co_reduce` | *partial* | only supports intrinsic types (no support for derived types) | |
| 209 | +| `prif_co_reduce` | *partial* | only supports intrinsic types (no support for derived types), interface not yet updated to v0.5 | |
205 | 210 |
|
206 | 211 | --- |
207 | 212 |
|
|
0 commit comments