Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 주식
- 접근제어자
- 금리인상
- 배당성장
- 오버라이딩
- 인플레이션
- 그리디 알고리즘
- 백준
- StringBuffer
- etf
- XLF
- 무디스
- 기업분석
- Java
- 미국주식
- 자바
- 잉여현금흐름
- FCF
- mco
- 제태크
- 객체지향
- 주린이
- javascript
- 알고리즘
- 다형성
- object
- S&P500
- 프로그래머스
- 금리인하
- 현금흐름표
Archives
- Today
- Total
오늘의하루
CPU-bound와 I/O-bound 작업의 병렬 처리 본문
CPU - Bound 작업
CPU-Bound 작업은 CPU 연산 능력이 성능에 영향을 주는 작업입니다.
이런 작업은 병렬 처리를 통해 성능을 향상시킬 수 있습니다.
이유는 각 Thread는 독립적으로 CPU 자원을 사용하여 작업을 처리하기 때문입니다.
하지만 실제 CPU 코어 수를 초과하는 Thread 개수를 사용하는 경우 성능에 악영향을 초래할 수 있습니다.
I/O - Bound 작업
I/O-Bound 작업은 입출력 연산 능력이 성능에 영향을 주는 작업입니다.
이런 작업은 디스크 or 네트워크 속도에 의해 결정되기 때문에 Thread 수를 증가해도 성능 향상이 제한적입니다.
또한 각 스레드가 I/O가 작업이 완료될 때까지 대기하는 병목현상이 발생하여 Thread 관리 오버헤드가 발생할 수 있습니다.
성능 향상을 위해 병렬처리를 할거라면 해당 작업이 CPU-Bound인지 먼저 확인해야 합니다.
'JAVA' 카테고리의 다른 글
[스레드 안전성을 위한 선택] synchronized, ReentrantLock, ReentrantReadWriteLock 비교 (0) | 2024.09.24 |
---|---|
[Test Code] Mockito를 활용한 랜덤 값 포함 함수 유닛 테스트 (0) | 2024.05.23 |
Java Stream이란? feat. 메모리 로드, 병렬 처리, 연산 흐름 (0) | 2024.05.23 |
AOP - java.lang.ClassCastException (0) | 2024.02.23 |
Type safety: Unchecked cast from ~ (0) | 2024.02.16 |
Comments