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 support for building on crossroads. #20119

Open
wants to merge 7 commits into
base: 3.4RC
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 41 additions & 42 deletions scripts/run-build-visit
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
# Usage:
# run-build-visit -<machine name> -v <version> -s <build_visit_script>
# Valid machine names:
# poodle (LC, Linux, x86_64, toss4),
# lassen (LC, Linux, power9),
# rzwhippet (LC, Linux, x86_64, toss4),
# rzvernal (LC, Linux, x86_64, toss4-cray),
# trinity (LANL, x86_64)
# tuolumne (LC, Linux, x86_64, toss4-cray),
# rzadams (LC, Linux, x86_64, toss4-cray)
# poodle (LC, Linux, x86_64, toss4),
# lassen (LC, Linux, power9),
# rzwhippet (LC, Linux, x86_64, toss4),
# rzvernal (LC, Linux, x86_64, toss4-cray),
# crossroads (LANL, x86_64)
# tuolumne (LC, Linux, x86_64, toss4-cray),
# rzadams (LC, Linux, x86_64, toss4-cray)
#
# Modifications:
# Eric Brugger, Fri Feb 17 09:36:29 PST 2023
Expand Down Expand Up @@ -71,6 +71,9 @@
# Justin Privitera, Fri Nov 22 16:40:46 PST 2024
# Removed kickit with extreme prejudice.
#
# Eric Brugger, Wed Dec 4 16:00:35 PST 2024
# Removed trinity and added crossroads.
#
#-----------------------------------------------------------------------

#
Expand All @@ -80,7 +83,7 @@ poodle=false
lassen=false
rzgenie=false
rzvernal=false
trinity=false
crossroads=false
tuolumne=false

machine_name="unknown"
Expand Down Expand Up @@ -118,9 +121,9 @@ do
machine_name="rzvernal"
shift
;;
-trinity)
trinity=true
machine_name="trinity"
-crossroads)
crossroads=true
machine_name="crossroads"
shift
;;
-tuolumne)
Expand Down Expand Up @@ -151,13 +154,13 @@ if [ "$build_visit_script" = "undefined" ] || [ "$version" = "undefined" ]
then
echo "Usage: -<machine name> -v <version> -s <build_visit_script>"
echo "Valid machine names:"
echo " poodle (LC, Linux, x86_64, toss4),"
echo " lassen (LC, Linux, power9),"
echo " rzwhippet (LC, Linux, x86_64, toss4),"
echo " rzvernal (LC, Linux, x86_64, toss4-cray),"
echo " trinity (LANL, Linux, x86_64)"
echo " tuolumne (LC, Linux, x86_64, toss4-cray),"
echo " rzadams (LC, Linux, x86_64, toss4-cray)"
echo " poodle (LC, Linux, x86_64, toss4),"
echo " lassen (LC, Linux, power9),"
echo " rzwhippet (LC, Linux, x86_64, toss4),"
echo " rzvernal (LC, Linux, x86_64, toss4-cray),"
echo " crossroads (LANL, Linux, x86_64)"
echo " tuolumne (LC, Linux, x86_64, toss4-cray),"
echo " rzadams (LC, Linux, x86_64, toss4-cray)"
exit
fi

