장바구니 담기 close

장바구니에 상품을 담았습니다.

Cilk Plus(실크 플러스) C/C++ 확장 차세대 병렬 프로그래밍

Cilk Plus(실크 플러스) C/C++ 확장 차세대 병렬 프로그래밍

  • 정영훈
  • |
  • 프리렉
  • |
  • 2012-08-25 출간
  • |
  • 392페이지
  • |
  • 188 X 254 X 30 mm /950g
  • |
  • ISBN 9788965400318
판매가

28,000원

즉시할인가

25,200

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
25,200

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

손바닥만 한 스마트폰에서도 멀티 코어가 기본이 되어 가는 요즘, 병렬 프로그래밍은 개발자에게 더는 선택이 아닌 필수가 되어가고 있습니다. 하지만 병렬 프로그래밍은 여전히 어려워서 배우기 쉽지 않습니다.
이 책은 C, C++ 확장 언어인 Cilk Plus를 다루고 있습니다. Cilk Plus는 C, C++ 차세대 병렬 프로그래밍 언어로서 사용이 매우 쉽고, 성능 또한 뛰어납니다.
기본적인 프로그램 문법만 알고 있다면, 병렬 프로그래밍이 낯선 프로그래머라도 이 책을 통해 Cilk Plus를 쉽게 배우고 실무에 활용하여 자신이 개발한 프로그램이 멀티 코어 환경에서 최고의 성능을 내도록 할 수 있습니다

■이 책의 구성
이 책은 다루는 내용에 따라 네 부분으로 나누어집니다.

Part 1 Cilk Plus 병렬 프로그래밍 개요
1장에서는 CPU의 변화를 통해 병렬 프로그램을 해야만 하는 이유를 설명하고 있습니다. 2장에서는 Cilk Plus의 설치와 간단한 사용법을 설명하고 있으며, 3장에서는 Cilk Plus가 가진 특성 및 동작 원리를 설명합니다.

Part 2 Cilk Plus의 사용
4장에서 9장까지는 Cilk Plus의 키워드와 리듀서, 배열 표기법을 설명합니다. 4장에서는 spawn의 개념과 cilk_spawn 키워드의 사용법을 설명하고, 5장에서는 for 문을 병렬 처리로 바꾸는 cilk_for 키워드를 설명합니다. 6장에서는 동기화 객체인 cilk_sync를 다루고, 7장은 여러 개의 스레드에서 공유되는 변수를 제어하는 리듀서를 설명합니다. 8장에서는 백터화 기법인 배열 표기법을 다루고, 9장에서는 Cilk Plus의 상태를 확인할 수 있는 런타임 함수를 설명합니다.

Part 3 Cilk Plus의 활용
10장과 11장에서는 Cilk Plus를 활용한 프로그램의 최적화와 활용 예제에 대해서 설명합니다. cilk_spawn과 cilk_for를 이용하여 프로그램을 최적화하는 방법과 간단한 이미지 프로세싱을 이용하여 Cilk Plus의 성능을 알아봅니다.

Part 4 병렬 프로그램의 디버그
12장에서는 병렬 프로그램에서 다양하게 나타날 수 있는 버그의 유형과 해결 방법에 대해서 설명합니다. 13장에서는 디버깅 도구를 이용하여 좀 더 쉽게 디버그하는 방법과 성능 향상을 위해 튜닝하는 방법을 설명합니다.

목차

1장 병렬 프로그래밍 개요
01. 병렬지향으로
02. 병렬 처리와 병행 처리
03. 공짜 점심의 시대와 싱글 코어 시대의 쇠퇴
04. 병렬 처리 구분과 병렬 프로그램 시대
05. 병렬 프로그램의 어려운 점
06. 암달의 법칙
07. 인텔 PBB 병렬 프로그램
08. 인텔 Cilk Plus의 역사와 배경
09. 너무나 쉬운 Cilk Plus

