Programing

포크 : 재시도 : 리소스를 일시적으로 사용할 수 없음

lottogame 2020. 10. 17. 08:59
반응형

포크 : 재시도 : 리소스를 일시적으로 사용할 수 없음


컴퓨터에 Intel MPI Benchmark를 설치하려고했는데이 오류가 발생했습니다.

fork: retry: Resource temporarily unavailable

그런 다음 실행 ls하여 top명령 할 때이 오류를 다시 받았습니다 .

이 오류의 원인은 무엇입니까?

내 컴퓨터의 구성 :

Dell precision T7500
Scientific Linux release 6.2 (Carbon)

이는 일반적으로 파일 설명자가 부족하여 발생합니다.

시스템 총 파일 설명자 제한이 있으며, 명령에서 무엇을 얻습니까?

sysctl fs.file-nr

파일 설명 자의 수를 반환합니다.

<in_use> <unused_but_allocated> <maximum>

사용자 파일 설명자 제한이 무엇인지 알아 보려면 다음 명령을 실행하십시오.

sudo su - <username>
ulimit -Hn

사용자가 사용중인 파일 설명자 수를 확인하려면 다음 명령을 실행하십시오.

sudo lsof -u <username> 2>/dev/null | wc -l

이제 시스템 파일 설명자 제한 문제가있는 경우 /etc/sysctl.conf 파일을 편집하고 이미 존재하는 파일을 추가하거나 수정해야합니다. fs.file-max가있는 줄을 큰 값으로 설정합니다. 필요한 파일 설명자 수를 처리하고 재부팅하기에 충분합니다.

fs.file-max = 204708

또 다른 가능성은 너무 많은 스레드입니다. 스레드 풀을 사용하는 앱에 대해 테스트 하네스를 실행할 때이 오류 메시지가 나타납니다. 우리는 사용했었다

watch -n 5 -d "ps -eL <java_pid> | wc -l"

주어진 Java 프로세스 ID 내에서 실행중인 Linux 원시 스레드의 지속적인 수를 확인합니다. 약 1,000 회 (YMMV)를 기록한 후 언급 한 오류 메시지를 받기 시작했습니다.

참고 URL : https://stackoverflow.com/questions/12079087/fork-retry-resource-temporarily-unavailable

반응형