Jump to content

Installing RTM Software on Linux/ko

From Appropedia

Radiative Transfer Modelling 소프트웨어는 재밌는 거야! 난해한 포트란 문서를 해독하는 건 정말 즐거운 시간이야. 그래서 내가 그 모든 재미를 망쳐놓고, (바라건대) 쉽게 만들어 줄게. 아니면 적어도 더 쉽게.

저는 Ubuntu 12.04를 새로 설치하여 듀얼 코어 64비트 AMD 프로세서에서 모든 것을 실행했습니다. 이 중 대부분은 다른 플랫폼과 Linux 기반 운영 체제에도 적용 가능합니다. 다른 유닉스 기반 시스템도 가능할 수 있습니다.

소프트웨어

  • RRTM , 대기 및 환경 연구소
  • SMARTS , Dr. Christian Gueymard의 햇빛의 대기 복사 전달에 대한 간단한 모델.
  • SBDART , 산타바바라 DISORT

대기 복사 전달.

시스템

  • VirtualBox OSE에서 실행되는 Ubuntu 12.04 64비트 https://www.virtualbox.org/wiki/Downloads (Windows 호스트이지만 호스트는 중요하지 않음)
  • Ubuntu OS에 할당된 2개의 프로세서 코어와 1.5GB 메모리

Fortran 컴파일러 설치

세 가지 RTM 프로그램은 모두 포트란으로 작성되었으므로 포트란 컴파일러가 필요합니다! 그리고 실제로 세 가지 다른 포트란 컴파일러를 만드세요. 왜냐하면 당신은 굉장하기 때문입니다.

fort77

SBDART는 FORTRAN77로 작성되었으므로 FORTRAN77 코드를 컴파일하는 컴파일러가 필요합니다. 농담이 아닙니다. Ubuntu에는 기본적으로 없으므로 설치해야 합니다.

  1. 이미 있는지 확인하세요! 터미널(ctrl-alt-t)을 열고 다음 명령을 입력하세요: f77 . 출력이 다음과 같다면:

그렇다면 아직 가지고 있지 않은 경우 다음 지침에 따라 진행하세요.

그럼 여기서는 이미 끝났습니다!

  1. 설치하세요! 터미널에 sudo apt-get install gfortran을 입력하세요.
  2. 프롬프트에 비밀번호를 입력하세요. 귀하의 계정이 컴퓨터에 대한 관리 권한을 가지고 있다고 가정합니다. Ubuntu를 직접 설치했다면 문제가 없을 것입니다. 다른 사람이 관리하는 컴퓨터를 사용하는 경우 해당 사람과 상의해야 할 수도 있습니다.
  3. 컴파일러를 다운로드하고 설치하려는지 확인하는 확인 메시지가 나타날 수 있습니다.

여전히 사실이라면 'Y'를 입력 하고 Enter를 누르세요. fort77(및 종속성)이 설치됩니다. 그게 다입니다. 네, Ubuntu에서 프로그램을 설치하는 건 최고예요.

gfortran

알아요? gfortran은 fort77과 똑같은 방식으로 설치됩니다!

  1. gfortran이 있는지 확인해 보세요
  2. 그렇지 않은 경우 sudo apt-get install gfortran을 설치하세요.

팔.

(팁: 기본적으로 리눅스에서 원하는 것은 모두 이런 방식으로 설치됩니다. SBDART는 Ubuntu 저장소에 없는 매우 알려지지 않은 소프트웨어이기 때문에 설치되지 않습니다. 하지만 놀라울 정도로 많은 양의 소프트웨어를 저장소에서 쉽게 구할 수 있습니다!)

PGILinux Fortran

