From T3_KR_KNU
(→Job submit) |
(→Task Kill) |
||
(60 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
=== 사전준비 === | === 사전준비 === | ||
− | <span style="color:#FF0000">[ 주의 : bash 기준으로 작성되었습니다. 아래 예제의 스크립트 중 자신의 shell에 맞는 스크립트를 사용하시면 됩니다. (ex: | + | <span style="color:#FF0000">[ 주의 : bash 기준으로 작성되었습니다. 아래 예제의 스크립트 중 자신의 shell에 맞는 스크립트를 사용하시면 됩니다. (ex: tcsh 사용자는 source /cvmfs/cms.cern.ch/cmsset_default.csh 을 활용) ]</span> |
=== cmssw가 설치되지 않았다면 === | === cmssw가 설치되지 않았다면 === | ||
− | $ set SCRAM_ARCH= | + | $ set SCRAM_ARCH=slc6_amd64_gcc493 ### 아키텍쳐를 설정합니다. |
+ | or | ||
+ | $ export SCRAM_ARCH=slc6_amd64_gcc493 | ||
+ | |||
$ source /cvmfs/cms.cern.ch/cmsset_default.sh ### CMS S/W 기본 설정을 로드합니다. | $ source /cvmfs/cms.cern.ch/cmsset_default.sh ### CMS S/W 기본 설정을 로드합니다. | ||
Line 11: | Line 14: | ||
$ mkdir work ### 자신이 원하는 작업디렉토리를 생성합니다. | $ mkdir work ### 자신이 원하는 작업디렉토리를 생성합니다. | ||
$ scramv1 list CMSSW ### 자신이 사용하고 싶은 CMSSW를 검색합니다. | $ scramv1 list CMSSW ### 자신이 사용하고 싶은 CMSSW를 검색합니다. | ||
− | $ scramv1 project CMSSW | + | $ scramv1 project CMSSW CMSSW_7_x_x ### 검색 결과 중 자신이 원하는 한 가지의 버전을 선택/설정합니다. (CMSSW_7_x_x 버전을 사용하도록 설정하는 명령어 입니다. 자동으로 해당 버전의 CMSSW 작업 폴더가 생성됩니다.) |
− | $ cd | + | $ cd CMSSW_7_x_x/src ### 생성한 작업 폴더로 이동합니다. |
− | + | $ scram b -j3 ### 컴파일 | |
− | $ | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
=== cmssw가 이미 설치 되어있다면 === | === cmssw가 이미 설치 되어있다면 === | ||
Line 25: | Line 23: | ||
$ source /cvmfs/cms.cern.ch/cmsset_default.sh | $ source /cvmfs/cms.cern.ch/cmsset_default.sh | ||
$ cmsenv | $ cmsenv | ||
− | |||
− | === 작업 설정 파일 | + | === crab3 시작 === |
− | $ vi crab3config.py | + | $ source /cvmfs/cms.cern.ch/crab3/crab.sh |
+ | # crab 3.3.1607 부터 crab.sh는 light 구현으로 사용환경을 오염(?)시키지 않습니다. 만약 새로운 환경설정파일이 문제을 일으킨다면 다음과 같이 옛날 파일을 사용할 수 있습니다. | ||
+ | $ source /cvmfs/cms.cern.ch/crab3/crab_standalone.sh | ||
+ | |||
+ | $ crab submit -c crab3config.py ### 실제 작업을 생성합니다. | ||
+ | $ crab status ### 작업 진행 상황을 수시로 모니터링 합니다. (CMS 데시보드에서는 보다 다양한 형태로 자신의 작업 상황을 조회할 수 있습니다. http://dashboard.cern.ch/cms/) | ||
+ | |||
+ | === 작업 설정 파일 === | ||
+ | |||
+ | crab 설정 파일을 생성합니다. | ||
+ | |||
+ | $ vi crab3config.py | ||
from WMCore.Configuration import Configuration | from WMCore.Configuration import Configuration | ||
config = Configuration() | config = Configuration() | ||
Line 45: | Line 53: | ||
config.section_('User') | config.section_('User') | ||
config.section_('Site') | config.section_('Site') | ||
− | config.Site.whitelist = [' | + | config.Site.whitelist = ['T3_KR_KNU'] |
− | config.Site.storageSite = ' | + | config.Site.storageSite = 'T3_KR_KNU' |
+ | 실행할 작업 명세 파일을 생성합니다 | ||
$ vi myConfig.py | $ vi myConfig.py | ||
import FWCore.ParameterSet.Config as cms | import FWCore.ParameterSet.Config as cms | ||
Line 60: | Line 69: | ||
process.out_step = cms.EndPath(process.output) | process.out_step = cms.EndPath(process.output) | ||
− | === | + | 설정파일과 관련해서 좀더 자세한 사항을 알고 싶다면 아래 문서를 참고하세요 |
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3ConfigurationFile CRAB configuration file] | ||
+ | |||
+ | === crab 명령어 === | ||
+ | ==== Task submit ==== | ||
* crab submit [--config/-c <CRAB-configuration-file>] | * crab submit [--config/-c <CRAB-configuration-file>] | ||
$ crab submit -c crab3config.py | $ crab submit -c crab3config.py | ||
+ | 작업을 submit 합니다. | ||
− | === | + | ==== Task Status ==== |
* crab status --dir/-d <CRAB-project-directory> | * crab status --dir/-d <CRAB-project-directory> | ||
$ crab status | $ crab status | ||
+ | |||
+ | 작업의 상태를 확인합니다. 아래 Dashboard Task Monitoring 에서 사용자 작업의 상태를 좀더 구체적으로 확인할 수 있습니다. | ||
* Dashboard Task Monitoring : http://dashb-cms-job.cern.ch/dashboard/templates/task-analysis/ | * Dashboard Task Monitoring : http://dashb-cms-job.cern.ch/dashboard/templates/task-analysis/ | ||
+ | |||
+ | ==== Task resubmit ==== | ||
+ | * crab resubmit --dir/-d <CRAB-project-directory> | ||
+ | $ crab resubmit -d crab_20220515_173023 | ||
+ | |||
+ | 작업을 다시 제출합니다. | ||
+ | |||
+ | ==== Task output retrieval ==== | ||
+ | * crab getoutput --dir/-d <CRAB-project-directory> [--jobids <comma-separated-list-of-jobs-and/or-job-ranges>] | ||
+ | $ crab getoutput -d crab_20220515_173023 | ||
+ | $ crab getoutput --jobids 1,7,102 | ||
+ | $ crab getoutput --jobids 25-115 | ||
+ | |||
+ | 결과 파일과 로그를 다운로드 합니다. | ||
+ | |||
+ | ==== Task Kill ==== | ||
+ | * crab kill -d <CRAB-project-directory> [--jobids <comma-separated-list-of-jobs-and/or-job-ranges>] | ||
+ | $ crab kill -d crab_20220515_173023 | ||
+ | $ crab kill --jobids 1,7,102 | ||
+ | $ crab kill --jobids 25-115 | ||
+ | |||
+ | 작업을 강제 중단시킵니다. | ||
+ | |||
+ | ==== CRAB commands에 대한 상세정보 ==== | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3Commands CRAB commands] | ||
+ | |||
+ | === Task monitoring for the analysis users === | ||
+ | [[Task_monitoring_for_the_analysis_users|Analysis 사용자를 위한 작업 모니터링 이용가이드로 가기]] | ||
+ | |||
+ | === 오류 발생시 대처 === | ||
+ | ==== 로크 찾기 ==== | ||
+ | * [https://t2-cms.knu.ac.kr/wiki/index.php/Task_monitoring_for_the_analysis_users#.EB.A1.9C.EA.B7.B8_.ED.99.95.EC.9D.B8 Dashboard Task Monitor에서 본인작업의 로그 찾기] | ||
+ | * Dashboard Task Monitor에서는 본인의 작업이 제출된 사이트들과 작업의 로그파일의 확인을 통하여 에러코드 및 오류가 발생하는 사이트를 확인할 수 있습니다. | ||
+ | * 코드에 문제가 없는데도 지속적으로 오류가 발생하는 사이트가 있다면 그 사이트는 다음번 작업 제출시 blacklist에 추가하여 제외해야합니다. | ||
+ | |||
+ | ==== 흔히 발생하는 오류 ==== | ||
+ | 흔히 발생하는 오류들에 대한 해결책이 정리되어 있습니다. | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3CommonErrors CRAB3 common errors] | ||
+ | |||
+ | ==== Exit Code 로 오류 원인 찾기 ==== | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_6_with_Fatal_Root_Erro Exit code 6 with Fatal Root Error] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_8001_with_MSG_w_Missin Exit code 8001 with %MSG-w Missing Dictionary] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_8020 Exit code 8020] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_10034 Exit code 10034] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_60302 Exit code 60302] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_60307 Exit code 60307] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_60317 Exit code 60317] | ||
+ | *[https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_70500 Exit code 70500] | ||
== crab2 사용자를 위한 안내 == | == crab2 사용자를 위한 안내 == | ||
Line 76: | Line 140: | ||
=== crab2 설정을 crab3로 변환해주는 툴 === | === crab2 설정을 crab3로 변환해주는 툴 === | ||
crab2cfgTOcrab3py [crab2confgiName.cfg] [crab3configName.py] | crab2cfgTOcrab3py [crab2confgiName.cfg] [crab3configName.py] | ||
+ | |||
+ | == CRAB Feedback & CMS Computing Manual == | ||
+ | * CRAB 사용시 발생하는 문제점 및 해결방법은 아래 사이트를 참조 | ||
+ | https://hypernews.cern.ch/HyperNews/CMS/get/crabFeedback.html | ||
+ | * CMS Computing Manual | ||
+ | https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBook | ||
== 참고 문서 == | == 참고 문서 == | ||
− | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrab CRAB online manual and tutorial] | + | |
− | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3ConfigurationFile | + | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrab CRAB online manual and tutorial] 아래 문서 리스트는 이 문서에서 발췌하였습니다. Crab에 대한 전반적인 내용이 정리되어 있습니다. |
− | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3Commands | + | |
− | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/ | + | === 초보자를 위한 문서 === |
− | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/Crab3DataHandling | + | |
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3CheatSheet Quickstart guide for CRAB3] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookCRAB3Tutorial CRAB tutorial (introductory)] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3AdvancedTutorial CRAB tutorial (advanced)] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3ConfigurationFile CRAB configuration file] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3Commands CRAB commands] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3UserFunctions CRAB user functions] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3AdvancedTopic CRAB Advanced topics] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3TipsAndTricks Tips and tricks about CRAB] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3FAQ CRAB3 frequently asked questions] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3CommonErrors CRAB3 common errors] | ||
+ | |||
+ | === 숙련자를 위한 문서 === | ||
+ | |||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/Crab3DataHandling Data handling in CRAB] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRAB3TaskFlow CRAB3 task flow] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/Crab3HtcondorStates CRAB3 job states] | ||
+ | * [https://twiki.cern.ch/twiki/bin/view/CMSPublic/CRABClientLibraryAPI CRAB3 client API] |
Latest revision as of 01:25, 17 May 2022
Contents
CRAB (CMS Remote Analysis Builder) Quick Start
사전준비
[ 주의 : bash 기준으로 작성되었습니다. 아래 예제의 스크립트 중 자신의 shell에 맞는 스크립트를 사용하시면 됩니다. (ex: tcsh 사용자는 source /cvmfs/cms.cern.ch/cmsset_default.csh 을 활용) ]
cmssw가 설치되지 않았다면
$ set SCRAM_ARCH=slc6_amd64_gcc493 ### 아키텍쳐를 설정합니다.
or
$ export SCRAM_ARCH=slc6_amd64_gcc493
$ source /cvmfs/cms.cern.ch/cmsset_default.sh ### CMS S/W 기본 설정을 로드합니다.
$ cd ~/ ### 자신의 홈디렉토리로 이동합니다. $ mkdir work ### 자신이 원하는 작업디렉토리를 생성합니다. $ scramv1 list CMSSW ### 자신이 사용하고 싶은 CMSSW를 검색합니다. $ scramv1 project CMSSW CMSSW_7_x_x ### 검색 결과 중 자신이 원하는 한 가지의 버전을 선택/설정합니다. (CMSSW_7_x_x 버전을 사용하도록 설정하는 명령어 입니다. 자동으로 해당 버전의 CMSSW 작업 폴더가 생성됩니다.) $ cd CMSSW_7_x_x/src ### 생성한 작업 폴더로 이동합니다. $ scram b -j3 ### 컴파일
cmssw가 이미 설치 되어있다면
# 환경 설정 $ cd CMSSW_7_2_1/src $ source /cvmfs/cms.cern.ch/cmsset_default.sh $ cmsenv
crab3 시작
$ source /cvmfs/cms.cern.ch/crab3/crab.sh # crab 3.3.1607 부터 crab.sh는 light 구현으로 사용환경을 오염(?)시키지 않습니다. 만약 새로운 환경설정파일이 문제을 일으킨다면 다음과 같이 옛날 파일을 사용할 수 있습니다. $ source /cvmfs/cms.cern.ch/crab3/crab_standalone.sh
$ crab submit -c crab3config.py ### 실제 작업을 생성합니다. $ crab status ### 작업 진행 상황을 수시로 모니터링 합니다. (CMS 데시보드에서는 보다 다양한 형태로 자신의 작업 상황을 조회할 수 있습니다. http://dashboard.cern.ch/cms/)
작업 설정 파일
crab 설정 파일을 생성합니다.
$ vi crab3config.py from WMCore.Configuration import Configuration config = Configuration() config.section_('General') config.General.transferOutputs = True config.section_('JobType') config.JobType.psetName = 'myConfig.py' config.JobType.pluginName = 'Analysis' config.JobType.outputFiles = ['outfileName.root'] config.section_('Data') config.Data.inputDataset = '/WplusToENu_CT10_13TeV-powheg-pythia8/Spring14miniaod-PU20bx25_POSTLS170_V5-v1/MINIAODSIM' config.Data.unitsPerJob = 500 config.Data.splitting = 'LumiBased' #config.Data.splitting = 'FileBased' config.Data.publication = False config.section_('User') config.section_('Site') config.Site.whitelist = ['T3_KR_KNU'] config.Site.storageSite = 'T3_KR_KNU'
실행할 작업 명세 파일을 생성합니다
$ vi myConfig.py import FWCore.ParameterSet.Config as cms process = cms.Process('Slurp') process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring()) process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(10) ) process.options = cms.untracked.PSet( wantSummary = cms.untracked.bool(True) ) process.output = cms.OutputModule("PoolOutputModule", outputCommands = cms.untracked.vstring("drop *", "keep recoTracks_*_*_*"), fileName = cms.untracked.string('outfileName.root'), ) process.out_step = cms.EndPath(process.output)
설정파일과 관련해서 좀더 자세한 사항을 알고 싶다면 아래 문서를 참고하세요
crab 명령어
Task submit
- crab submit [--config/-c <CRAB-configuration-file>]
$ crab submit -c crab3config.py
작업을 submit 합니다.
Task Status
- crab status --dir/-d <CRAB-project-directory>
$ crab status
작업의 상태를 확인합니다. 아래 Dashboard Task Monitoring 에서 사용자 작업의 상태를 좀더 구체적으로 확인할 수 있습니다.
- Dashboard Task Monitoring : http://dashb-cms-job.cern.ch/dashboard/templates/task-analysis/
Task resubmit
- crab resubmit --dir/-d <CRAB-project-directory>
$ crab resubmit -d crab_20220515_173023
작업을 다시 제출합니다.
Task output retrieval
- crab getoutput --dir/-d <CRAB-project-directory> [--jobids <comma-separated-list-of-jobs-and/or-job-ranges>]
$ crab getoutput -d crab_20220515_173023 $ crab getoutput --jobids 1,7,102 $ crab getoutput --jobids 25-115
결과 파일과 로그를 다운로드 합니다.
Task Kill
- crab kill -d <CRAB-project-directory> [--jobids <comma-separated-list-of-jobs-and/or-job-ranges>]
$ crab kill -d crab_20220515_173023 $ crab kill --jobids 1,7,102 $ crab kill --jobids 25-115
작업을 강제 중단시킵니다.
CRAB commands에 대한 상세정보
Task monitoring for the analysis users
Analysis 사용자를 위한 작업 모니터링 이용가이드로 가기
오류 발생시 대처
로크 찾기
- Dashboard Task Monitor에서 본인작업의 로그 찾기
- Dashboard Task Monitor에서는 본인의 작업이 제출된 사이트들과 작업의 로그파일의 확인을 통하여 에러코드 및 오류가 발생하는 사이트를 확인할 수 있습니다.
- 코드에 문제가 없는데도 지속적으로 오류가 발생하는 사이트가 있다면 그 사이트는 다음번 작업 제출시 blacklist에 추가하여 제외해야합니다.
흔히 발생하는 오류
흔히 발생하는 오류들에 대한 해결책이 정리되어 있습니다.
Exit Code 로 오류 원인 찾기
- Exit code 6 with Fatal Root Error
- Exit code 8001 with %MSG-w Missing Dictionary
- Exit code 8020
- Exit code 10034
- Exit code 60302
- Exit code 60307
- Exit code 60317
- Exit code 70500
crab2 사용자를 위한 안내
crab2 와 crab3의 차이점
crab2 설정을 crab3로 변환해주는 툴
crab2cfgTOcrab3py [crab2confgiName.cfg] [crab3configName.py]
CRAB Feedback & CMS Computing Manual
- CRAB 사용시 발생하는 문제점 및 해결방법은 아래 사이트를 참조
https://hypernews.cern.ch/HyperNews/CMS/get/crabFeedback.html
- CMS Computing Manual
https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBook
참고 문서
- CRAB online manual and tutorial 아래 문서 리스트는 이 문서에서 발췌하였습니다. Crab에 대한 전반적인 내용이 정리되어 있습니다.
초보자를 위한 문서
- Quickstart guide for CRAB3
- CRAB tutorial (introductory)
- CRAB tutorial (advanced)
- CRAB configuration file
- CRAB commands
- CRAB user functions
- CRAB Advanced topics
- Tips and tricks about CRAB
- CRAB3 frequently asked questions
- CRAB3 common errors