Expand All @@ -178,7 +181,7 @@ fi
# Info and set ran_build_visit
#
if [ "$poodle" = true ] || [ "$lassen" = true ] || [ "$rzwhippet" = true ] || \
[ "$rzvernal" = true ] || [ "$trinity" = true ] || \
[ "$rzvernal" = true ] || [ "$crossroads" = true ] || \
[ "$tuolumne" = true ]; then
echo "Building on $machine_name"
ran_build_visit=true
Expand All @@ -198,7 +201,7 @@ elif [ "$rzvernal" = true ]; then
dest_dir=/usr/workspace/visit/visit/thirdparty_shared/$version/toss4-cray-gfx90a
elif [ "$tuolumne" = true ]; then
dest_dir=/usr/workspace/visit/visit/thirdparty_shared/$version/toss4-cray-gfx942
elif [ "$trinity" = true ]; then
elif [ "$crossroads" = true ]; then
dest_dir=/usr/projects/views/visit/thirdparty_shared/$version
else
echo "case for $machine_name not implemented. Bailing out."
Expand All @@ -211,7 +214,7 @@ fi
if [ "$poodle" = true ] || [ "$lassen" = true ] || [ "$rzwhippet" = true ] || \
[ "$rzvernal" = true ] || [ "$tuolumne" = true ]; then
dest_group=visit
elif [ "$trinity" = true ]; then
elif [ "$crossroads" = true ]; then
dest_group=viz
else
echo "case for $machine_name not implemented. Bailing out."
Expand All @@ -222,7 +225,7 @@ fi
# housekeeping
#
if [ "$poodle" = true ] || [ "$lassen" = true ] || [ "$rzwhippet" = true ] || \
[ "$rzvernal" = true ] || [ "$trinity" = true ] || \
[ "$rzvernal" = true ] || [ "$crossroads" = true ] || \
[ "$tuolumne" = true ]; then
if [ -f ${build_visit_script}_log.${machine_name} ]; then
mv ${build_visit_script}_log.${machine_name} ${build_visit_script}_log
Expand Down Expand Up @@ -266,19 +269,15 @@ elif [ "$rzvernal" = true ]; then
PAR_INCLUDE=-I/usr/tce/packages/cray-mpich/cray-mpich-8.1.28-gcc-12.2.1-magic/include \
./$build_visit_script --group ${dest_group} --required --optional --mesagl --uintah --parallel \
--qt6 --qwt --no-pyside --no-gdal --no-uintah --no-visit --makeflags -j24 --thirdparty-path ${dest_dir}
elif [ "$trinity" = true ]; then
module swap PrgEnv-intel/6.0.10 PrgEnv-gnu/6.0.10
module swap gcc/11.2.0 gcc/8.2.0
export XTPE_LINK_TYPE=dynamic
export CRAYPE_LINK_TYPE=dynamic
env C_COMPILER=/opt/cray/pe/craype/2.7.15/bin/cc \
CXX_COMPILER=/opt/cray/pe/craype/2.7.15/bin/CC \
PAR_COMPILER=/opt/cray/pe/craype/2.7.15/bin/cc \
PAR_COMPILER_CXX=/opt/cray/pe/craype/2.7.15/bin/CC \
PAR_INCLUDE=-I/opt/cray/pe/mpt/7.7.20/gni/mpich-gnu/8.2/include \
PAR_LIBS="-L/opt/cray/pe/mpt/7.7.20/gni/mpich-gnu/8.2/lib -Wl,-rpath=/opt/cray/pe/mpt/7.7.20/gni/mpich-gnu/8.2/lib -lmpich" \
elif [ "$crossroads" = true ]; then
env C_COMPILER=gcc \
CXX_COMPILER=g++ \
PAR_COMPILER=mpicc \
PAR_COMPILER_CXX=mpic++ \
PAR_INCLUDE=-I/opt/cray/pe/mpich/8.1.28/ofi/intel/2022.1/include \
PAR_LIBS="-L/opt/cray/pe/mpich/8.1.28/ofi/intel/2022.1/lib -Wl,-rpath=/opt/cray/pe/mpich/8.1.28/ofi/intel/intel/lib" \
./$build_visit_script --group ${dest_group} --required --optional --mesagl --parallel \
--no-adios --no-adios2 --no-mili --no-pyside --qt510 --qwt --no-visit \
--qt6 --qwt --no-adios --no-gdal --no-pyside --no-visit \
--makeflags -j16 --thirdparty-path ${dest_dir}
elif [ "$tuolumne" = true ]; then
env CC=gcc \
Expand All @@ -296,7 +295,7 @@ fi
# Final housekeeping and permissions
#
if [ "$poodle" = true ] || [ "$lassen" = true ] || [ "$rzwhippet" = true ] || \
[ "$rzvernal" = true ] || [ "$trinity" = true ] || \
[ "$rzvernal" = true ] || [ "$crossroads" = true ] || \
[ "$tuolumne" = true ]; then
mv ${build_visit_script}_log ${build_visit_script}_log.${machine_name}
# just in case perms
Expand All @@ -316,12 +315,12 @@ then
echo "Invalid or missing machine name."
echo "Usage: -<machine name> -v <version> -s <build_visit_script>"
echo "Valid machine names:"
echo " poodle (LC, Linux, x86_64, toss4),"
echo " lassen (LC, Linux, power9),"
echo " rzgenie (LC, Linux, x86_64, toss3),"
echo " rzvernal (LC, Linux, x86_64, toss4-cray),"
echo " trinity (LANL, Linux, x86_64)"
echo " tuolumne (LC, Linux, x86_64, toss4-cray),"
echo " rzadams (LC, Linux, x86_64, toss4-cray),"
echo " poodle (LC, Linux, x86_64, toss4),"
echo " lassen (LC, Linux, power9),"
echo " rzgenie (LC, Linux, x86_64, toss3),"
echo " rzvernal (LC, Linux, x86_64, toss4-cray),"
echo " crossroads (LANL, Linux, x86_64)"
echo " tuolumne (LC, Linux, x86_64, toss4-cray),"
echo " rzadams (LC, Linux, x86_64, toss4-cray),"
exit
fi
231 changes: 231 additions & 0 deletions src/config-site/xr-fe1.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,231 @@
#/usr/projects/views/visit/thirdparty_shared/3.4.2/cmake/3.24.3/linux-x86_64_gcc-12.2/bin/cmake
##
## ./build_visit3_4_2 generated host.cmake
## created: Wed 04 Dec 2024 03:51:16 PM MST
## system: Linux xr-fe1 5.14.21-150400.24.111_12.0.90-cray_shasta_c #1 SMP Fri Apr 19 23:37:58 UTC 2024 (18c041e) x86_64 x86_64 x86_64 GNU/Linux
## by: brugger

