SIESTA 실행 방법 및 최적화 방안

SIESTA는 기본적으로 CPU를 기반으로 실행되는 프로그램이며, 단일 프로세스로 연산이 진행되어 큰 규모를 실행하는데 있어서는 병렬 실행이 필수적이다. 우선 SIESTA의 단일 프로세스 실행 방법을 본 후 병렬 프로세싱하는 법에 대해 알아보자.단일 프로세싱SIESTA에서 제공하는 기본 명령줄은 아래와 같다.siesta ch4.fdf > ch4.out관례적으로 fdf파일과 out파일의 이름은 동일하다고 한다.여기서 fdf파일의 역할은 시뮬레이션하고자 하는 구조를 담고 있는 파일이며, 각 원소에 대한 정보는 .psf로 저장한다. (ex - H.psf)또 실행 후 STDOUT으로 출력되는 값은 ch4.out에 저장이되며, 실행한 후 시뮬레이션과 관련된 정보 값들과 관련하여 많은 파일이 생성되므로 따로 찾아보..

SIESTA 빌드 방법

학부연구생 활동 중 신소재 공학과와 코워크를 진행할 일이 생겼다. 이를 위해 해당 프로그램을 빌드 및 실행을 진행하게 되어 방법을 정리해보고자 한다. SIESTA는 밀도 범함수 이론(DFT)기반 오픈소스 프로젝트이며 튜토리얼도 잘 작성되어 있지만 빌드 시 은근 신경쓸게 많기 때문에 아래의 옵션들을 따라 가면 빌드를 쉽게 할 수 있을 것이다. SIESTASIESTA(Spanish Initiative for Electronic Simulations with Thousands of Atoms) 는 밀도범함수이론(DFT)을 기반으로 분자·고체 전자의 거동을 계산-예측하는 오픈소스(GPL v3) 과학 계산 코드이자 방법론이다.공부를 진행하며 확인해보니 기반 언어는 포트란이지만, 구조를 시뮬레이션하고 이를 시각화 ..

riscv-gnu-toolchain 빌드

riscv-gnu-toolchain은 riscv 관련 컴파일이 필요한 경우 설치해야 하는 툴로 riscv software들을 사용하기 위해서 우선적으로 빌드해야하는 녀석이다. 빌드 과정에서.. 삽질을 많이 하였기 때문에 그 과정을 공유하고자 한다. How to buildgit clone https://github.com/riscv-collab/riscv-gnu-toolchaincd riscv-gnu-toolchainmkdir buildcd build../configure --prefix=/path/to/install/riscvmake딱히 특별할 것 없는 컴파일 방법이지만 QEMU를 같이 사용하기 위해 나는 아래와 같이 config 파일을 변경했다. ../configure --prefix=$RISCV --..