Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 14 01:33
    poulson closed #276
  • May 14 01:33
    poulson commented #276
  • May 14 01:30

    poulson on master

    Update README.md (compare)

  • May 14 01:24

    poulson on master

    added logo (compare)

  • May 10 21:37
    jedbrown commented #276
  • May 10 21:25
    poulson commented #276
  • May 10 21:21
    jedbrown commented #276
  • May 10 17:08
    poulson commented #276
  • May 10 17:03
    tesch1 opened #276
  • Apr 10 13:18
    JM1 commented #275
  • Apr 10 13:16
    JM1 synchronize #275
  • Apr 10 08:56
    JM1 opened #275
  • Mar 06 03:47
    Raviteja1996 closed #274
  • Mar 05 05:46
    Raviteja1996 opened #274
  • Feb 11 21:53
    BenBrock commented #228
  • Feb 11 21:52
    BenBrock commented #228
  • Feb 11 21:51
    poulson commented #228
  • Feb 11 21:50
    poulson commented #228
  • Feb 11 21:45
    BenBrock commented #228
  • Jan 23 23:57
    adambaskerville commented #273
Jack Poulson
@poulson
@rhl- I can't seem to remember why I disabled it; it would be a good idea to re-enable it with the appropriate flags (e.g., -g for GNU)
Ryan H. Lewis
@rhl-
@poulson I see. I'm not sure what you mean. I see that you are setting compilation flags using ${LANG}_FLAGS. I'm quite sure this is un-necessary. CMake does this for you.
I am noticing that somehow this morning my El build is broken due to those changes in CMakeLists.txt
Ryan H. Lewis
@rhl-
It looks like various parts of the library are using C++14 features somehow.
/Users/rlewis/code/Elemental/include/El/core/types.hpp:227:35: warning: variable templates are a C++14 extension [-Wc++14-extensions]
template<Dist U,Dist V> constexpr Dist DiagCol() { return ( U==STAR ? V : U ); }
I tried doing add_definitions(-std=c++14) and this broke things horridly.
Jack Poulson
@poulson
Is this the Intel compiler?
Ryan H. Lewis
@rhl-
No it's clang. It seems to disappear as soon as you set CMAKE_BUILD_TYPE to either Debug or Release.
I'm not sure why.
Jeff Hammond
@jeffhammond
i'd love any help anyone can give me w.r.t. elemental/Elemental#185. CMake is completely unhelpful.
Ryan H. Lewis
@rhl-
@jeffhammond reading it now ..
@jeffhammond: i am hoping for us to move up to C++14.. haha
you need to look at the internals of: cmake/detect/MPI.cmake
Jeff Hammond
@jeffhammond
look at http://en.cppreference.com/w/cpp/compiler_support. three compilers support C++14 right now and one of them requires Windows
Ryan H. Lewis
@rhl-
aren't the other two gcc and clang?
Jeff Hammond
@jeffhammond
yes, they are, but moving to C++14 right now would be a clear statement that Elemental is not interested in supporting any HPC vendor compiler
Ryan H. Lewis
@rhl-
@jeffhammond sure. I agree we wouldn't want that..
Jeff Hammond
@jeffhammond
and there is at least one downstream ISV that must use Intel compilers.
Ryan H. Lewis
@rhl-
@jeffhammond can I replicated without a cray compiler?
Jeff Hammond
@jeffhammond
you might be able to replicate without the Cray compiler itself, but i think this is specific to the Cray programming environment wrappers
i can get you a NERSC account in a day if you want to fight with this, but i'd prefer that you invent a time machine and kill whatever person created CMake ;-)
Ryan H. Lewis
@rhl-
haha. I used to have a NERSC account. It might still be active..
Jeff Hammond
@jeffhammond
so there is no CMake log for the mpi.h faiure
it's ridiculous that it tells me to look in C++ detection output, which is unrelated
i set -DMPI_C_INCLUDE_PATH=$CRAY_MPICH_DIR/include
is that not correct?
Ryan H. Lewis
@rhl-
I'm not 100% sure, but, that doesn't seem right.
Ah, I bet its failing right here: find_package(MPI)
Jeff Hammond
@jeffhammond
yes it tells me CMake Error at cmake/detect/MPI.cmake:69 (message):
Could not find mpi.h
Call Stack (most recent call first):
CMakeLists.txt:361 (include)
and then "See also "/global/homes/j/jhammond/ELEMENTAL/git/build-cray/CMakeFiles/CMakeOutput.log"."
Ryan H. Lewis
@rhl-
can you add message ("MPI_FOUND=${MPI_FOUND}) just below find_package or something
Jeff Hammond
@jeffhammond
not until just now but you can see on the ticket what options i set
Ryan H. Lewis
@rhl-
@jeffhammond according to the docs you need to set MPI_C_LIBRARIES to the list of things to link against.
However, this is likely unrelated to the actual failure.
Jeff Hammond
@jeffhammond
cc is equivalent to mpicc on other platforms
no lib or inc options should be required ever
Ryan H. Lewis
@rhl-
well, the documentation says the variable needs to be set
it doesnt say to what.
Jeff Hammond
@jeffhammond
i have never before needed to set it when i set the MPI compilers
-DMPI_CXX_COMPILER=CC -DMPI_C_COMPILER=cc -DMPI_Fortran_COMPILER=ftn
that should do it
does everywhere else
Ryan H. Lewis
@rhl-
try removing the explicit setting of the include path
Jeff Hammond
@jeffhammond
honestly, at this point, i just want CMake to tell me what the error is
yeah that's where i started and it failed
Ryan H. Lewis
@rhl-
this is the piece of CMake that is giving you a problem:
foreach(MPI_PATH ${MPI_C_INCLUDE_PATH})
if(EXISTS "${MPI_PATH}/mpi.h")
set(MPI_HEADER_PATH ${MPI_PATH})
endif()
endforeach()