##
## Setup VISITHOME & VISITARCH variables.
##
SET(VISITHOME /usr/projects/views/visit/loser/thirdparty_shared/3.4.2)
SET(VISITARCH linux-x86_64_gcc-12.2)

## Compiler flags.
##
VISIT_OPTION_DEFAULT(VISIT_C_COMPILER cc TYPE FILEPATH)
VISIT_OPTION_DEFAULT(VISIT_CXX_COMPILER CC TYPE FILEPATH)
VISIT_OPTION_DEFAULT(VISIT_FORTRAN_COMPILER no TYPE FILEPATH)
VISIT_OPTION_DEFAULT(VISIT_C_FLAGS " -m64 -fPIC -fvisibility=hidden" TYPE STRING)
VISIT_OPTION_DEFAULT(VISIT_CXX_FLAGS " -m64 -fPIC -fvisibility=hidden" TYPE STRING)

##
## Parallel Build Setup.
##
VISIT_OPTION_DEFAULT(VISIT_PARALLEL ON TYPE BOOL)
## (configured w/ mpi compiler wrapper)
VISIT_OPTION_DEFAULT(VISIT_MPI_COMPILER mpicc TYPE FILEPATH)
VISIT_OPTION_DEFAULT(VISIT_CREATE_SOCKET_RELAY_EXECUTABLE ON)

##
## VisIt Thread Option
##
VISIT_OPTION_DEFAULT(VISIT_THREAD OFF TYPE BOOL)

##
## Turn on DDT support.
##
##VISIT_OPTION_DEFAULT(VISIT_DDT ON TYPE BOOL)

##############################################################
##
## Database reader plugin support libraries
##
## The HDF5 and NetCDF libraries must be first so that
## their libdeps are defined for any plugins that need them.
##
## For libraries with LIBDEP settings, order matters.
## Libraries with LIBDEP settings that depend on other
## Library's LIBDEP settings must come after them.
##############################################################
##

##
## ZLIB
##
SETUP_APP_VERSION(ZLIB 1.2.13)
VISIT_OPTION_DEFAULT(VISIT_ZLIB_DIR ${VISITHOME}/zlib/${ZLIB_VERSION}/${VISITARCH})

##
## Python
##
VISIT_OPTION_DEFAULT(VISIT_PYTHON_DIR ${VISITHOME}/python/3.9.18/${VISITARCH})