gfortran이나 fort77로 RRTM을 컴파일하는 데는 운이 없었지만, 그들은 The Portland Group의 fortran 컴파일러를 위한 makefile을 가지고 있습니다. 무료는 아니지만 무료 체험 기간이 있습니다. 우리 목적에는 충분합니다. (나에게 메모: 내가 동의한 라이선스를 살펴보고 체험판 사용에 대한 추가 규정이 있는지 확인하세요...)

  1. PGI 계정을 만드세요 .
  2. 컴파일러를 다운로드하세요 . 저는 리눅스용 PGI Accelerator Fortran Workstation with Target 64-bit & 32-bit를 선택했습니다. 엄청납니다. 다운로드하는 동안 할 일을 찾으세요.
  3. 파일을 어딘가에 추출한 다음 터미널을 열고 거기로 이동합니다. 저는 홈 디렉토리에 pgi 라는 이름의 폴더에 추출 했기 때문에 터미널을 열고(ctrl-alt-t) cd ~/pgi를 입력해야 했습니다 .
  4. 설치 프로그램은 "루트 권한"으로 실행해야 하므로 명령 앞에 sudo를 넣어야 합니다 . sudo./install ... 비밀번호를 입력하세요...
  5. EULA가 터미널에 표시됩니다. 스페이스바를 눌러 페이지별로 아래로 이동하고, 만족스러우면 마지막에 있는 약관을 수락하거나 거부합니다.
  6. 수락했다고 가정하면, 이제 설치 유형을 선택할 수 있습니다. 네트워크 설치가 필요할 것 같지 않다면 첫 번째(숫자 1을 입력하여)를 선택하세요. 네트워크 설치는 이 문서의 범위를 벗어납니다.
  7. 기본 설치 디렉토리를 그대로 두고(다시 말하지만, 변경이 필요하다고 생각되면 제가 도와드릴 수 없으며 여러분이 이 문서를 쉽게 작성했을 수도 있습니다) Enter 키를 누릅니다.
  8. 저는 AMD 프로세서를 사용하고 있으므로 ACML을 설치하기로 했습니다. 제 운영 체제가 가상 머신에서 실행 중이기 때문에 실제로 작동할지 모르겠지만, 해가 되지는 않는 것 같습니다... 이건 여러분의 판단에 맡기겠지만, ACML에 대한 추가 라이선스 계약이 있다는 점은 알아두세요.
  9. 다음 화면은 ACML 버전에 대해 묻고 있었습니다. 저는 기본값으로 두었습니다(그냥 Enter를 쳤습니다)
  10. 저는 nvidia 비디오 카드도 가지고 있습니다(다시 말하지만, 가상 머신에 있기 때문에 이건 어차피 적용되지 않을 수도 있습니다). 그래서 CUDA도 설치하기로 했습니다. 정확히 뭔지는 모르겠어요... GPU를 사용해서 코드의 일부를 실행하는 건가요? 다시 말하지만, CUDA에 대한 또 다른 라이선스 계약이 있습니다.
  11. OpenACC 드라이버도 설치했습니다. OpenACC 사이트는 다운되었지만, 위키피디아 페이지 에는 병렬 컴퓨팅에 대한 내용이라고 나와 있어서, OpenMP를 그 목적에 맞게 사용할 것 같지만, 그래도 설치하기로 했습니다. 아시나요? 동의해야 할 라이선스가 또 하나 있습니다!
  12. 자바, 저는 '예'를 선택했습니다. 그리고 제가 이 컴파일러를 받는 것은 이미 만들어진 프로그램을 한 번만 컴파일하기 위한 것이고 2주 후에 만료된다는 것을 기억하기 시작했습니다. 다른 라이센스를 수락하세요.
  13. 안녕하세요, 마침내 설치가 시작되었습니다!
  14. 2012 디렉토리에 링크를 업데이트/생성하시겠습니까? (y/n) y를 선택했습니다.
  15. 그러면 내가 동의한 모든 불필요한 프로그램이 설치됩니다...
  16. MPICH1을 설치하시겠습니까? (y/n) 이미 모든 것을 설치 중이므로 y
  17. 원격 실행 방법? (rsh,ssh) ssh
  18. 설치 디렉토리의 파일을 읽기 전용으로 설정하시겠습니까? (y/n) y

축하하다!

그리고 테스트해보세요

아니이이이이

당황하지 마세요, bash는 아직 어디서 찾아야 할지 모릅니다. 절대 경로로 시도해 봅시다:

좋아요, 이제 축하할 때가 됐습니다.

저는 그 디렉토리를 PATH에 추가하거나 그런 건 하지 않기로 했습니다. 이 빌드에만 필요하거든요. 그럼 끝!

아니, 사실은 그렇지 않아요. 우리는 라이센스 파일을 가져와야 해요.

터미널을 열고 ifconfig eth0 을 입력하여 호스트 ID를 얻으세요 . 내 출력은 다음과 같습니다.

필요한 것은 HWaddr 부분인데, 제 경우에는 00:0c:29:30:4c:1e 입니다. 해당 코드를 가까이 두고 https://www.pgroup.com/license/trialkey.php 로 이동 하여 복사합니다. "Save trial keys as a file on my computer"라는 링크가 있는 페이지가 나타납니다. 클릭하면 license.dat라는 파일을 저장할 수 있는 옵션이 표시됩니다. 저장합니다.

이제 올바른 위치로 옮기세요...

(sudo에 대한 비밀번호를 입력해야 할 수도 있습니다. /opt가 보호되어 있기 때문입니다)

그리고 이제 마침내, 마침내, 마침내, 우리는 거기에 있습니다. 끝났습니다.

SBDART 설치

코드 가져오기

SBDART 소스 코드를 받으세요 . 모두 하나의 파일에 있습니다. 해당 링크를 마우스 오른쪽 버튼으로 클릭하고 링크를 다른 이름으로 저장...을 클릭하거나 브라우저에서 열고 파일 -> 다른 이름으로 저장... 을 선택하세요. 편리한 곳, 예를 들어 데스크톱에 저장하세요. 아니면 더 나은 곳, 예를 들어 홈 디렉토리의sbdart 라는 폴더 안에 저장하세요 .

SBDART 컴파일

아직 터미널을 열지 않았다면 ctrl-alt-t를 눌러 터미널을 엽니다. sbdart 코드를 넣은 디렉토리로 이동합니다( 데스크톱에 저장했다면 cd ~/Desktop , 홈 디렉토리의 sbdart라는 폴더에 저장했다면 cd ~/sbdart ). 헷갈린다면 리눅스 터미널 기술을 좀 더 익혀야 할 수도 있습니다 .)

