티스토리 뷰
개요
프로그램 실행시간을 알아보는 unix 명령어인 time 에 대해 알아보자
링크: https://www.wikiwand.com/en/Time_(Unix)#/Real_time_vs_CPU_time
링크: https://engineering.purdue.edu/ECN/Support/KB/Docs/UserTimeVsSystemTime
정리1
리눅스에는 user mode 와 kernel mode 가 있다.
user mode 는 사용자가 맘대로 할 수 있지만, kernel mode 는 system call 로면 접근할 수 있다.
user time: user mode 에서의 소요시간
system time: kernel mode 에서의 소요시간
정리2
그런데 실제 소요시간인 real time = user + system 이 아니다.
왜냐하면 OS 가 해당 프로그램만 돌리는게 아니고 다른 작업도 하기에 기다리는 시간이 소요되기 때문이다.
따라서 real >= user + system time 이다.
정리3
앗! 그런데 real time < user time 인 경우가 있다.
이것은 멀티코어, 혹은 멀티쓰레드에서는 user time 과 system time 을 * 쓰레드 개수 로 해서 출력해주기 때문이다.
→ 따라서, 헷갈리지 말고 real time 만 보면 된다.
반응형
'development' 카테고리의 다른 글
SSH Port Forwarding (4) | 2019.04.01 |
---|---|
x-mouse 로 windows 10 가상 데스크탑 활용하기 (1) | 2019.03.12 |
WSL meets ConEmu - start (0) | 2019.01.31 |
WSL 에서 vim update, 그리고, apt 가 뭐지? (0) | 2019.01.29 |
Mailvelope 로 PGP 이용해보기 (0) | 2018.08.08 |
반응형
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- strange
- OpenAI
- 2023
- 노션
- agile
- bun
- folklore
- notion
- 인텔리제이
- intellij
- golang
- postgres
- 잡학툰
- github
- API
- 체호프
- Shortcut
- 영화
- 클린 애자일
- 독서
- 독서후기
- ChatGPT
- websocket
- 제이펍
- go
- solid
- pool
- Bug
- JIRA
- Gin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함