본문 바로가기
Reviews/읽자

[한빛리더스] 고성능 파이썬

by Jany 2016. 9. 2.
반응형

파이썬은 쉬운 접근성으로 인하여 생산성이 높은 언어의 대표로 많이 소개되는 편이다.


비 전공자들의 프로그래밍 입문으로도 많이 활용되며, 교육용으로도 많이 이용되고 있는 편이다. 


또한 코드가 간결하고 다양한 곳에서 활용하기 편하기 때문에 많이 사용하는 언어이다.


웹에서도 쓸수 있고 웹 이외에서도 사용할 수 있는 범용언어다.


들여쓰기를 활용하는 특별한 구조로 인해 코드를 읽기 쉽고 모양도 다른 언어에 비해서

덜 복잡한 편이다.


그러나 느리다고 정평이 나있는데, 예전 자료지만 참고했으면 좋겠다.


ruby, python, java, c 등의 여러 언어들의 성능 비교자료

http://www.timestretch.com/article/mandelbrot_fractal_benchmark


The Computer Language Benchmarks Game

http://benchmarksgame.alioth.debian.org/u64q/python.html


그리고 여러 블로그들을 참고 해보면,

스크립트 언어의 특성상 한줄한줄 작성하긴 편하기 떄문에 개발시간은 단축할 수 있지만,

그 한줄한줄 작성된 바이너리 코드를 해석하는 부분에서 시간을 잡아 먹는다고 한다.


C와 비교하면 대략적으로 100배 정도 차이 나는 듯 하다.


ps. 저렇게 오래걸리는 코드는 안짜니까 그냥 편한 Python 을 씁니다.^^;;


아무튼 이러한 여러가지 파이썬 이야기들이 있는데, 재미있는 미션 책이 나와서 선정하게 되었다.


바로 바로


파이썬에서는 감히 얘기할 수 없었던.


고.성.능!


바로 고성능 파이썬 이다.


고성능 파이썬
국내도서
저자 : 미샤 고렐릭(Micha Gorelick),이안 오스발트 / 오현석,김영근역
출판 : 한빛미디어 2016.08.10
상세보기


이 책은 감히 접근해본적도 없는 로우 레벨까지의 아키텍처를 찾아보며 최적화를 통해 성능을 높히고자 한다.


메모리를 어떻게 할당해야하는지, 그리고 가장 보편적으로 많이 쓰는 방법인

C언어로 컴파일하는 Cython 이라던지, pypy 라던지 일반적인 내용에 대해서는 이미 어느정도 접해본 부분이라 이해하기 쉬웠다.


결국 모든 처리의 기본은 IO 이기 때문에 그런 부분을 해소하기 위한 부분들이 많이 있었다.


단순 개발만 공부해보신 부분들은 좀 어려울수도 있다.


실제 클러스터 구축이라던지, 레디스 등의 활용은 언어만 공부하고자 하는 부분에서는 어려울 듯하지만,

이 책을 보는 구독자 층을 생각하면 크게 문제 되지 않을듯 하다.


책을 보면서 실제 이정도의 처리 성능이 필요한 개발이 있을까 싶긴 하지만,

파이썬으로도 이러한 고민들을 꾸준히 하고 있다는 데에 다시 한번 놀라움과 대단함을 표한다.


저를 비롯한 파이썬 쪼렙들에겐 엄청 어려울듯 하지만,

한번쯤은 경험해보고 싶은 부분이라서 좋은 경험이라고 생각한다.








반응형

댓글