forked from abacusmodeling/abacus-develop
-
Notifications
You must be signed in to change notification settings - Fork 138
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
DCU Compile error #5806
Labels
Compile & CICD & Docs & Dependencies
Issues related to compiling ABACUS
GPU & DCU & HPC
GPU and DCU and HPC related any issues
Comments
Cstandardlib
added
Compile & CICD & Docs & Dependencies
Issues related to compiling ABACUS
GPU & DCU & HPC
GPU and DCU and HPC related any issues
labels
Jan 3, 2025
Error only occurs when
abacus-develop/source/module_elecstate/test/elecstate_print_test.cpp:43:1: error: use of undeclared identifier 'InfoNonlocal'
InfoNonlocal::~InfoNonlocal(){}
^
abacus-develop/source/module_elecstate/test/elecstate_base_test.cpp:42:1: error: use of undeclared identifier 'InfoNonlocal'
InfoNonlocal::~InfoNonlocal(){}
^
2 errors generated when compiling for gfx928.
2 errors generated when compiling for gfx926.
2 errors generated when compiling for gfx906.
gmake[2]: *** [source/module_elecstate/test/CMakeFiles/elecstate_print.dir/build.make:76: source/module_elecstate/test/CMakeFiles/elecstate_print.dir/elecstate_print_test.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
/usr/bin/ld: ../../../libcontainer_rocm.a(container_rocm_generated_lapack.hip.cu.o): in function `container::kernels::lapack_trtri<float, container::DEVICE_GPU>::operator()(char const&, char const&, int const&, float*, int const&)':
lapack.hip.cu:(.text._ZN9container7kernels12lapack_trtriIfNS_10DEVICE_GPUEEclERKcS5_RKiPfS7_[_ZN9container7kernels12lapack_trtriIfNS_10DEVICE_GPUEEclERKcS5_RKiPfS7_]+0x82): undefined reference to `container::kernels::lapack_trtri<float, container::DEVICE_CPU>::operator()(char const&, char const&, int const&, float*, int const&)' |
DCU version uses CPU template <typename T>
struct lapack_trtri<T, DEVICE_GPU> {
void operator()(
const char& uplo,
const char& diag,
const int& dim,
T* Mat,
const int& lda)
{
// TODO: trtri is not implemented in this method yet
// Cause the trtri in cuSolver is not stable for ABACUS!
// hipSolverConnector::trtri(hipsolver_handle, uplo, diag, dim, Mat, lda);
// hipSolverConnector::potri(hipsolver_handle, uplo, diag, dim, Mat, lda);
std::vector<T> H_Mat(dim * dim, static_cast<T>(0.0));
hipMemcpy(H_Mat.data(), Mat, sizeof(T) * H_Mat.size(), hipMemcpyDeviceToHost);
lapack_trtri<T, DEVICE_CPU>()(uplo, diag, dim, H_Mat.data(), lda);
hipMemcpy(Mat, H_Mat.data(), sizeof(T) * H_Mat.size(), hipMemcpyHostToDevice);
}
}; I will add lapack.cpp in |
Dependency failure in module_elecstate tests: /usr/bin/ld: /usr/bin/ld: DWARF error: invalid or unhandled FORM value: 0x25
CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_hartree_energy()':
elecstate_energy_terms.cpp:(.text+0x4): undefined reference to `elecstate::H_Hartree_pw::hartree_energy'
/usr/bin/ld: CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_etot_efield()':
elecstate_energy_terms.cpp:(.text+0x14): undefined reference to `elecstate::Efield::etotefield'
/usr/bin/ld: CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_etot_gatefield()':
elecstate_energy_terms.cpp:(.text+0x24): undefined reference to `elecstate::Gatefield::etotgatefield'
/usr/bin/ld: CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_solvent_model_Ael()':
elecstate_energy_terms.cpp:(.text+0x34): undefined reference to `surchem::Ael'
/usr/bin/ld: CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_solvent_model_Acav()':
elecstate_energy_terms.cpp:(.text+0x44): undefined reference to `surchem::Acav'
/usr/bin/ld: CMakeFiles/elecstate_fp_energy.dir/__/elecstate_energy_terms.cpp.o: in function `elecstate::ElecState::get_dftu_energy()':
elecstate_energy_terms.cpp:(.text+0x54): undefined reference to `GlobalC::dftu'
clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [source/module_elecstate/test/CMakeFiles/elecstate_fp_energy.dir/build.make:287: source/module_elecstate/test/elecstate_fp_energy] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:5723: source/module_elecstate/test/CMakeFiles/elecstate_fp_energy.dir/all] Error 2 |
This was referenced Jan 8, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Compile & CICD & Docs & Dependencies
Issues related to compiling ABACUS
GPU & DCU & HPC
GPU and DCU and HPC related any issues
Describe the bug
When compiling abacus with ROCM, errors are encounterd:
And there are warnings about
hipsolver
included in
abacus-develop/source/module_base/module_container/base/macros/rocm.h
:Expected behavior
Latest ABACUS should compile on this ROCM environment.
To Reproduce
No response
Environment
Environment
Compile & build
Dependencies:
Additional Context
No response
Task list for Issue attackers (only for developers)
The text was updated successfully, but these errors were encountered: