-
Notifications
You must be signed in to change notification settings - Fork 572
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
Enable all PT packages for ATDM-based PR cuda build, turn off MueLu and Xpetra Experimental, explicitly disable RDC for ATDM builds #2601
Conversation
Makes it better match the current code and give tips on usage.
…rilinos#2464) I noticed that this macro said it was setting a default when it really was not. I noticed this when I was trying to set a default for Trilinos_ENABLE_SECONDARY_TESTED_CODE. It was printing that it was setting a default, but it was not. What happened is that a typo resulted in the: IF ("${${VAR_DEFAULT}}" STREQUAL "") statement always evaluating to true (since there are usually no vars with names "ON" and "OFF") so the print statement was always occurring and the SET( ... CACHE ... ) statement was always called. But of course the set() statement was a no-op if the cache var was already set. Therefore, this change doe not really change behavior at all. It just avoids the print statement when a default is not really being set.
…-171) This does not change behavior because this is the Trilinos default, but this just makes it explicit that ATMD builds of Trilinos actually do enable Secondary Tested code. This does not really impact the configuration of Trilinos for EMPIRE but it does impact what subpackages get enabled for SEACAS, for example. NOTE: This should be set to OFF once trilinos#2597 is complete.
The motivation for this is a fuller CUDA build as part of trilinos#2464. * I added the env var ATDM_CONFIG_CONFIGURE_OPTIONS_FILES that allows the ctest -S / Jenkins outer driver script to set the exact set of files that will be used in the inner configuration. A default is given which is cmake/std/atdm/ATDMDevEnv.cmake to keep backward compatibility and for the default use case. * The set of configuration files specified by ATDM_CONFIG_CONFIGURE_OPTIONS_FILES is read in in the outer ctest -S script. This now automatically sets the disables in ATDMDisables.cmake and sets other options that impact what gets enabled (like CUDA enabled and RDC not enabled disabling ShyLU_NodeTacho). Therefore, I was able to remove the explicit include of ATDMDisables.cmake in the outer CTest -S driver. This eliminates an importat bit of duplication and extra logic. * Added the $ENV{JOB_NAME}.sh file to the ctest NOTES files. * The new file cmake/std/atdm/ATDMDevEnvAllPtPackages.cmake properly enables all Primary Tested packages using the ATDM configuration of Trilinos. (This currently does not build due to a CUDA build failure in the MiniTensor package). It does *not* include the disables specified in ATDMDisables.cmake. * The new Jenkins driver script Trilinos-atdm-white-ride-cuda-debug-pt-all-at-once.sh enables all PT packages using the ATDM configuration. This enables Fortran and disabled the Matio TPL to allow for the more full enable of Trilinos Primary Tested packages. This new file is added to try to get a fuller build of Trilinos packages for the auto PR CUDA build on 'white' (see trilinos#2464).
These options were removed from the EMPIRE configuration of Trilinos in the EM-Plamsa/BulidScripts repo as of commit: commit 285a5a7cad924a4419ede6eccaaefe687f958fa3 Author: Jason M. Gates <[email protected]> Date: Thu Mar 29 16:41:22 2018 -0600 Remove Experimental Flags See trilinos#2467. Therefore, we can hopefully safely assume these are not needed for EMPIRE.
…M builds (trilinos#2464, trilinos#2580) Neither SPARC's nor EMPIRE's builds of Trilinos enable RDC for various reasons (see trilinos#2464 and trilinos#2580). This option is currently OFF by default but I am setting this explicitly to OFF by default to make this clear. We can set up a seprate build that eanbles this (see trilinos#2598) This option is already off by default in Trilinos but this just makes it more explicit that the current ATMD configutation of Trilinos does not enable this.
Origin repo remote tracking branch: 'github/master' Origin repo remote repo URL: 'github = [email protected]:TriBITSPub/TriBITS.git' At commit: commit 5ca70605f4e18b3040e45fb7625809757fd6a07d Author: Roscoe A. Bartlett <[email protected]> Date: Thu Apr 19 10:19:08 2018 -0600 Summary: Add DEFAULT vars for a few vars use in Trilinos/ProjectName.cmake (trilinos#2464)
This reverts commit 5f9eedc. This is coming in through the snapshot of TriBITS next.
…for-cuda-build This snapshot update is being driven by trilinos#2464.
This allows the defaults to be set through SET( ... CACHE ...) statements in files read in through Trilinos_CONFIGURE_OPTIONS_FILE. This shows one big advantage of using the built-in cmake -C option for reading in *.cmake files. It ensures that any defaults set there are set there. This will be used to allow the ATDM configuration of Trilinos to set the default Trilinos_ENABLE_SECONDARY_TESTED_CODE=OFF after trilinos#2597 is complete.
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection Is Not Necessary for this Pull Request. |
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: Trilinos_pullrequest_gcc_4.9.3
Jenkins Parameters
Build InformationTest Name: Trilinos_pullrequest_gcc_4.8.4
Jenkins Parameters
Using Repos:
Pull Request Author: bartlettroscoe |
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: Trilinos_pullrequest_gcc_4.9.3
Jenkins Parameters
Build InformationTest Name: Trilinos_pullrequest_gcc_4.8.4
Jenkins Parameters
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ ibaned ]! |
Status Flag 'Pull Request AutoTester' - Pull Request MUST BE MERGED MANUALLY BY Project Team - Master Automerge is disabled (in .cfg file) |
@ibaned, thanks for the timely review! In the future, @fryeguy52 should be able to perform these types of reviews since the Trilinos Framework team is overloaded. |
This will get the current build
Trilinos-atdm-white-ride-cuda-debug-pt-all-at-once
to pass configure and then we can see the build failures for the attempt to enable all primary tested Trilinos packages for the CUDA build. I know this build failures but at least we will see it show up on CDash and then someone can decide what to do with this.There is an updated version of TriBITS in here as well.
This is contributing to #2464.
I also included the commit 71c51f2 which removed the enable for MueLU and Xpetra "Experimental" code (see #2317). And I added the commit 509eb83 which explicitly disables RDC for the ATDM build (but it was already disabled by default so this just makes that more explicit).