-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v21: Build: port to cmake #12
Open
omor1
wants to merge
17
commits into
v21
Choose a base branch
from
v21-cmake
base: v21
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
update .gitignore to ignore various CLion configuration files
… >= 3.13 Explicitly set the cmake policy CMP0076 to NEW. Explicitly specify the abosolute path for generator expression because CMP0076 doesn't modify generator expression.
…ator expressions when cmake <= 3.12 The previous proposed fix prepend ${CMAKE_CURRENT_SOURCE_DIR} to all the file paths including generator expressions, which is inconsistent with the behavior of CWP00076. This commit fixes this problem.
v21-cmake: fix CWP0076 related bug -- version 2
…s; heap overflow; enable ep (1) fix two outdated header paths. (2) The OFI backend needs at least 8192 + LC_SERVER_NUM_PKTS(1024) * LC_PACKET_SIZE(32 * 1024 + 4096) ~= 36MB memory per device, but the previous CMakeLists only gives it LCI_DEV_MEM_SIZE (8MB) memory. The new fix set it to 64MB. (3) you need to call fi_enable(ep) first before calling fi_getname()
…not done, cannot find fult.h;
LCI is built on PMIv1 wire protocol but PMIv2 API, so the underlying system should provide PMI2 shared library (libpmi2.so or libpmi.so on some Cray machine) for LCI. Users need to select PMI/PMI2 when compiling LCI with the cmake option `LCI_USE_PMI2`. If LCI cannot find libpmi2.so/libpmi.so, it will switch back to PMIv1. LCI_PM_Barrier() is broken with PMI2
…ce function LCI_MT_create and LCI_MT_free
…y on external libpmi2.so borrow the PMI2 client code from slurm github repo
…ples with lci_shared; add extern to variables in lci.h.
ibv finalizes PMI in its lc_server_finalize function. It breaks the following LCI_barrier.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ported build system to CMake for the v21 branch. Most difficulties were in figuring out what changed between v2 and v21 in terms of naming (e.g. some, but not all config parameters went from
LC_XXXX
toLCI_XXXX
) and due to the fact that comet only has CMake 3.12 rather than 3.13+.The make-based build system still works, as best I can tell.