Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-04 08:55:57

0001 /*
0002  * Copyright (c) 2016      Mellanox Technologies, Inc.
0003  *                         All rights reserved.
0004  * Copyright (c) 2018      IBM Corporation.  All rights reserved.
0005  * Copyright (c) 2018      Intel, Inc. All rights reserved.
0006  * Copyright (c) 2019      Research Organization for Information Science
0007  *                         and Technology (RIST).  All rights reserved.
0008  * Copyright (c) 2023-2026 Nanook Consulting  All rights reserved.
0009  * $COPYRIGHT$
0010  *
0011  * Additional copyrights may follow
0012  *
0013  * $HEADER$
0014  */
0015 
0016 
0017 #ifndef PMIx_VERSION_H
0018 #define PMIx_VERSION_H
0019 
0020 /* define PMIx version */
0021 #define PMIX_VERSION_MAJOR 6L
0022 #define PMIX_VERSION_MINOR 1L
0023 #define PMIX_VERSION_RELEASE 0L
0024 
0025 #define PMIX_NUMERIC_VERSION 0x00060100
0026 
0027 
0028 /* Define a mechanism by which we can flag PMIx versions
0029  * with "capabilities" - this allows consumers of the library
0030  * to differentiate based on capabilities instead of release
0031  * numbers. Note that this differs from the Standard version
0032  * and ABI version numbers for the release as the capabilities
0033  * refer to internal behaviors - e.g., how the cmd line parser
0034  * is operating. So someone who uses the cmd line parser might
0035  * compensate for some difference that occurs during/between
0036  * a PMIx release series
0037  */
0038 
0039 /* Note that the values of the individual flags is irrelevant and
0040  * not used. All that matters is that the definition exists. Only
0041  * capabilities supported by this specific PMIx version shall be
0042  * defined - i.e., the existence of the definition indicates that
0043  * this capability is supported by this version
0044  */
0045 
0046 /* Individual capability flags */
0047 #define PMIX_CAP_BASE            0
0048 #define PMIX_CAP_LTO             1
0049 #define PMIX_CAP_INMEMHELP       2
0050 #define PMIX_CAP_UPCALLS2        3
0051 #define PMIX_CAP_STOP_PRGTHRD    4
0052 #define PMIX_CAP_GET_NUMBER_FN   5
0053 
0054 
0055 /*****    DEPRECATED    *****/
0056 
0057 /* there was an initial thought that we would generate some
0058  * uber-list of defined flags for capabilities across all PMIx
0059  * versions, and then indicate which ones were supported by
0060  * this particular version by OR'ing them together into
0061  * some more general value. This has proven unworkable as you
0062  * get into a giant game of bit-counting to create the definitions.
0063  * Instead, we only define flags that this specific version
0064  * supports - thus, the value of the individual flag is irrelevant
0065  * and no general value is required.
0066  *
0067  * Since we cannot go back and change already-released versions,
0068  * we leave this one legacy definition here so those earlier
0069  * versions can find it. They are restricted to supporting only
0070  * the earlier capabilities anyway, so it really doesn't matter
0071  */
0072 
0073 #define PMIX_CAPABILITIES \
0074     (PMIX_CAP_BASE | \
0075      PMIX_CAP_LTO | \
0076      PMIX_CAP_INMEMHELP)
0077 
0078 #endif