Xây dựng hệ thống cá nhân trên máy chủ.

Khi sử dụng siêu máy tính, khi đó chủ yếu là môi trường linux. Các bạn sẽ phụ thuộc vào các biến môi trường cũng như các thư viện có sẵn và sử dụng chung. Điều này đôi khi thuận tiện, tuy nhiên đôi khi cũng khá bất tiện. Giả sử trên máy chủ có cài đặt OpenMPI với GCC để sử dụng chung. Tuy nhiên bạn lại cần sử dụng OpenMPI với ICC, khi đó sẽ khá bất tiện. Ở đây tôi sẽ hướng dẫn các bạn cài đặt một số phần mềm và thư viện cá nhân phục vụ cho tính toán khoa học vật liệu. Điều này với tôi là khá cơ động, vì tôi chỉ cần phần cứng của máy chủ mà không phụ thuộc và môi trường phần mềm.

Các phần mềm tôi cài đặt ở đây bao gồm Intel Compilers, OpenMPI và Quantum Espresso, có thể một số phần mềm khác nữa tôi sẽ cập nhập ở đây.

Intel Compilers

Phần cài đặt Intel Compilers là khá dễ dàng nên tôi không đề cập ở đây, tôi chỉ tập trung vào một vài thư viện toán học MKL.
Sau khi cài đặt Intel Compilers bạn chỉnh sửa biến môi trường bằng cách thêm đoạn sau vào file .barshrc

#INTEL COMPILERS
export PATH=/apps/intel/bin:$PATH
export LD_LIBRARY_PATH=/apps/intel/lib/intel64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/apps/intel/mkl/lib/intel64:$LD_LIBRARY_PATH

Hãy chú ý đường dẫn thư mục của bạn, có thể đường dẫn là khác nhau. Và mỗi khi tạo biến môi trường mới bạn cần logout ra khỏi hệ thống, sau đó đăng nhập vào lại.

Cài đặt FFTW

$ cd /apps/intel/mkl/interfaces/fftw3xf/
$ make libem64t compiler=intel

Tiếp theo thực hiện tương tự với fftw3xc, fftw2xc, fftw3xc.

Cài đặt BLAS95 và LAPACK95

$ cd /apps/intel/mkl/interfaces/blas95/
$ make libem64t compiler=intel FC=ifort

$ cd /apps/intel/mkl/interfaces/lapack95/
$ make libem64t compiler=intel FC=ifort

Lưu ý rằng bạn cũng có thể tuỳ chọn cài đặt BLAS95 và LAPACK95 với GCC bằng cách sử dụng FC=gfortran.

OpenMPI

$./configure CC=icc CXX=icpc F77=ifort FC=ifort LDFLAGS="-shared-intel" --prefix=/apps/openmpi --with-wrapper-ldflags=-m64 --with-wrapper-fcflags=-m64 --with-wrapper-cxxflags=-m64 --with-wrapper-cflags=-m64 --with-verbs=/usr --with-verbs-libdir=/usr/lib64 --enable-contrib-no-build=vt --with-pic --enable-shared --enable-mpi-thread-multiple
$make -j4
$make install

Sau khi cài đặt OpenMPI xong, bạn cũng cần phải thiết lập biến môi trường như sau:

#OPENMPI
export PATH=/apps/openmpi/bin:$PATH
export LD_LIBRARY_PATH=/apps/openmpi/lib:$LD_LIBRARY_PATH

Quantum Espresso

Khi cài đặt Q-E chú ý đến đường dẫn tới các thư viện cần phải chính xác (chú ý nên kiểm tra lại thư viện MKL của intel, vì các phiên bản khác nhau có thể tên các gói trong thư viện sẽ khác nhau đôi chút).

$./configure --enable-openmp --enable-parallel FFT_LIBS=/apps/intel/mkl/lib/intel64/libfftw2xc_double_intel.a LAPACK_LIBS=/apps/intel/mkl/lib/intel64/libmkl_lapack95_lp64.a
$make all

Sau đó bạn thiết lập biến môi trường

#QE
export PATH=/apps/espresso/bin:$PATH

Chạy chương trình Quantum Espresso với OpenMPI

$nohup mpirun -np 32 --hostfile ../host_file --mca btl self,openib pw.x <name_file.in >name_file.out &

Trên là ví dụ chạy song song Quantum Espresso với 32 CPU. Chú ý đường dẫn đến file host_file.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s