2017-01-09 7 views
1

적절한 해결책을 찾을 때까지 lockfile problem을 완화하려면 LSF에게 호스트 당 내 작업 중 하나를 넣도록 지시하고 싶습니다. -x flag은 내 직업이 호스트의 독점적 인 사용을 보장하지만 나는 이것을 필요로하지 않습니다. 나는 다른 사람들과 잘 공유하고 있습니다. 나는 나 자신과 공유하고 싶지 않습니다.호스트별로 내 작업 중 하나만 수행하고 다른 사람과 공유하려면 확인하십시오.

전체 호스트를 독점적으로 사용하지 않고도 최대 하나의 내 작업이 특정 호스트에서 실행되도록하려면 어떻게해야합니까?

답변

0

프로젝트를 기반으로 한 일반적인 제한을 사용할 수 있습니다. PER_HOST = all, JOBS = 1을 사용하십시오. 그런 다음 해당 프로젝트 이름에 작업을 첨부하십시오. LSF 관리자가이를 설정해야합니다.

기본적으로, bsub -P myproject ...로 작업을 제출 lsb.resources

Begin Limit 
NAME = mylimit 
PROJECTS = myproject 
PER_HOST = all 
JOBS=1 
End Limit 

이를 추가 할 수 있습니다.

LSF 관리자 액세스 권한이없는 경우. 그런 다음 똑같은 작업을 수행하는 다소 번거로운 방법은 host exclude feature을 사용하는 것입니다. bsub -Q "EXCLUDE(55)" ... 작업이 시작될 때 동일한 유형의 다른 작업이 실행중인 경우 코드 55로 종료하십시오. 그러면 LSF가 작업을 다시 대기열에 추가하고 해당 호스트를 작업 별 블랙리스트에 추가합니다. 종료 코드는 55가 아닌 다른 값일 수 있지만 special meaning to the shell의 종료 코드는 사용하지 마십시오.

+0

일반 사용자로 할 수 있습니까? 나는 행정 권한이 없다. – gerrit

+1

일반 사용자는 제한을 구성 할 수 없습니다. 일반 사용자를위한 옵션은 [호스트 제외 기능] (http://www.ibm.com/support/knowledgecenter/SSWRJV_10.1.0/lsf_admin/job_requeue_user_config.html)을 사용하는 것입니다. ('bsub -Q "EXCLUDE (55)"... "). 그 조금 kludgy지만, 작동합니다. 작업이 시작될 때 동일한 유형의 다른 작업이 실행중인 경우 코드 55로 종료하십시오. 그러면 LSF가 작업을 다시 대기열에 추가하고 해당 호스트를 작업 별 블랙리스트에 추가합니다. 종료 코드는 55가 아닌 다른 값일 수 있지만 [특별한 의미] (http://www.tldp.org/LDP/abs/html/exitcodes.html)와 함께 종료 코드를 사용하지 마십시오. –