메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

고성능 파이썬

heoh***

|

2021-05-23

고성능 파이썬(2판)

자료구조별 특성부터 멀티코어·클러스터의 활용과 다양한 실무 노하우 등 ‘더 빠르고 확장성 있는 파이썬 개발에 필요한 고급 기법’을 다룬 책

  • 저자 : 미샤 고렐릭 , 이안 오스발트
  • 번역 : 오현석
  • 출간 : 2021-05-10

 

이 책은 파이썬의 성능 향상에 필요한 기법과 해결책을 다룬다. 성능상의 병목을 인지하여 더 빠르고 확장성이 뛰어난 해법을 구하는 실용적인 지침을 제공한다.

파이썬은 빠른 개발과 배포, 그리고 확장성 있는 시스템을 만드는 최적의 언어이다.

이 책의 대상독자는 파이썬을 충분히 사용해보았고, 특정 부분이 왜 느린지 생각해 본 적이 있으며, 이를 위한 해법으로 사이썬, 넘파이, PyPy 같은 기술들을 들어본 독자들이다 라고 한다. 그만큼 책의 내용이 상당히 어렵다.

 

이 책에서 다루는 내용은 다음과 같다.

 

· 컴퓨터의 저수준 동작 방식 : 내부적으로 어떤 일이 일어나는지 이해하기

· 리스트와 튜플 : 기본 자료구조인 리스트와 튜플의 미묘한 의미 차이와 속도 차이

· 사전과 셋 : 중요한 자료구조인 사전과 셋의 메모리 할당 전략과 접근 알고리즘

· 이터레이터 : 이터레이터를 통해 데이터를 스트리밍 하는 방법과 더 파이썬다운 코드를 작성하는 방법

· 순수 파이썬 방식의 접근 : 파이썬과 모듈을 효율적으로 사용하는 방법

· 행렬과 넘파이 : numpy 라이브러리를 고수처럼 사용하는 방법

· 컴파일과 JIT 컴퓨팅 : 기계어로 컴파일해 더 빠르게 처리하기, 프로파일링 결과에 따라 성능 개선 방향 정하기

· 동시성 : 데이터를 효과적으로 옮기는 방법

· 다중처리 : 병렬 컴퓨팅과 numpy 행렬을 효율적으로 공유하기 위해 기본 라이브러리인 mutiprocessing 모듈을 이용하는 다양한 방법, 프로세스 간 통신(IPC)의 비용과 장점

· 클러스터 컴퓨팅 : 연구나 프로덕션 시스템에서 다중 처리를 사용한 코드를 수정하여 로컬 또는 리모트 클러스터에서 실행하는 방법

· 메모리 아껴 쓰기 : 크고 비싼 컴퓨터를 구입하지 않고 대용량 문제를 해결하는 접근법

· 현업에서 얻은 교훈 : 현업에서 고군분투했던 문제에서 얻은 교훈을 통해 같은 문제를 겪지 않도록 예방하기

 

 

끝으로

이 책은 파이썬 3에 맞춰 내용을 보강한 개정판으로써, 처리할 데이터 용량이 큰 프로그램의 병목현상을 찾고 이를 해결해 성능을 향상시키는 다양한 방법을 알려준다. "현장에서 얻은 교훈"이라는 챕터는 대량의 데이터를 다루며 속도가 결정적인 상황에서 파이썬을 사용중인 여러 성공적인 기업의 사례들을 소개하면서 기술적인 선택뿐만이 아닌 그 과정에서 어렵게 얻은 지혜도 공유하여 여러가지 사례들을 통해 어떻게 성능을 개선하였고, 어떤 라이브러리들을 사용하였는지를 소개하였다

경험이 많은 파이썬 프로그래머라면 이 책을 통해 다양한 문제에 대한 구체적인 해결방법을 배울 수 있고, 머신러닝 분야에서 여러 기업이 겪은 이야기들도 엿볼수 있다.


닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?