ALiS Installation
본 문서는 CC BY-SA 4.0 라이선스에 따라 자유롭게 사용할 수 있습니다.
원문: 공주대학교 나노물리연구실 이호석 교수님 (nano.kongju.ac.kr)
수정: 중앙대학교 물리학과 나노광학연구실 김영수(2024.08.27)
ALiS 설치하기
ALiS는 A Light Simulator의 약자로 공주대학교 나노물리연구실의 이호석교수님이 만든 FDTD (finite-difference time-domain) 시뮬레이션을 위한 C언어 라이브러리이다. 이 문서는 ALiS를 데비안 시스템에 설치하는 방법을 설명한다.
매번 서버실에 직접 가서 작업하는것은 불편하고 비효율적이므로, secure shell(SSH) 를 사용한 원격 접속이 일반적으로 활용된다.
ssh 프로토콜을 사용하여 계산용 리눅스 시스템에 접속하기 위한 몇몇 프로그램을 윈도우 시스템에 설치해야 한다.
터미널 프로그램에는 다양한 종류가 있으나, 개인적으로 추천하는것은 putty, mobaXterm 등이 있으며,
windows 10의 특정 버전 이상에서는 명령 프롬포트나 Powershell에서 ssh 명령으로 간단히 연결할 수 있다.
파일전송을 위해서는 SFTPdrive, RaiDrive등의 프로그램을 사용할 수 있다.
VisualStudio Code 를 이용하면, ssh 접속과 sftp를 통한 파일 제어가 동시에 가능하나 약간의 제약이 있으니 사용자 입맛에 맞게 사용하길 바란다.
1. 설치를 위한 준비
먼저, root 권한으로 git, make, gcc, libpng-dev, libhdf5-dev 등의 필요한 패키지를 설치한다.
$ sudo apt install make gcc libpng-dev libhdf5-dev
만약 시스템에 이미 필요한 패키지가 설치되어 있다면 위 과정은 건너뛰어도 된다. 설치 여부 확인을 위해서는 다음 명령을 사용한다.
$ apt list git make gcc libpng-dev libhdf5-dev
compute node에도 동일하게 같은 패키지들을 설치해준다.
$ sudo chroot /srv/nfs
# apt install make gcc libpng-dev libhdf5-dev
2. Master node 에 ALiS 설치하기
준비한 ALiS 소스 파일을 자신의 홈 디렉토리로 복사하고 압축을 해제한다.
$ tar -xzf alis.tar.gz
$ cd alis
alis 디렉토리 안에서 make를 실행한다.
$ make
~/.bashrc 파일에 다음 내용을 추가한다.
export PATH=~/alis/bin:$PATH
source ~/.bashrc를 실행하여 추가한 설정을 읽어들인 후 alis/examples 디렉토리로 이동하여 예제 파일이 잘 컴파일 및 실행되는지 확인한다.
$ source ~/.bashrc
$ cd examples
$ alis Dipole_PML
여기까지 진행하면, 유저 폴더에만 ALiS 를 설치했기 때문에 현재 유저만 ALiS를 사용할 수 있다.
따라서 모든 유저가 사용할 수 있도록 하기 위해 다시 alis 디렉토리 안으로 이동하여 다음과 같은 명령어를 사용한다.
$ sudo make install
이렇게 하면 master node의 모든 유저가 alis 를 사용할 수 있다.
상세한 내용은 alis/Makefile 의 내용을 참조하기 바란다.
3. Compute node 에 ALiS 설치하기
홈 폴더에 있는 alis 설치 소스를 /srv/nfs 에 복사한다.
$ sudo cp -r alis /srv/nfs/alis
chroot 명령을 사용하여 compute node의 root filesystem에 접근한 후, alis 폴더에 들어가서 다음과 같이 명령을 입력한다.
$ sudo chroot /srv/nfs
# cd alis
# make clean
# make
# make install
*** dex 등의 작업 분산 스크립트의 경우도 마찬가지로 /usr/bin, /nfs/srv/usr/bin 각각 두 곳에 복사해 두면 master 와 compute 노드 모두에서 사용할 수 있다.
*** master node의 패키지들은 되도록 업그레이드 하지 말것을 권장하며, 필수 보안패키지의 경우는 설치하되 계산 라이브러리에서 보안취약점이 발견되어 업데이트 해야하는 경우, 별도의 테스트 시스템을 거쳐서 업데이트를 하길 권장한다.
*** ALiS 설치 파일과 dex script는 연구실 NAS 폴더의 NPL/03_Utility&Program 에 위치해 있다.
*** 이호석 교수님께 받은 원본 파일의 경우 debian version 차이에 따라 발생한 Library linking에 문제로 인해 수정하였음(김영수).
*** 일반적인 경우 alis_mod_x86_64.tar.gz 를 사용하면 되며, RaspberryPi 혹은 Qualcomm Processor 등의 ARM 프로세서를 활용하는 경우 aarch64.tar.gz 로 되어있는 파일을 사용하여 설치한다.