| 000 | 00000cam c2200205 c 4500 | |
| 001 | 000045937924 | |
| 005 | 20180403164134 | |
| 007 | ta | |
| 008 | 180403s2016 ulka 001c kor | |
| 020 | ▼a 9788960778535 ▼g 94000 | |
| 020 | 1 | ▼a 9788960772106 (Set) |
| 035 | ▼a (KERIS)BIB000014065131 | |
| 040 | ▼a 211015 ▼d 222001 ▼c 211009 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 082 | 0 4 | ▼a 005.133 ▼2 23 |
| 085 | ▼a 005.133 ▼2 DDCK | |
| 090 | ▼a 005.133 ▼b P999 2016z19 | |
| 100 | 1 | ▼a Lanaro, Gabriele |
| 245 | 1 0 | ▼a 고성능 파이썬 프로그래밍 : ▼b 벤치마킹, NumPy, Cython, 병렬처리 기술을 사용한 / ▼d 가브리엘레 라나로 지음 ; ▼e 이우현 옮김 |
| 246 | 1 9 | ▼a Python high performance programming : ▼b boost the performance of your Python programs using advanced techniques |
| 260 | ▼a 서울 : ▼b 에이콘, ▼c 2016 | |
| 300 | ▼a 125 p. : ▼b 삽화 ; ▼c 24 cm | |
| 440 | 0 0 | ▼a acorn+PACKT technical book |
| 500 | ▼a 색인수록 | |
| 700 | 1 | ▼a 이우현, ▼e 역 |
| 900 | 1 0 | ▼a 라나로, 가브리엘레, ▼e 저 |
| 945 | ▼a KLPA |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 005.133 P999 2016z19 | 등록번호 121244080 (12회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
acorn+PACKT 시리즈. 이 책은 파이썬 프로그램을 최적화하는 다양한 방법을 소개한다. 간단한 입자 시뮬레이션을 단계적으로 작성하면서 코드를 벤치마킹 및 프로파일링해 성능을 정확히 분석하고, 비효율적인 코드 패턴을 찾아 Cython과 NumPy 코드로 대체해 프로그램 성능을 최적화하는 방법을 학습한다.
multiprocessing 모듈과 IPython parallel 패키지 등을 사용해서 프로그램의 주요 연산을 병렬화해 실행 속도를 대폭 향상하는 방법도 소개한다. 파이썬 프로그래머라면 반드시 알아야 할 기본적인 파이썬 프로그램 최적화 개념과 방법을 다루는 책이다.
벤치마킹을 통한 프로그램 성능 측정, 파이썬 프로파일링 도구를 사용해 코드의 병목 지점 검출, 파이썬 루프를 NumPy로 대체해 코드 실행 속도 향상, C 언어 급의 성능을 끌어내기 위해 Cython 사용, 멀티코어 프로세서를 활용한 코드 작성, 애플리케이션 프로파일링, 최적화, 재작성 등을 다루고 있다.
★ 요약 ★
이 책은 파이썬 프로그램을 최적화하는 다양한 방법을 소개한다. 간단한 입자 시뮬레이션을 단계적으로 작성하면서 코드를 벤치마킹 및 프로파일링해 성능을 정확히 분석하고, 비효율적인 코드 패턴을 찾아 Cython과 NumPy 코드로 대체해 프로그램 성능을 최적화하는 방법을 학습한다. multiprocessing 모듈과 IPython parallel 패키지 등을 사용해서 프로그램의 주요 연산을 병렬화해 실행 속도를 대폭 향상하는 방법도 소개한다. 파이썬 프로그래머라면 반드시 알아야 할 기본적인 파이썬 프로그램 최적화 개념과 방법을 다루는 책이다.
★ 이 책에서 다루는 내용 ★
■ 벤치마킹을 통한 프로그램 성능 측정
■ 파이썬 프로파일링 도구를 사용해 코드의 병목 지점 검출
■ 파이썬 루프를 NumPy로 대체해 코드 실행 속도 향상
■ C 언어 급의 성능을 끌어내기 위해 Cython 사용
■ 멀티코어 프로세서를 활용한 코드 작성
■ 애플리케이션 프로파일링, 최적화, 재작성
★ 이 책의 대상 독자 ★
이 책은 고성능 애플리케이션을 개발하는 중상급 파이썬 개발자를 위한 책이다. 대부분의 예제는 과학 연구 관련 애플리케이션에서 사용되는 코드로 빠른 수학 연산 처리가 필수인 과학자나 엔지니어에게 적합하다.
하지만 이 책에서 다루는 내용은 모든 분야에 적용될 수 있다. 기본 개념부터 상급 주제까지 다양한 내용을 다루기 때문에 대부분의 파이썬 개발자라면 누구에게나 도움이 될 것이다.
★ 이 책의 구성 ★
1장, '벤치마킹과 프로파일링'에서는 프로그램 내 최적화가 필요한 부분을 찾는 방법을 알아본다. 상황에 맞는 도구를 사용하고 프로파일링 결과를 분석 및 해석하는 방법을 학습한다.
2장, 'NumPy를 사용한 빠른 배열 처리'에서는 NumPy 패키지 사용 방법을 설명한다. NumPy는 배열 연산을 빠르게 처리하는 파이썬 프레임워크다. 사용법이 쉬우며 간결한 API를 제공하고 효율적으로 배열 연산을 수행한다.
3장, 'Cython'에서는 Cython 사용법을 소개한다. Cython은 파이썬과 C 언어 사이의 다리 역할을 하는 언어다. 파이썬의 상위 집합 언어며 파이썬 코드를 빠른 C 익스텐션으로 컴파일한다.
4장, '병렬처리'에서는 병렬 프로그래밍의 기본 개념을 살펴본다. 병렬과 직렬 프로그래밍의 차이를 설명하고 간단한 문제를 병렬 프로그램으로 작성해본다. multiprocessing과 IPython.parallel, cython.parallel을 사용해 멀티코어 프로세서를 활용하는 프로그램도 작성한다.
정보제공 :
저자소개
가브리엘레 라나로(지은이)
중대형 컴퓨터 시뮬레이션을 사용한 결정체의 형성과 성장 연구를 수행해왔다. 2017년 이론 화학에서 박사 학위를 취득했다. 머신 러닝과 수치 계산 시각화, 웹 기술에 관심사가 걸쳐 있다. 좋은 소프트웨어를 향한 열정을 갖고 있으며 오픈 소스 패키지인 chemlab, chemview의 저자다. 이 책의 초판인 『고성능 파이썬 프로그래밍』(에이콘, 2013)을 썼다.
이우현(옮긴이)
위스콘신대학교 매디슨과 서울대학교에서 컴퓨터 공학 학사와 석사 학위를 취득했다. 번역서로는 『그들은 어떻게 최고의 정치학자가 되었나』(후마니타스, 2012), 『고성능 파이썬 프로그래밍』(에이콘, 2016), 『파이썬 디자인 패턴 2/e』(에이콘, 2018)이 있다.
목차
1장. 벤치마킹과 프로파일링 __애플리케이션 디자인 __테스트와 벤치마크 작성 ____벤치마크 실행 시간 측정 __cProfile을 사용하여 병목지점 찾기 __line_profiler를 사용한 라인 프로파일링 __코드 최적화 __dis 모듈 __memory_profiler를 사용한 메모리 사용 프로파일링 __파이썬 코드 튜닝 팁 __요약 2장. NumPy를 사용한 빠른 배열 연산 수행 __NumPy ____배열 생성 ____배열 접근 ____브로드캐스팅 ____수학 연산 ____노름 계산 __NumPy를 사용하여 입자 시뮬레이터 개선 __numexpr를 사용한 성능 개선 __요약 3장. Cython __Cython 확장 모듈 컴파일 __정적 타이핑 ____변수 ____함수 ____클래스 __코드 공유 __배열 다루기 ____C 배열과 포인터 ____NumPy 배열 ____자료형이 지정된 메모리뷰 __Cython 입자 시뮬레이터 __Cython 프로파일링 __요약 4장. 병렬처리 __병렬 프로그래밍 __multiprocessing 모듈 ____Process와 Pool 클래스 ____몬테 카를로 원주율 ____동기화와 잠금 __IPython parallel ____direct 인터페이스 ____작업 기반 인터페이스 __OpenMP를 사용한 병렬 Cython __요약