##
## LLVM
##
VISIT_OPTION_DEFAULT(VISIT_LLVM_DIR ${VISITHOME}/llvm/6.0.1/${VISITARCH})

##
## MesaGL
##
VISIT_OPTION_DEFAULT(VISIT_MESAGL_DIR ${VISITHOME}/mesagl/17.3.9/${VISITARCH})

##
## QT6
##
SETUP_APP_VERSION(QT 6.4.2)
VISIT_OPTION_DEFAULT(VISIT_QT_DIR ${VISITHOME}/qt/6.4.2/${VISITARCH})

##
## OSPRay
##
SETUP_APP_VERSION(OSPRAY 3.0.0)
VISIT_OPTION_DEFAULT(VISIT_OSPRAY_DIR ${VISITHOME}/ospray/${OSPRAY_VERSION}/${VISITARCH}/ospray)

##
## VTK
##
SETUP_APP_VERSION(VTK 9.2.6)
VISIT_OPTION_DEFAULT(VISIT_VTK_DIR ${VISITHOME}/vtk/${VTK_VERSION}/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_VTK_INCDEP ZLIB_INCLUDE_DIR)
VISIT_OPTION_DEFAULT(VISIT_VTK_LIBDEP ZLIB_LIBRARY)

##
## SZIP
##
VISIT_OPTION_DEFAULT(VISIT_SZIP_DIR ${VISITHOME}/szip/2.1/${VISITARCH})

##
## HDF5
##
VISIT_OPTION_DEFAULT(VISIT_HDF5_DIR ${VISITHOME}/hdf5/1.8.14/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_HDF5_MPI_DIR ${VISITHOME}/hdf5_mpi/1.8.14/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_HDF5_LIBDEP ${VISITHOME}/szip/2.1/${VISITARCH}/lib sz ${VISITHOME}/zlib/${ZLIB_VERSION}/${VISITARCH}/lib z TYPE STRING)
VISIT_OPTION_DEFAULT(VISIT_HDF5_MPI_LIBDEP ${VISITHOME}/szip/2.1/${VISITARCH}/lib sz ${VISITHOME}/zlib/${ZLIB_VERSION}/${VISITARCH}/lib z TYPE STRING)

##
## BLOSC2
##
VISIT_OPTION_DEFAULT(VISIT_BLOSC2_DIR ${VISITHOME}/blosc2/2.11.3/${VISITARCH})

##
## ADIOS2
##
SETUP_APP_VERSION(ADIOS2 2.10.0-rc1)
VISIT_OPTION_DEFAULT(VISIT_ADIOS2_DIR ${VISITHOME}/adios2-ser/${ADIOS2_VERSION}/${VISITARCH})
## (configured w/ mpi compiler wrapper)
VISIT_OPTION_DEFAULT(VISIT_ADIOS2_PAR_DIR ${VISITHOME}/adios2-par/${ADIOS2_VERSION}/${VISITARCH})

##
## AdvIO
##
VISIT_OPTION_DEFAULT(VISIT_ADVIO_DIR ${VISITHOME}/AdvIO/1.2/${VISITARCH})

##
## BOOST
##
SETUP_APP_VERSION(BOOST 1_67_0)
VISIT_OPTION_DEFAULT(VISIT_BOOST_DIR ${VISITHOME}/boost/${BOOST_VERSION}/${VISITARCH})

##
## Boxlib
##
VISIT_OPTION_DEFAULT(VISIT_BOXLIB_DIR ${VISITHOME}/boxlib/1.3.5/${VISITARCH})

##
## CFITSIO
##
VISIT_OPTION_DEFAULT(VISIT_CFITSIO_DIR ${VISITHOME}/cfitsio/3006/${VISITARCH})

##
## CGNS
##
VISIT_OPTION_DEFAULT(VISIT_CGNS_DIR ${VISITHOME}/cgns/4.1.0/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_CGNS_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} TYPE STRING)

##
## Silo
##
VISIT_OPTION_DEFAULT(VISIT_SILO_DIR ${VISITHOME}/silo/4.10.2/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_SILO_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} ZLIB_LIBRARY_DIR z TYPE STRING)

