thread 최대 생성갯수
글쓴이: notunix / 작성시간: 월, 2004/03/29 - 5:44오후
스레드로 프로그램을 작성해보고 있는데요
p4에 512메가 redhat9.0인 컴퓨터인데요
이상하게 254개까지만 만들어지고 그 이상은 만들어 지지 않네요
ulimit -a 로 확인해보면
core file size (blocks, -c) 0
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
max user processes (-u) 2047
그리고 /proc/sys/kernel/threads-max
여기서 확인해보면 4095 가 되어 있거든요
무조건 thread 를 만드는 프로그램을 컴파일해서
실행하면 254 개까지 만들어지고 그 이상은 안만들어지네요
그리고 두개 이상 실행해도 실행파일별로 254개 씩 만들어 지는데요
흠.... gcc 옵션을 줘야 할 것 같기도하고 .... 아시는 분의 도움을
부탁드립니다
Forums:
Stack 사이즈를 조정해보셔요..
Stack 사이즈를 조정해보셔요..
' 형식이 내용을 규정한다. '
[url]http://bbs.kldp.org/viewtopic.php?t
http://bbs.kldp.org/viewtopic.php?t=30361&highlight=256
답변 감사합니다
sisap 님 감사합니다 ( 제가 검색을 잘 못했나 봐요 이미 논의 됬었네요)
위에 적은 글 처럼 P4 ( 1 cpu ) 512 ram에서 는 255개 밖에
생성되지 않았는데요
PIII ( 2 cpu ) 512 ram 에서 ulimit 로 확인해보면 위에
컴과 같은 상태인데도 ( stack size 8192 ) PIII에서는
1000개 이상의 thread도 생성이 됩니다
P4에서는 stack size를 조절하면 1000이상이 생성되기는
하지만 PIII에서는 stack size를 조절하지 않아도 되는 걸로
봐서는 stack size 외에 다른 요인이 있는 것 같더군요
두개의 pc에서 모두 1000개 이상의 thread를 생성하는
데는 성공했습니다.
도움 주셔서 감사합니다.
작은 행복
댓글 달기