
815
19
장
파이썬 동시성 모델
운터와 스택 포인터를 갱신해야 하는데, 그러면서
CPU
캐시가 무효화되거나 메모리 페이지를
스와핑하는 등 값비싼 부작용을 일으킬 수 있다.
19
20
장과
21
장에서는 파이썬에서의 동시성 프로그래밍을 더 자세히 다룬다.
20
장에서는 고수준
concurrent.futures
라이브러리를 사용해서 스레드와 프로세스를 관리하는 방법을,
21
장에
서는
asyncio
라이브러리 사용해서 비동기 프로그래밍하는 방법을 다룬다.
이 장의 나머지 부분에서는 다음 질문에 대한 답을 하고자 한다.
지금까지 설명한 제약 사항들이 있는데, 어떻게 파이썬은 다중코어 세상에서 번창하고 있는가?
19
.
7
멀티코어 세상의 파이썬
널리 인용되는 허브 서터
Herb
Sutter
의 글 ‘공짜 점심은 없다: 소프트웨어에서 동시성으로의 근본
적인 전환
The
Free
Lunch
Is
Over
:
A
Fundamental
Turn
Toward
Concurrency
in
Software
’(
https://fpy.li/19-29
)
을 생각해 보자.
인텔에서
AMD
,
Sparc
,
PowerPC
에 이르기까지, 주요 프로세서 설계 및 제조업체들은
CPU
성능을 향상하는 고전적인 접근 방식의 한계에 다다랐다. 클럭 속도와 순차 명령 실행 성능을
더 끌어올리는 대신, 하이퍼스레드와 다중 코어 ...