Open
Conversation
- Moved git hash string to a c file - Removed the CRAY keyword - Moved tests files in separate directory - Namespace all #ifdef varaibles TM_XXX - Moved profile directory to the root - updated the url info
- Add fftw - Add option to compile the tests (OFF by default)
- QUDA_FERMIONIC_FORCES and QUDA_EXPERIMENTAL are always on - Removed KOJAK instrumentation - Added a custom Qphix find package file because the original one is broken
This file contains hidden or 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
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.
This PR is a preparation for developments required for an implementation of the PTBC algorithm. It replaces in the whole codebase the MPI communicator
MPI_COMM_WORLDwith a variableapp()->mpi.comm.It adds an application context struct that may hold information about the current application instance, such as the MPI communicator (as of now). I might be extended in the future.
There is an MPI header wrapper, such that every translation unit that does
will include the new header file instead. This header includes the true
mpi.hheader and declares some functionality:app(): returns the current application context, by defaultmpi.commisMPI_COMM_WORLD.app()->ptbc.initialize(): (optional) initializes the application context with a certain MPI communicator.In future developments, this may be extended with a
world_commmember that is a duplicate ofMPI_COMM_WORLD. With this communicator global communication can take place, while the rest of the application usesapp()->mpi.comm.This PR is based on top of cmake_support to benefit from the cmake build system. Its PR #664 has to be merged first and this branch has to be regularly rebased on cmake_support. How to:
Then:
TODO:
Alternatively one could of course replace
#include <mpi.h>with#include "mpi.h"to make the wrapping explicit. That would maybe be better ...