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

한빛출판네트워크

Thinking About : CPU 최적화 프로그래밍 노트(기초편)

리얼타임 eBook

집필서

판매중

  • 저자 : 김안석
  • 출간 : 2014-06-30
  • 페이지 : 115 쪽
  • ISBN : 9788968486661
  • 초급 초중급 중급 중고급 고급
5점 (2명)
좋아요 : 36

당신이 만든 프로그램에 최적화를 더하라! 
프로그램 성능을 최적화하기 위한 노하우 시리즈


우리가 만든 프로그램이 성능이 낮고 비효율적일 때, 어떻게 하면 성능을 높일 수 있을지 고민하게 된다. 성능이 무엇보다 중요한 이슈라면, 성능 최적화를 위해 많은 시간과 노력을 투자할 것이다. 이 책은 프로그램의 성능을 어떻게 높여야 할지 고민하는 개발자를 위한 책이다.
프로그램 성능을 최적화하는 정석은 없다. 시스템 환경과 프로그램의 목표, 중점적으로 처리해야 할 사항, 정책에 따라 최적화하는 방법은 달라진다. 그래서 최적화가 어렵고 힘든 것이다. 이 책은 오랫동안 최적화란 주제를 고민하고 많은 실행착오를 거치면서 정리한 저자의 노하우가 담겨 있다. 이 책은 단순히 최적화하는 코드를 알려주는 것이 아니라, 최적화의 개념과 어떻게 하면 상황에 맞는 최적화를 할 수 있을지 그 개념과 원리를 알려 준다. 저자가 프로그램 최적화에 관해 고민하고 접근했던 순서대로 이야기를 풀어가므로, 최적화라는 어려운 주제를 쉽고 재미있게 따라갈 수 있을 것이다. 
이 책은 <기초편>, <심화편>, <명령어 정리편>으로 구성되어 있으며, 각 도서의 내용은 다음과 같다. 

 

① CPU 최적화 프로그래밍 노트 <기초편>
: CPU의 특성을 알아보고 최적화를 학습하기 위해서 알아야 할 기본적인 내용을 살펴본다. 

 

② CPU 최적화 프로그래밍 노트 <심화편>
: 예제를 통해서 최적화하는 방법을 살펴보고 64비트 환경에서는 어떻게 최적화하는지 알아본다.  

 

③ CPU 최적화 프로그래밍 노트 <명령어 정리편>
: 최적화하는 데 알아야 할 데이터 타입과 내장함수, 그리고 SSE 명령어를 살펴본다. 

 


대상 독자

  • 프로그램의 성능을 높이고 싶은 개발자
  • 3D 게임이나 MMORPG를 개발하는 PC/모바일 게임 프로그래머
  • 임베디드 장비용 소프트웨어를 개발하는 프로그래머

 

선배 개발자가 알려주는 프로그램 최적화 이야기 
IT 분야에 입문하여 시스템이나 프로그램을 만드는 동안, 누구나 한번은 최적화에 관해서 고민하게 된다. 자기가 만든 프로그램의 성능을 높이는 건 모든 개발자가 가지고 있는 욕심이자 고민이다. 그리고 이러한 고민을 선배 개발자에게 말하면, "최적화하려면 어셈블리어를 해야 한다", "최적화해 주는 전용 프로그램을 이용해서 코드를 변환해야 한다"라는 조언을 듣게 되는 데, 고가의 최적화 프로그래밍을 이용하기는 쉽지 않다. 
이 책은 최적화를 고민하는 개발자에게 어셈블리어를 이용하여 프로그램 성능을 최적화하는 방법을 알려준다. 최적화에 대한 단편적인 지식이나 방법보다는 최적화를 위한 기본 지식과 개념, 최적화 방법 등 최적화를 위한 근본적인 것들을 알려준다. 이번 <기초편>에서는 최적화를 이해하는 데 알아야 할 용어와 개념을 설명한다. <기초편>을 통해서 데이터가 어떻게 처리되는지, 어떤 명령어가 성능을 저하하는지 등 최적화를 위한 기본적인 내용을 익힐 수 있다.

김안석 저자

김안석

