[mephi-hpc] Thermo_PW

anikeev at ut.mephi.ru anikeev at ut.mephi.ru
Fri Oct 11 17:07:05 MSK 2024


anikeev at ut.mephi.ru писал 2024-10-11 16:44:
> anikeev at ut.mephi.ru писал 2024-10-11 16:35:
>> anikeev at ut.mephi.ru писал 2024-10-10 16:36:
>>> Павел Кулямин писал 2024-10-10 01:16:
>>>> Добрый день!
>>> 
>>> Здравствуйте!
>>> 
>>>> Столкнулся с некоторыми сложностями
>>>> при установке дополнительного модуля
>>>> ThermoPW для QuantumEspresso на кластере tensor.
>>>> 
>>>> Используемый мною порядок действий:
>>>> 
>>>> 1) С официального сайта, скачал
>>>> последнюю стабильную версию QE 7.3.1 -
>>>> https://www.quantum-espresso.org/rdm-download/488/v7-3-1/7e1905f3d25a9ccef4ae109cb8f6dcce/qe-7.3.1-ReleasePack.tar.gz
>>>> 
>>>> 2) C github дополнительного модуля ThermoPW
>>>> скачал последнюю версию
>>>> дополнительного модуля которая
>>>> совместима с версией QE выше 7.2 -
>>>> https://github.com/dalcorso/thermo_pw/releases/tag/2.0.0
>>> 
>>> Здесь ошибка. thermo_pw 2.0.0 совместим с QE-7.3 cтрого, даже 
>>> минорные
>>> версии менять нельзя. Эту информацию можно найти в документе
>>> thermo_pw_help.md:
>>> 
>>> https://github.com/dalcorso/thermo_pw/blob/master/thermo_pw_help.md
>>> 
>>> Эта проблема обсуждалась в листе рассылки QE:
>>> 
>>> https://www.mail-archive.com/search?l=users@lists.quantum-espresso.org&q=subject:%22Re%5C%3A+%5C%5BQE%5C-users%5C%5D+error%22&o=newest&f=1
>>> 
>>> Будьте, однако, осторожны. Документ thermo_pw_help.md сам содержит
>>> ошибки. Например, для сборки с использованием Autotools там пропущен
>>> этап ./configure. В целом, проект thermo_pw производит не лучшее
>>> впечатление по качеству кода и документации.
>>> 
>>> Итого, вот релизы, которые должны быть совместимы:
>>> 
>>> https://github.com/dalcorso/thermo_pw/archive/refs/tags/2.0.0.tar.gz
>>> https://gitlab.com/QEF/q-e/-/archive/qe-7.3/q-e-qe-7.3.tar.gz
>>> 
>>>> 3) В личной папке разархивировал
>>>> архивы с помощью команды - TAR - XZF ' ИМЯ
>>>> ФАЙЛА'
>>>> 
>>>> 4) Как написано в Readme.md -  в папку с
>>>> qe(папка из архива 1) перенес папку thermo_pw
>>>> (из архива 2)
>>>> 
>>>> 5) Перешел в перенесенную папку и
>>>> выполнил следующую команду - MAKE JOIN_QE
>>>> 
>>>> 6) Перешел в корневую папку qe и
>>>> пробовал произвести установку
>>>> следующими способами:
>>>> 
>>>> 6.1) Последовательное выполнение
>>>> следующих команд:
>>>>       SOURCE /OPT/FFTW-3.3.10/DOUBLE/CUSTOMVARS.SH
>>>>       SOURCE /OPT/OPENBLAS-0.3.23/CUSTOMVARS.SH
>>>>       ./CONFIGURE
>>>>       MAKE THERMO_PW
>>>> Получил следующую ошибку:
>>>> Error: Symbol ‘using_wg_d’ referenced at (1) not found in module
>>>> ‘wvfct_gpum’
>>>> make[2]: *** [../../make.inc:16: electrons_tpw.o] Error 1
>>>> make[2]: Leaving directory
>>>> '/mnt/pool/6/pakuliamin/qe-7.3.1/thermo_pw/qe'
>>>> make[1]: *** [Makefile:18: thermo_qe] Error 1
>>>> make[1]: Leaving directory 
>>>> '/mnt/pool/6/pakuliamin/qe-7.3.1/thermo_pw'
>>>> make: *** [Makefile:88: thermo_pw] Error 1
>>> 
>>> Для сборки QE со специальными версиями FFTW и OpenBLAS недостаточно
>>> корректно экспортировать переменные окружения. При вызове ./configure
>>> без аргументов, система сборки отдаст предпочтение нестандартной и
>>> устаревшей версии Intel PSXE 2018, использование которой не
>>> рекомендуется и для использования которой при запуске нужны будут
>>> переменные окружения из
>>> /opt/intel/parallel_studio_xe_2018/psxevars.sh.
>>> 
>>> К сожалению, система сборки Autotools находится не в лучшем состоянии
>>> уже у апстримной версии QE. При сборке с SDK NVIDIA рекомендуется
>>> использовать Autotools, при сборке с SDK GNU или Intel лучше
>>> использовать cmake.
>>> 
>>> Для сборки QE с GNU SDK и Autotools требуется ручная правка make.inc
>>> после выполнения ./configure.
>>> 
>>> https://www.quantum-espresso.org/Doc/user_guide/node11.html
>> 
>> Пример концигурации QE при помощи Autotools с использованием gcc,
>> gfortran, openmpi, openblas, scalapack из состава дистрибутива Debian
>> и оптимизированного FFTW3 из /opt/fftw-3.3.10/double/
>> 
>> 1) Экспортируйте переменные окружения:
>> 
>> anikeev at tensor:~$ source /opt/fftw-3.3.10/double/customvars.sh
>> 
>> 2) Выполните в корневой директории QE команду ./configure
>> 
>> 3) Откорректируйте следующие строки файла make.inc
>> 
>> DFLAGS         =  -D__FFTW -D__MPI -D__SCALAPACK
> 
> Прошу прощения, опечатка:
> 
> DFLAGS         =  -D__FFTW3 -D__MPI -D__SCALAPACK
> 
>> IFLAGS         = -I. -I$(TOPDIR)/include 
>> -I/opt/fftw-3.3.10/double/include
>> BLAS_LIBS      = -lopenblas
>> SCALAPACK_LIBS = -lscalapack-openmpi
>> FFT_LIBS       = -lfftw3
>> 
>> Полную версию файла можно посмотреть здесь:
>> 
>> /mnt/pool/4/anikeev/thermopw/q-e-qe-7.3/make.inc
>> 
>> 4) Соберите QE с помощью make all
>> 
>> 5) Проверьте корректность линковки с библиотеками:
>> 
>> anikeev at tensor:/mnt/pool/4/anikeev/thermopw/q-e-qe-7.3$ ldd 
>> bin/thermo_pw.x
>>         linux-vdso.so.1 (0x00007ffeca4bf000)
>>         libscalapack-openmpi.so.2.2 =>
>> /lib/x86_64-linux-gnu/libscalapack-openmpi.so.2.2 (0x00007fcbf0e00000)

