책읽기
고성능파이썬(1)
NoelBird
2019. 4. 16. 09:45
이 책에서 다루는 내용들
1. 컴퓨터의 저수준 동작 방식을 이해하여 실제로 어떤 일이 일어나는지 알 수 있다.
2. 리스트와 튜플 - 기본적인 자료구조인 리스트와 튜플의 미묘한 의미적인 차이와 속도 차이
3. 사전과 셋 - 중요한 자료구조인 사전과 셋의 메모리 할당 전략과 접근 알고리즘
4. 이터레이터 - 이터레이터를 통해 데이터를 스트리밍하는 방법과 더 파이썬다운 코드를 작성하는 방법
5. 순수 파이썬의 방식의 접근 - 파이썬과 모듈을 효율적으로 사용하는 방법
6. 행렬과 numpy - numpy 라이브러리를 고수처럼 사용하기
7. 컴파일과 JIT - 빠른 처리를 위해 기계 코드로 컴파일하기, 프로파일링 결과 반영하기
8. 데이터를 효과적으로 옮기기 위한 동시적인 접근 방법
9. multiprocessing - 병렬 컴퓨팅을 위해 기본 라이브러리인 multiprocessing 모듈을 이용하는 다양한 방법, 효과적으로 numpy 행렬 공유하기, 그리고 프로세스 간 통신(IPC) 비용과 장점
10. 클러스터 컴퓨팅 - multiprocessing을 사용한 코드를 수정하여 로컬 또는 클러스터에서 실행하는 방법
11. 메모리 아껴 쓰기 - 비싼 컴퓨터를 구입하지 않고 대용량 문제를 풀기 위한 접근법
12. 현업에서 얻은 교훈 - 현업에서 고군분투했던 문제에서 얻는 교훈