##
## Conduit
##
SETUP_APP_VERSION(CONDUIT 0.9.2)
VISIT_OPTION_DEFAULT(VISIT_CONDUIT_DIR ${VISITHOME}/conduit/v0.9.2/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_CONDUIT_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} ${VISIT_SILO_LIBDEP} TYPE STRING)

##
## FMS
##
VISIT_OPTION_DEFAULT(VISIT_FMS_DIR ${VISITHOME}/fms/0.2/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_FMS_LIBDEP CONDUIT_LIBRARY_DIR conduit CONDUIT_LIBRARY_DIR conduit_blueprint CONDUIT_LIBRARY_DIR conduit_relay ${VISIT_CONDUIT_LIBDEP} TYPE STRING)

##
## H5Part
##
SETUP_APP_VERSION(H5PART 1.6.6)
VISIT_OPTION_DEFAULT(VISIT_H5PART_DIR ${VISITHOME}/h5part/${H5PART_VERSION}/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_H5PART_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} TYPE STRING)

##
## IceT
##
VISIT_OPTION_DEFAULT(VISIT_ICET_DIR ${VISITHOME}/icet/77c708f9090236b576669b74c53e9f105eedbd7e/${VISITARCH})

##
## MFEM
##
VISIT_OPTION_DEFAULT(VISIT_MFEM_DIR ${VISITHOME}/mfem/4.6/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_MFEM_INCDEP CONDUIT_INCLUDE_DIR FMS_INCLUDE_DIR TYPE STRING)
VISIT_OPTION_DEFAULT(VISIT_MFEM_LIBDEP ${VISIT_CONDUIT_LIBDEP} ${VISITHOME}/zlib/${ZLIB_VERSION}/${VISITARCH}/lib z TYPE STRING)

##
## Mili
##
VISIT_OPTION_DEFAULT(VISIT_MILI_DIR ${VISITHOME}/mili/23.02/${VISITARCH})

##
## MOAB
##
VISIT_OPTION_DEFAULT(VISIT_MOAB_DIR ${VISITHOME}/moab/5.5.0/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_MOAB_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} TYPE STRING)
VISIT_OPTION_DEFAULT(VISIT_MOAB_MPI_DIR ${VISITHOME}/moab_mpi/5.5.0/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_MOAB_MPI_LIBDEP HDF5_MPI_LIBRARY_DIR hdf5_mpi ${VISIT_HDF5_MPI_LIBDEP} TYPE STRING)

##
## NetCDF
##
VISIT_OPTION_DEFAULT(VISIT_NETCDF_DIR ${VISITHOME}/netcdf/4.1.1/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_NETCDF_LIBDEP HDF5_LIBRARY_DIR hdf5_hl HDF5_LIBRARY_DIR hdf5 ${VISIT_HDF5_LIBDEP} TYPE STRING)

##
## OpenEXR
##
VISIT_OPTION_DEFAULT(VISIT_OPENEXR_DIR ${VISITHOME}/openexr/2.2.0/${VISITARCH})

##
## PIDX
##
SETUP_APP_VERSION(PIDX 0.9.3)
VISIT_OPTION_DEFAULT(VISIT_PIDX_DIR ${VISITHOME}/pidx/${PIDX_VERSION}/${VISITARCH})

##
## QWT
##
SETUP_APP_VERSION(QWT 6.3.0)
VISIT_OPTION_DEFAULT(VISIT_QWT_DIR ${VISITHOME}/qwt/${QWT_VERSION}/${VISITARCH})

##
## VTKM
##
VISIT_OPTION_DEFAULT(VISIT_VTKM_DIR ${VISITHOME}/vtkm/v1.9.0/${VISITARCH})

##
## Xdmf
##
VISIT_OPTION_DEFAULT(VISIT_XDMF_DIR ${VISITHOME}/Xdmf/2.1.1/${VISITARCH})
VISIT_OPTION_DEFAULT(VISIT_XDMF_LIBDEP HDF5_LIBRARY_DIR hdf5 ${VISITHOME}/vtk/${VTK_VERSION}/${VISITARCH}/lib64 vtklibxml2-${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION} TYPE STRING)

Loading