ls를 입력해서 올바른 장소에 있는지 두 번 확인하고 싶은데 , 올바른 디렉토리에 있다면sbdart.f가 반환될 것입니다 (다른 것도 나열되어 있을 수 있으니 sbdart.f가 있는지 확인하세요!).

sbdart를 컴파일하려면 다음 명령을 입력하세요.

터미널에 매우 빠르게 몇 백 줄의 내용을 출력한 다음, 몇 분 후에 프롬프트로 돌아갑니다. 디렉토리 목록을 다시 가져와서 제대로 작동하는지 확인합니다( ls ). 이제 sbdart sbdart.f가 표시되면 완료입니다!

SMARTS 설치

SMARTS는 SBDART보다 실행하기가 조금 까다롭습니다(소스 코드는 SBDART처럼 단일 파일이 아닙니다!). 하지만 여전히 매우 간단합니다.

코드를 받으세요

먼저 NREL에 등록 해야 합니다 . 그들은 소스를 다운로드하기 위한 사용자 이름과 비밀번호를 이메일로 보낼 것입니다.

그러면 여기에서 코드를 가져올 수 있습니다 . 이 글을 쓰는 시점에서 현재 버전은 2.9.5이며, 3MB.tar.gz 파일로 리눅스에서 사용할 수 있습니다.

시작하세요

해당 파일을 어딘가에 추출합니다. 예를 들어 홈 디렉토리에smarts 라는 새 폴더를 만듭니다 .

실행 파일을 실행 파일로 만들어 보세요!

SMARTS를 추출한 후, 프로그램을 실행할 수 없다는 것을 알게 되었습니다. 제 시도는 다음과 같습니다.

기괴하네요. 거기에 있어요 -- ls 로 볼 수 있어요 . ll은 실행 가능하게 설정되어 있어서 chmod +x smarts295를 해도 효과가 없었어요. 왜 안 되는지 모르겠지만, 소스 코드를 주니까 gfortran 컴파일러(위 참조)를 가져와서 시작해요!

Source_code 디렉토리로 이동합니다. 저에게는 그게 의미했습니다.

엮다

몇 분 안에 완료될 것입니다. 새 실행 파일을 Source_code 폴더 밖으로 다시 옮기세요.

한 단계 더 올라가서 시도해 보세요...

숨을 참으세요..../smarts

만세! 끝났어요. 제대로 작동하는 것 같아요!

RRTM 설치

RRTM에는 네 가지 버전이 있습니다. 여기에서 볼 수 있듯이 요. 우리는 단파 버전과 독립형 모델, 즉 RRTM_SW를 원했습니다. 왼쪽 프레임의 코드 및 예제 링크를 통해 코드를 가져오세요. 해당 페이지로 직접 연결되는 링크는 다음 과 같습니다(프레임이 없으므로 해당 링크는 모든 페이지 탐색을 잃습니다).

소스 코드와 메이크파일을 가져오세요. 그들은 당신의 이메일 주소, 이름 등을 묻습니다. 만약 당신이 정말로 그 정보를 내놓고 싶지 않다면, 그들은 필드를 검증하지 않습니다(당신은 그냥 a, b, c를 입력할 수 있습니다. 하지만 친절하게 하세요).

어딘가에 그 아카이브를 추출합니다. 홈 디렉토리에 (맞춰보셨죠) rrtm 이라는 새 폴더를 만들었습니다 .

해당 makefile을 사용하려면 해당 makefile을 한 단계 위로 복사하세요.

이 시점에서 PGLinux Fortran 컴파일러를 설치했는지 확인하세요. 이 문서의 몇 가지 섹션을 참조하여 도움을 받으세요.

기억하시겠지만, bash는 우리가 설치한 후 실행 파일 pgf90을 어디에서 찾아야 할지 몰랐고, 그 문제를 해결하지 않았기 때문에 makefile을 편집하는 것이 더 쉽습니다. gedit에서 열어보죠:

이제 FC = pgf90CDOTO = $(PLATFORM)_$(FC)_dbl.o 라고 적힌 줄을 찾으세요 .

각각 FC = /opt/pgi/linux86-64/12.4/bin/pgf90CDOTO = $(PLATFORM)_pgf90_dbl.o 로 변경합니다 .

그리고 마지막으로....

우와아아아아아아아아아아아아아아!!!! 이제 축하할 시간이에요.

15px-FA_info_icon.svg.png19px-Angle_down_icon.svg.png페이지 데이터
저자필립 슐라이하우프
특허저작권: CC-BY-SA-3.0
언어영어 (en)
관련된0개의 하위 페이지 , 2개의 페이지가 여기에 링크되어 있습니다
영향1,448 페이지 뷰 ( 더 보기 )
생성됨2012년 5월 14일 필립 슐라이하우프
마지막 수정2023년 2월 6일 Felipe Schenone 작성
Cookies help us deliver our services. By using our services, you agree to our use of cookies.