Skip to content
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

Add TriBITS/CMake configure information about node types #243

Closed
rppawlo opened this issue Apr 20, 2016 · 4 comments
Closed

Add TriBITS/CMake configure information about node types #243

rppawlo opened this issue Apr 20, 2016 · 4 comments
Assignees
Labels
Enhancement Improve existing capability; will potentially require voting
Milestone

Comments

@rppawlo
Copy link
Contributor

rppawlo commented Apr 20, 2016

During a Trilinos tribits/cmake configure, Tpetra prints some very useful information about enabled nodes types and which one is the default:

-- Tpetra execution space availability (ON means available):
-- - Serial: OFF
-- - Threads: OFF
-- - OpenMP: ON
-- - Cuda: OFF
-- Setting default Node to Kokkos::Compat::KokkosOpenMPWrapperNode.

This exact information would be great to have from the kokkos configure as well for cases where tpetra is not enabled. Could you add message statements to print this information for kokkos during a tribits configure?

@ndellingwood ndellingwood added the Feature Request Create new capability; will potentially require voting label Jun 8, 2016
@ndellingwood ndellingwood added this to the Backlog milestone Jun 8, 2016
@mhoemmen
Copy link
Contributor

mhoemmen commented Jan 4, 2017

Per discussion today with @rppawlo, add CMake variable to Kokkos that chooses the default execution space. Make logic for choosing the default execution space happen in CMake, not in the header file ifdefs. Make Tpetra use that choice and be consistent with that choice.

@mhoemmen
Copy link
Contributor

mhoemmen commented Jan 4, 2017

Per @ambrad 's suggestion, consider memory spaces too. The default memory space could be set separately from the default execution space. Want to static_assert compatibility.

@gmackey
Copy link
Contributor

gmackey commented Mar 23, 2017

The original request of printing the configure information is addressed in the pure cmake (but not Tribits) build. It is currently in my cmake branch and will be pulled in with it.

@ibaned ibaned self-assigned this Mar 14, 2018
@ibaned ibaned modified the milestones: Backlog, 2018 April Mar 14, 2018
@ibaned
Copy link
Contributor

ibaned commented Mar 14, 2018

I think the most recent TriBITS integration with Kokkos CMake seems to satisfy this:

-- ****************** Kokkos Settings ******************
-- Execution Spaces
--   Device Parallel: Cuda
--     Host Parallel: None
--       Host Serial: Serial
--     
-- Architectures:
--     HSW,Pascal61
-- 
-- Enabled options
--   KOKKOS_ENABLE_SERIAL
--   KOKKOS_ENABLE_CUDA
--   KOKKOS_ENABLE_CUDA_LAMBDA
--   KOKKOS_ENABLE_PROFILING
--   
-- Final kokkos settings variable:
--   env;KOKKOS_SRC_PATH=/home/daibane/src/Trilinos/kokkos;KOKKOS_PATH=/home/daibane/src/Trilinos/kokkos;KOKKOS_INSTALL_PATH=/home/daibane/install/nvcc/Trilinos;KOKKOS_ARCH=HSW,Pascal61;KOKKOS_DEVICES=Cuda,Serial;KOKKOS_DEBUG=no;KOKKOS_OPTIONS=disable_deprecated_code,disable_dualview_modify_check;KOKKOS_CUDA_OPTIONS=enable_lambda;CUDA_PATH=;PATH="/bin:/home/daibane/bin:/home/daibane/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/daibane/install/gmsh-3.0.4-Linux/bin:/home/daibane/install/ParaView-5.3.0-Qt5-OpenGL2-MPI-Linux-64bit/bin:/usr/local/cuda-9.0/bin:/home/daibane/install/texlive/bin/x86_64-linux"
-- *****************************************************

@ibaned ibaned closed this as completed Mar 14, 2018
@crtrott crtrott added Enhancement Improve existing capability; will potentially require voting and removed Feature Request Create new capability; will potentially require voting labels Mar 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Improve existing capability; will potentially require voting
Projects
None yet
Development

No branches or pull requests

6 participants