-
Notifications
You must be signed in to change notification settings - Fork 507
realm: new package #2941
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
base: develop
Are you sure you want to change the base?
realm: new package #2941
Conversation
2d02c3e to
a0674ec
Compare
|
Let us know when you want a deep review. In principle this should be fine, but I haven't spent any substantial time looking at the code yet. |
|
@muraj @elliottslaughter I'm currently building about 56 different combinations of Realm to test out this branch, only 19 of which are currently passing with this branch: https://github.com/rbberger/realm/tree/kokkos_cmake_refactor. Basically my branch puts the kokkos parts into their own subdirectory, creates a I hope we can make some progress on this in the coming days/weeks. Part of the combinations might have to be excluded, protected against. Others are exposing various bugs or CMake problems. E.g., asserts are still broken with HIP. It would be great if some part of this testing could become part of Realm/Legion regular testing, here is my current Spack environment file: spack:
specs:
- matrix:
- [realm]
- [~openmp, +openmp]
- [+cuda cuda_arch=86 +cuda_unsupported_compiler]
- [+shared, ~shared]
- ['%cxx=gcc', '%cxx=clang']
- [~kokkos, +kokkos ^kokkos+wrapper~cmake_lang, +kokkos ^kokkos~wrapper~cmake_lang %cxx=clang, +kokkos ^kokkos+cmake_lang~wrapper %gcc, +kokkos ^kokkos+cmake_lang~wrapper %cxx=clang]
- matrix:
- [realm]
- [~openmp, +openmp]
- [+rocm amdgpu_target=gfx942]
- [+shared, ~shared]
- [~kokkos, +kokkos]
- ['%cxx=gcc', '%cxx=clang']
view: false
concretizer:
unify: false
packages:
realm:
require:
- "@git.kokkos_cmake_refactor=main"
package_attributes:
git: https://github.com/rbberger/realm.git
llvm:
require:
- "@20"
externals:
- spec: [email protected]+clang+flang~lld~lldb
prefix: /usr
extra_attributes:
compilers:
c: /usr/bin/clang-20
cxx: /usr/bin/clang++-20
fortran: /usr/bin/flang-20
llvm-amdgpu:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3/lib/llvm
buildable: false
gcc:
require:
- "@13"
externals:
- spec: [email protected] languages:='c,c++,fortran'
prefix: /usr
extra_attributes:
compilers:
c: /usr/bin/gcc
cxx: /usr/bin/g++
fortran: /usr/bin/gfortran
kokkos:
require: '@4.7.02'
kokkos-nvcc-wrapper:
require: '@4.7.02'
cmake:
externals:
- spec: [email protected]
prefix: /usr
buildable: false
cuda:
require:
- '@12.8 +allow-unsupported-compilers'
externals:
- spec: [email protected] +allow-unsupported-compilers
prefix: /usr/local/cuda-12.8
buildable: false
hip:
version: [6.4.3]
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
hsa-rocr-dev:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocsolver:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocblas:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocthrust:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocprim:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocsparse:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocrand:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocm-smi-lib:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
rocprofiler-dev:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false
roctracer-dev:
externals:
- spec: [email protected]
prefix: /opt/rocm-6.4.3
buildable: false |
|
I just merged StanfordLegion/realm#384 which is working for me on Frontier and I believe should fix the HIP asserts. Otherwise if there are code coverage changes we can apply directly in Realm CI, that would be welcome so that we can catch more of this upstream. Right now I'm running through a similar process with Legion to catch issues not captured in Realm's CI. |
|
|
|
@spackbot fix style |
|
Let me see if I can fix that for you! |
|
I was able to run spack style --fixrepos/spack_repo/builtin/packages/amdsmi/package.py
repos/spack_repo/builtin/packages/amrex/package.py
repos/spack_repo/builtin/packages/arkouda/package.py
repos/spack_repo/builtin/packages/asio/package.py
repos/spack_repo/builtin/packages/aws_ofi_nccl/package.py
repos/spack_repo/builtin/packages/bbmap/package.py
repos/spack_repo/builtin/packages/blast_plus/package.py
repos/spack_repo/builtin/packages/blt/package.py
repos/spack_repo/builtin/packages/boost/package.py
repos/spack_repo/builtin/packages/capstone/package.py
repos/spack_repo/builtin/packages/care/package.py
repos/spack_repo/builtin/packages/chai/package.py
repos/spack_repo/builtin/packages/cmake/package.py
repos/spack_repo/builtin/packages/comgr/package.py
repos/spack_repo/builtin/packages/composable_kernel/package.py
repos/spack_repo/builtin/packages/cp2k/package.py
repos/spack_repo/builtin/packages/curl/package.py
repos/spack_repo/builtin/packages/dd4hep/package.py
repos/spack_repo/builtin/packages/diffutils/package.py
repos/spack_repo/builtin/packages/edm4hep/package.py
repos/spack_repo/builtin/packages/esmf/package.py
repos/spack_repo/builtin/packages/fairmq/package.py
repos/spack_repo/builtin/packages/fenics_ufcx/package.py
repos/spack_repo/builtin/packages/fzf/package.py
repos/spack_repo/builtin/packages/glow/package.py
repos/spack_repo/builtin/packages/greenx/package.py
repos/spack_repo/builtin/packages/hdf_eos2/package.py
repos/spack_repo/builtin/packages/highfive/package.py
repos/spack_repo/builtin/packages/hip/package.py
repos/spack_repo/builtin/packages/hip_tensor/package.py
repos/spack_repo/builtin/packages/hip_tests/package.py
repos/spack_repo/builtin/packages/hipblas/package.py
repos/spack_repo/builtin/packages/hipblas_common/package.py
repos/spack_repo/builtin/packages/hipblaslt/package.py
repos/spack_repo/builtin/packages/hipcc/package.py
repos/spack_repo/builtin/packages/hipcub/package.py
repos/spack_repo/builtin/packages/hipfft/package.py
repos/spack_repo/builtin/packages/hipfort/package.py
repos/spack_repo/builtin/packages/hipify_clang/package.py
repos/spack_repo/builtin/packages/hiprand/package.py
repos/spack_repo/builtin/packages/hipsolver/package.py
repos/spack_repo/builtin/packages/hipsparse/package.py
repos/spack_repo/builtin/packages/hipsparselt/package.py
repos/spack_repo/builtin/packages/hpcx_mpi/package.py
repos/spack_repo/builtin/packages/hpx/package.py
repos/spack_repo/builtin/packages/hsa_amd_aqlprofile/package.py
repos/spack_repo/builtin/packages/hsa_rocr_dev/package.py
repos/spack_repo/builtin/packages/hugo/package.py
repos/spack_repo/builtin/packages/hypre/package.py
repos/spack_repo/builtin/packages/libcatalyst/package.py
repos/spack_repo/builtin/packages/libceed/package.py
repos/spack_repo/builtin/packages/libgeopm/package.py
repos/spack_repo/builtin/packages/libgeopmd/package.py
repos/spack_repo/builtin/packages/libvdwxc/package.py
repos/spack_repo/builtin/packages/libvips/package.py
repos/spack_repo/builtin/packages/llvm_amdgpu/package.py
repos/spack_repo/builtin/packages/m4/package.py
repos/spack_repo/builtin/packages/mapl/package.py
repos/spack_repo/builtin/packages/mercurial/package.py
repos/spack_repo/builtin/packages/mfem/package.py
repos/spack_repo/builtin/packages/mgard/package.py
repos/spack_repo/builtin/packages/migraphx/package.py
repos/spack_repo/builtin/packages/miopen_hip/package.py
repos/spack_repo/builtin/packages/mivisionx/package.py
repos/spack_repo/builtin/packages/nccl/package.py
repos/spack_repo/builtin/packages/neko/package.py
repos/spack_repo/builtin/packages/node_js/package.py
repos/spack_repo/builtin/packages/numactl/package.py
repos/spack_repo/builtin/packages/osu_micro_benchmarks/package.py
repos/spack_repo/builtin/packages/paraview/package.py
repos/spack_repo/builtin/packages/petsc/package.py
repos/spack_repo/builtin/packages/podio/package.py
repos/spack_repo/builtin/packages/py_amrex/package.py
repos/spack_repo/builtin/packages/py_arkouda/package.py
repos/spack_repo/builtin/packages/py_ase/package.py
repos/spack_repo/builtin/packages/py_dask/package.py
repos/spack_repo/builtin/packages/py_distributed/package.py
repos/spack_repo/builtin/packages/py_geopmdpy/package.py
repos/spack_repo/builtin/packages/py_geopmpy/package.py
repos/spack_repo/builtin/packages/py_mdanalysis/package.py
repos/spack_repo/builtin/packages/py_mdanalysistests/package.py
repos/spack_repo/builtin/packages/py_onnxruntime/package.py
repos/spack_repo/builtin/packages/py_pandas_stubs/package.py
repos/spack_repo/builtin/packages/py_petsc4py/package.py
repos/spack_repo/builtin/packages/py_rasterio/package.py
repos/spack_repo/builtin/packages/py_repligit/package.py
repos/spack_repo/builtin/packages/py_z3_solver/package.py
repos/spack_repo/builtin/packages/raja/package.py
repos/spack_repo/builtin/packages/rccl/package.py
repos/spack_repo/builtin/packages/rdc/package.py
repos/spack_repo/builtin/packages/realm/package.py
repos/spack_repo/builtin/packages/rocal/package.py
repos/spack_repo/builtin/packages/rocalution/package.py
repos/spack_repo/builtin/packages/rocblas/package.py
repos/spack_repo/builtin/packages/rocdecode/package.py
repos/spack_repo/builtin/packages/rocfft/package.py
repos/spack_repo/builtin/packages/rocjpeg/package.py
repos/spack_repo/builtin/packages/rocm_bandwidth_test/package.py
repos/spack_repo/builtin/packages/rocm_cmake/package.py
repos/spack_repo/builtin/packages/rocm_core/package.py
repos/spack_repo/builtin/packages/rocm_dbgapi/package.py
repos/spack_repo/builtin/packages/rocm_debug_agent/package.py
repos/spack_repo/builtin/packages/rocm_device_libs/package.py
repos/spack_repo/builtin/packages/rocm_examples/package.py
repos/spack_repo/builtin/packages/rocm_gdb/package.py
repos/spack_repo/builtin/packages/rocm_opencl/package.py
repos/spack_repo/builtin/packages/rocm_openmp_extras/package.py
repos/spack_repo/builtin/packages/rocm_smi_lib/package.py
repos/spack_repo/builtin/packages/rocm_tensile/package.py
repos/spack_repo/builtin/packages/rocm_validation_suite/package.py
repos/spack_repo/builtin/packages/rocminfo/package.py
repos/spack_repo/builtin/packages/rocmlir/package.py
repos/spack_repo/builtin/packages/rocprim/package.py
repos/spack_repo/builtin/packages/rocprofiler_compute/package.py
repos/spack_repo/builtin/packages/rocprofiler_dev/package.py
repos/spack_repo/builtin/packages/rocprofiler_register/package.py
repos/spack_repo/builtin/packages/rocprofiler_sdk/package.py
repos/spack_repo/builtin/packages/rocprofiler_systems/package.py
repos/spack_repo/builtin/packages/rocpydecode/package.py
repos/spack_repo/builtin/packages/rocrand/package.py
repos/spack_repo/builtin/packages/rocshmem/package.py
repos/spack_repo/builtin/packages/rocsolver/package.py
repos/spack_repo/builtin/packages/rocsparse/package.py
repos/spack_repo/builtin/packages/rocthrust/package.py
repos/spack_repo/builtin/packages/roctracer_dev/package.py
repos/spack_repo/builtin/packages/roctracer_dev_api/package.py
repos/spack_repo/builtin/packages/rocwmma/package.py
repos/spack_repo/builtin/packages/rpp/package.py
repos/spack_repo/builtin/packages/scorep/package.py
repos/spack_repo/builtin/packages/sentieon_genomics/package.py
repos/spack_repo/builtin/packages/strumpack/package.py
repos/spack_repo/builtin/packages/surfer/package.py
repos/spack_repo/builtin/packages/tau/package.py
repos/spack_repo/builtin/packages/texlive/package.py
repos/spack_repo/builtin/packages/thrift/package.py
repos/spack_repo/builtin/packages/transferbench/package.py
repos/spack_repo/builtin/packages/ufs_weather_model/package.py
repos/spack_repo/builtin/packages/umpire/package.py
repos/spack_repo/builtin/packages/vasp/package.py
repos/spack_repo/builtin/packages/verible/package.py
repos/spack_repo/builtin/packages/verilator/package.py
repos/spack_repo/builtin/packages/warpx/package.py
repos/spack_repo/builtin/packages/whip/package.py
�[1;34m==> �[0mrunning flake8
repos/spack_repo/builtin/packages/realm/package.py:208: [E501] line too long (106 > 99 characters)
�[1;34m==> �[0mrunning isort
�[1;34m==> �[0mrunning black
I've updated the branch with style fixes. |
|
@elliottslaughter as mentioned in the Realm PR, this is ready for review. This PR now requires that change proposed to Realm. |
|
The Realm PR has been merged. |
Co-authored-by: Elliott Slaughter <[email protected]>
Extracted from #1231 without explicit changes to the GASNet Spack package. We can get this one merged without waiting on GASNet changes. This one also defaults to using NVCC as cuda compiler. Not adding any released version, since there is only a RC tag at the moment.
@muraj @elliottslaughter