SGE에서 사용자 당 최대 실행중인 작업 수를 어떻게 설정합니까?


9

우리는 SGE (Sun Grid Manager)를 사용하고 있습니다. 모든 사용자의 총 동시 작업 수에는 제한이 있습니다.

특정 사용자에 대해 동시에 실행중인 작업 수를 일시적으로 자발적으로 제한 할 수 있는지 알고 싶습니다.

예를 들어, 사용자 dave는 500 개의 작업을 제출하려고하지만 동시에 100 개를 초과하여 실행하지 않기를 원합니다. 예를 들어, 작업이 파일 시스템을 고수하는 많은 I / O를 수행한다는 사실을 알고 있기 때문에 (실제로 불행히도).

가능합니까?

답변:


9

을 사용하여 콤플렉스를 정의 할 수 있습니다 qconf -mc. 비슷 high_io하거나 원하는 것을 호출 하고 소모품 필드를로 설정하십시오 YES. 그런 다음 복합 값 qconf -me global으로 qconf -mq <queue name>설정 되거나 특정 대기열에있는 전역 구성 에서 high_io=500. 이제 사용자에게 원하는 -l high_io=1"토큰" 을 지정 하거나 지정 하도록 지시하십시오. 이렇게하면 동시 작업 수를 복잡한 값을 설정 한 모든 것으로 제한합니다.

이를 수행하는 다른 방법은 할당량을 사용하는 것입니다. qconf -arqs다음과 같은 할당량을 추가하십시오 .

 {
        name         dave_max_slots
        description  "Limit dave to 500 slots"
        enabled      true
        limit        users {dave} to slots=500
 }

답장을 보내 주셔서 감사합니다. 내가 처음 봤기 때문에 몇 가지 후속 조치 qconf. 첫 번째 제안과 관련하여 좀 더 명시적일 수 있습니까? "소모품"이란 무엇입니까? 언급 한 바와 같이 단순히으로 사용자에게 fo를 구성, 후 qsub-l high_io=1?
David B

1
기본적으로 컴플렉스는로 -l전환하여 작업에서 요청할 수있는 값의 리소스입니다 qsub. 컴플렉스를 소모품으로 설정하면 작업이 해당 컴플렉스를 요청할 때 사용 가능한 수가 줄어 듭니다. 따라서 대기열에 500 개의 high_io 콤플렉스가 있고 작업이 20을 요청하면 다른 작업에 480을 사용할 수 있습니다. 당신은 당신의 예에서와 같이 단지를 요구할 것입니다.
Kamil Kisiel

카밀 감사합니다. 투표 할 수 없어서 죄송합니다 (아직 평판이 충분하지 않음).
David B
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.