2장 Cilk Plus 준비하기
01. Cilk Plus 프로그래밍을 시작하기 전에
02. 인텔 Parallel Studio 평가판 설치하기
03. Visual Studio 2010에 설정하기
04. Cilk Plus 버전 확인
05. Cilk Plus의 간편성

3장 Cilk Plus 개요 및 동작 원리
01. Cilk Plus의 4개 구조
02. Cilk Plus의 특징
03. Cilk Plus의 병렬 모형
04. Cilk Plus의 콘셉트
05. Cilk Plus 실행 모델
06. 워크-스틸링
07. 순차적 프로그램, OpenMP, Cilk Plus의 성능 비교
08. 다른 병렬 언어와 관계
09. 순차적 프로그램의 Cilk Plus로의 병렬화 절차

4장 cilk_spawn 키워드
01. cilk_spawn 키워드의 의미
02. cilk_spawn 키워드와 스레드 풀링
03. cilk_spawn 키워드 사용법
04. cilk_spawn 키워드의 사용 및 주의사항

5장 cilk_for 키워드
01. cilk_for 키워드 사용법
02. cilk_for 키워드의 본체 구현
03. for 문에서 cilk_for와 cilk_spawn의 의미
04. for 문에서 cilk_spawn을 사용할 때 문제점
05. cilk_for의 작업 분할 크기
06. cilk_for의 조건과 제한

6장 cilk_sync 키워드
01. cilk_sync 키워드 사용법
02. 암묵적 cilk_sync
03. 예외 처리

7장 리듀서
01. 리듀서의 의미
02. Cilk Plus의 리듀서 특성
03. 리듀서 사용 방법
04. C++ 리듀서 라이브러리
05. C 리듀서 라이브러리
06. 리듀서의 동작 원리
07. 리듀서의 사용 예
08. 사용자 정의 리듀서

8장 배열 표기법
01. 배열 표기법이란
02. 배열 표기법 설정 옵션
03. 배열 표기법의 문법
04 배열 표기법의 배열 선언
05. 배열 표기법의 사용
06. 요소 함수
07. SIMD 프라그마

9장 런타임 함수
01. 런타임 함수
02. 그 외 런타임 함수
03. 환경 변수 설정
04. Cilk Plus 언어의 특성 요약

10장 Cilk Plus 프로그램 최적화
01. 순차 프로그램의 최적화
02. cilk_for 키워드의 위치
03 cilk_spawn을 이용한 재귀 호출
04. cilk_spawn 대신 cilk_for의 사용
05. 동적 메모리 할당
06. 그 외 최적화 방안

11장 활용 예제
01. 사용자 정의 리듀서
02. 하노이의 탑
03. 영상 처리
04. Cilk Plus를 활용한 영상 처리

12장 디버그
01. 데이터 경합
02. 데이터 경합의 해결
03. 록의 문제
04. 폴스 셰어링
05. Cilk Plus 병렬 프로그램 디버깅

13장 디버깅 툴 활용
01. 인텔 Parallel Studio 소개
02. 에러의 탐지: Inspector XE 2011
03. 성능 분석 : 인텔 Vtune Amplifier XE 2011
04. 인텔 Parallel Debugger의 사용

INDEX

저자소개

저자 정영훈은 『SIMD』, 『OpenMP』, 『CUDA 병렬 프로그래밍』의 저자이며, 멀티 코어 CPU의 성능을 100% 발휘할 수 있도록 해주는 병렬, 분산 컴퓨팅 방법과 도구에 관심이 많다.

도서소개

C, C++ 확장 언어인 Cilk Plus를 다루는 『Cilk Plus』. 이 책은 기본적인 프로그램 문법만 숙지하고 있다면, Cilk Plus를 쉽게 배우고 실무에 활용할 수 있도록 구성한 것이다. 직접 개발한 프로그램이 멀티 코어 환경에서 좋은 성능을 내는 방법을 마련해준다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.