1990년대 초반 하이텔과 나우누리의 C/C++ 동호회들을 통해 프로그래밍에 입문하여 나우누리 Cezips 동호회 운영진으로 활동했다. 1998년 초반부터 PC 및 콘솔 게임 SW 개발 분야의 국내 IT 업계와 게임 업계에서 일하기 시작하여 현재에 이르기까지 현업 SW 개발자로 종사하고 있다. 최근에는 게임 SW 개발에 주력하고 있으며, uniFlow (삼성SDS:1999), FormXPress ACUBE(삼성SDS:2001)와 같은 일반 IT 프로젝트들 및 Kingdom Under Fire: The Cursaders(블루사이드/Xbox 2004), Ninety-Nine Nights(블루사이드/Xbox360 2006) 등의 게임 개발 프로젝트에 주로 참여했다. 여전히 콘솔 게임 개발에 매력을 느끼는 골수 게임 개발자로, 현재 UTPlus Interactive Inc.에서 스마트폰 게임을 개발 중이다.

Part 1. CPU 이해하기
1장 Latency와 Throughput 
1.1 Latency? Throughput? 


2장. 프로세서 파이프라인 


3장. 펜티엄 프로세서의 실행 유닛 


4장. 비순차 실행 코어 
4.1 하이퍼 스레딩과 멀티 코어 


5장. 데이터 병렬 처리
5.1 MMX란? 
5.2 SSE 예제 1 
5.3 SSE 예제 2 


6장. 캐시 
6.1 트레이스 캐시 
6.2 데이터 캐시 


7장. WC 메모리 
7.1 NonCache 예제 


Part 2. 최적화하기 위해 알아야 할 것들


8장 성능을 저하시키는 명령어 
8.1 수행시간이 긴 명령어 
8.2 재사용 대기시간이 긴 명령어 
8.3 준비가 안 된 인수 
8.4 명령어 처리 슬롯 부족 
8.5 직렬화 명령어 
8.6 성능을 저하시키는 명령어 사용 피하기 


9장 부동 소수점 
9.1 부동 소수점 데이터 처리 
9.2 부동 소수점 실행 환경 


10장 분기 구문 
10.1 분기의 종류 
10.2 개선된 분기 구문 
10.3 분기문의 예측 능력 향상시키기
10.4 CMOVcc 명령을 통한 분기문 줄이기 


11장 반복 구문 
11.1 단순한 반복문 
11.2 데이터 의존성 

이 책을 처음 한번 완독했을때는 ' 아 이거...너무 경험담만 적은게 아닐까?'  라는 생각이었습니다.

2번째 완독했을때 '아...정말 설명을 잘해주셨구나...' 그럼에도 기초와 심화 부분만 이해가 되어 그 부분만 다시 읽었습니다.

그 후 명령어들을 직접 써보고 싶어서 다른 SSE와 AVX 병렬 프로그래밍 코드 책들을 찾아보았지만 '절판', '번역 부실' 등으로 더 이상 볼 수 있는 책이 많지 않았습니다.

결국 다시 돌아와서 3번째 읽고 있는 지금  명령어 부분이 너무나 잘 설명 되어 있었고 '이렇게 쓰라고 적혀 있었던 거구나!' 를 새삼 느끼며 정독중입니다. 

 

이 책에서 Server 성능 향상에 대한 실마리를 얻은 독자로써 여러분에게 꼭 추천드립니다.

요즘 진행하는 프로젝트에 CPU최적화로 고민이 있었는데 많은 도움이 되었습니다.
책 잘 읽었습니다!

결제하기
• 문화비 소득공제 가능
• 배송료 : 0원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리얼타임 eBook 안내

PDF 형식으로 제공되며, 다운로드한 eBook은 PDF 포맷을 지원하는 디바이스 또는 프로그램에서 제한없이 열람할 수 있습니다. 또한 eBook 내의 텍스트 검색 및 인쇄도 가능합니다.

리뷰쓰기

닫기
* 도서명 :
Thinking About : CPU 최적화 프로그래밍 노트(기초편)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
Thinking About : CPU 최적화 프로그래밍 노트(기초편)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
Thinking About : CPU 최적화 프로그래밍 노트(기초편)
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

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

자료실