Ещё раз прошу прощения за опечатку, недостающая строка:
         libfftw3.so.3 => /opt/fftw-3.3.10/double/lib/libfftw3.so.3 
(0x00007f20de848000)

>>         libopenblas.so.0 => /lib/x86_64-linux-gnu/libopenblas.so.0
>> (0x00007fcbeeb18000)
>>         libmpi_mpifh.so.40 => /lib/x86_64-linux-gnu/libmpi_mpifh.so.40
>> (0x00007fcbf1419000)
>>         libgfortran.so.5 => /lib/x86_64-linux-gnu/libgfortran.so.5
>> (0x00007fcbee800000)
>>         libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 
>> (0x00007fcbee721000)
>>         libmvec.so.1 => /lib/x86_64-linux-gnu/libmvec.so.1 
>> (0x00007fcbee628000)
>>         libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1
>> (0x00007fcbf13f7000)
>>         libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 
>> (0x00007fcbee447000)
>>         liblapack.so.3 => /lib/x86_64-linux-gnu/liblapack.so.3
>> (0x00007fcbedc00000)
>>         libblas.so.3 => /lib/x86_64-linux-gnu/libblas.so.3 
>> (0x00007fcbee3e4000)
>>         libmpi.so.40 => /lib/x86_64-linux-gnu/libmpi.so.40 
>> (0x00007fcbedac1000)
>>         /lib64/ld-linux-x86-64.so.2 (0x00007fcbf3eec000)
>>         libopen-pal.so.40 => /lib/x86_64-linux-gnu/libopen-pal.so.40
>> (0x00007fcbee32d000)
>>         libquadmath.so.0 => /lib/x86_64-linux-gnu/libquadmath.so.0
>> (0x00007fcbeead1000)
>>         libopen-rte.so.40 => /lib/x86_64-linux-gnu/libopen-rte.so.40
>> (0x00007fcbeda05000)
>>         libhwloc.so.15 => /lib/x86_64-linux-gnu/libhwloc.so.15
>> (0x00007fcbed9a8000)
>>         libevent_core-2.1.so.7 =>
>> /lib/x86_64-linux-gnu/libevent_core-2.1.so.7 (0x00007fcbf13bd000)
>>         libevent_pthreads-2.1.so.7 =>
>> /lib/x86_64-linux-gnu/libevent_pthreads-2.1.so.7 (0x00007fcbf13b8000)
>>         libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 
>> (0x00007fcbee30e000)
>>         libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 
>> (0x00007fcbed97a000)
>> 
>> 5) Не забудьте повторно экспортировать переменные окружения в скрипте
>> запука задачи:
>> 
>> anikeev at tensor:~$ source /opt/fftw-3.3.10/double/customvars.sh
>> 
>>>> _6.2) Последовательное выполнение
>>>> следующих команд:_
>>>> _       MKDIR BUILD_
>>>> _       CD BUILD_
>>>> _       _CMAKE -DCMAKE_C_COMPILER=MPICC
>>>> -DCMAKE_FORTRAN_COMPILER=MPIF90 -
>>>> DCMAKE_INSTALL_PREFIX=/MNT/POOL/6/PAKULIAMIN/QE-7.3.1/
>>>> -DBLA_VENDOR=OPENBLAS -DQE_FFTW_VENDOR=FFTW3 ../
>>>> Получил следующую ошибку:
>>>> -- Configuring done
>>>> CMake Error at cmake/qeHelpers.cmake:185 (add_library):
>>>>   Cannot find source file:
>>>> 
>>>>     lib/freecad.f90
>>>> Call Stack (most recent call first):
>>>>   thermo_pw/CMakeLists.txt:43 (qe_add_library)
>>>> 
>>>> CMake Error at cmake/qeHelpers.cmake:185 (add_library):
>>>>   Cannot find source file:
>>>> 
>>>>     qe/ch_psi_all_tpw.f90
>>>> Call Stack (most recent call first):
>>>>   thermo_pw/CMakeLists.txt:350 (qe_add_library)
>>>> 
>>>> CMake Error at cmake/qeHelpers.cmake:185 (add_library):
>>>>   No SOURCES given to target: qe_tpw_lib
>>>> Call Stack (most recent call first):
>>>>   thermo_pw/CMakeLists.txt:43 (qe_add_library)
>>>> 
>>>> CMake Error at cmake/qeHelpers.cmake:185 (add_library):
>>>>   No SOURCES given to target: qe_tpw_qe
>>>> Call Stack (most recent call first):
>>>>   thermo_pw/CMakeLists.txt:350 (qe_add_library)
>>> 
>>> Файл freecad.f90 отсутствует в репозитории thermo_pw. Вероятно,
>>> система сборки cmake для thermo_pw в данный момент находится в
>>> нерабочем состоянии. По этому поводу можно обратиться к разработчикам
>>> thermo_pw.
>>> 
>>> Пример сборки апстримного QE-7.3.1  с последней версией Intel OneAPI
>>> через cmake:
>>> 
>>> anikeev at tensor:/mnt/pool/4/anikeev$ tar -xvzf q-e-qe-7.3.1.tar.gz
>>> anikeev at tensor:/mnt/pool/4/anikeev$ cd q-e-qe-7.3.1/external/
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/external$
>>> ./initialize_external_repos.sh
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/external$ cd mbd/
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/external/mbd$ git 
>>> pull
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/external/mbd$ git
>>> checkout 1c43285
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/external/mbd$ cd 
>>> ../../
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1$ mkdir build
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1$ cd build/
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/build$ cmake
>>> -DCMAKE_C_COMPILER=mpiicx -DCMAKE_Fortran_COMPILER=mpiifx
>>> -DCMAKE_INSTALL_PREFIX=/mnt/pool/4/anikeev/qe -DQE_ENABLE_MPI=ON
>>> -DQE_ENABLE_OPENMP=OFF -DBLA_VENDOR=Intel10_64lp_seq
>>> -DQE_FFTW_VENDOR=Intel_DFTI -DQE_ENABLE_SCALAPACK=ON
>>> -DCMAKE_C_FLAGS:STRING=-xCORE-AVX512
>>> -DCMAKE_Fortran_FLAGS:STRING=-xCORE-AVX512 ../
>>> anikeev at tensor:/mnt/pool/4/anikeev/q-e-qe-7.3.1/build$ make VERBOSE=1
>>> 
>>>> Подскажите, в чем может быть моя
>>>> ошибка и как мне следует действовать
>>>> чтобы установить дополнительный
>>>> модуль ThermoPW?
>>>> 
>>>> С уважением, Кулямин П.А.
>>>> 
>>>> Аспирант 3 курса НИЯУ МИФИ
>>>> 
>>>> Кафедра № 67 "Физика конденсированных
>>>> сред"
>>>> 
>>>> Научный руководитель: Маслов М.М.
>>>> 
>>>> Тел:8-905-582-00-63
>>>> _______________________________________________
>>>> hpc mailing list
>>>> hpc at lists.mephi.ru
>>>> https://lists.mephi.ru/listinfo/hpc
>>> 
>>> --
>>> С уважением,
>>> ведущий инженер отдела UNIX-технологий НИЯУ МИФИ,
>>> к.ф.-м.н.,
>>> Аникеев Артем.
>>> e-mail: anikeev at ut.mephi.ru
>>> тел.: 8 (495) 788-56-99, доб. 8998
>> 
>> --
>> С уважением,
>> ведущий инженер отдела UNIX-технологий НИЯУ МИФИ,
>> к.ф.-м.н.,
>> Аникеев Артем.
>> e-mail: anikeev at ut.mephi.ru
>> тел.: 8 (495) 788-56-99, доб. 8998
>> 
>> _______________________________________________
>> hpc mailing list
>> hpc at lists.mephi.ru
>> https://lists.mephi.ru/listinfo/hpc
> 
> --
> С уважением,
> ведущий инженер отдела UNIX-технологий НИЯУ МИФИ,
> к.ф.-м.н.,
> Аникеев Артем.
> e-mail: anikeev at ut.mephi.ru
> тел.: 8 (495) 788-56-99, доб. 8998
> 
> _______________________________________________
> hpc mailing list
> hpc at lists.mephi.ru
> https://lists.mephi.ru/listinfo/hpc

--
С уважением,
ведущий инженер отдела UNIX-технологий НИЯУ МИФИ,
к.ф.-м.н.,
Аникеев Артем.
e-mail: anikeev at ut.mephi.ru
тел.: 8 (495) 788-56-99, доб. 8998



More information about the hpc mailing list