cpu 왕창먹는 프로세스 만들기! [질문]
글쓴이: zhangyuan / 작성시간: 금, 2004/05/07 - 4:16오후
솔 5.8에서
테스트하고자 하는 프로세스를 뛰워놓구..
다른 dummy process를 실행해서
dummy가 cpu를 얼마큼이나 차지할때 테스트하는 프로세스가
죽는지를 체크하고 있습니다..
해서 더미를
스레드 10개 생성해 놓구..
각 스레드에서는 poll로 일정시간을 기다리는 것으로의
반복으로만 이루어져 있습니다..
헌데. 테스트를 해보니까
점유율을 80%까지는 무난히 dummy가 차지를 하게 되는데..
그 이상은 넘어가지를 않습니다.
아무래도 커널쪽에 방해를 받아서 그런가 본데...
이거 어떻게 조치할수 있는 방법이 없을까요?
즉, 더미가 95% 정도까지 갈수 있게끔 하면 될것 같은데요...
nice 같은걸루 해서 스케쥴링도 바꿔봤지만 마찬가지네요..
도움 부탁드립니다. 꾸벅!
Forums:
스카시하드는 좀 그렇고.. IDE하드면.. 디스크에 1G짜리 파일 하나
스카시하드는 좀 그렇고.. IDE하드면.. 디스크에 1G짜리 파일 하나 만들고.. 그거 복사하고..... 뻘짓하는거라면.. CPU를 쉽게 점유할수 있지 않을까 싶네요.
단순히 CPU 점유율을 높일려면 수식 계산 코드를 계속 반복 시키면
단순히 CPU 점유율을 높일려면
수식 계산 코드를 계속 반복 시키면 될것 같은데요..
from saibi
[code:1]int main(void){
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
while(1) ;
while(1) ;
/***********************
* while(1) sleep(INFINITE);
***********************/
[quote="tifler"]while(1) ;[/quote]
저두 단순히 이렇게 하면 될줄 알았더니..
스레드 여러개 돌리는것보다 점유율이 낮더군요..
거의 30% 수준에서 머물러 있더라구요..
해서...이렇게 질문을 올렸던 겁니다..
답변 감사드립니다.
삶의 이탈을 꿈꾸며..
원하는 답은 아니지만....main() {while(1) fork()
원하는 답은 아니지만....
main() {while(1) fork();}
연산이 들어가야 cpu 로드가 올라가요.
#include <unistd.h>
int main()
{
int i;
if (fork())
while (1)
i = i * i + i * 2;
else
while (1)
i = i * i + i * 2;
return 0;
}
아...네님의 말씀대로 연산을 넣어줬더니 되는군요.. 답변
아...네
님의 말씀대로 연산을 넣어줬더니 되는군요..
답변 감사합니다. ~!
삶의 이탈을 꿈꾸며..
댓글 달기