티스토리 뷰

반응형

부하량이란 work load, cpu load, CPU의 스케줄링 상태를 보통 이야기한다. (ForGround,BackGround, Idle(x))

5초마다 커널은 실행 가능 및 중단되지 않는 상태의 프로세스 수를 기반으로 현재 부하 수치를 수집합니다.

Kernel(5s)(Count((all process)(scheduler_avilablility))) ;; 5s 마다 특정영역에 숫자를 갱신

 

# uptime ; 30~60min    ;; 실시간 정보가 아님.
# watch -n1 'uptime'   ;; 매 1초마다 uptime 명령어 실행


BSD(Unix): PROC.A: 0core (0~100, hold)                                     == CPU 100%
LINUX: PROC.B: 0core(0~10), 11core(11~30), load 1이 되었다.  == CPU 100%

Load 1 = pCore(1) Util(100%)
        --> Linux Kernel 3.x -> 4, 5: Kernel Protect(95%)
        --> 1 1GHz, PROC.A~~ 300M last(700M): 
            100%쓴다 라고하면 보통은 시분할 영역이 거의 분할율이 1G대역 다 쓰고 있음
            스케줄러에서 계속 큐에 저장후 대기 상태
            1(1.3-130%, 1.8-180%....)을 넘어가는 것은 q에 대기 중인 상태를 모두 포함해서 나타나는 것이다.

top 명령어는 계산이 들어가기 때문에 cpu에 부하가 간다(+프로세스 갯수가 많으면 느림)-> 서버에서 적당하지 않다.
-> 쓸때는 s를 눌러서 수집 시간 단위를 정해주자
uptime을 자주 쓰되, 정확하게 볼때 top을 쓰자...

vmstat : 실시간에 가까운 정보

$ vmstat -S M       1           10    // 1초에 10번씩
            --     ---          ---
            unit   update time  count



[정리]
uptime: 실시간은 아님 -> top: 보기는 편하지만, 워크로드가 노음 
-> vmstat: 보기는 좀 불편하지만 io, cpu, mem 상황을 한번에 볼 수 있음.


$ ps aux vs. ps -ef           # 둘다 cpu여유가 있을때 사용
							  # -ef를 권장: 출력해주는 속도가 좀 더 빠르다.

$ ps -opid, uid cmd -ef         # cpu 여유가 없을 때, o 옵션을 이용해서 필요한 정보만



Mac이 워크로드가 높은 프로세싱에서는 힘들다.

** ULE vs CFS

https://www.usenix.org/system/files/conference/atc18/atc18-bouron.pdf

728x90
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함
250x250