고성능 병렬화 핵심 가이드

멀티 코어와 매니 코어 프로그래밍 접근법

제임스 레인더스, 짐 제퍼스 저 / 나승주, 도종관, 이진필, 이창성, 이홍석 역

이 책은 동일한 프로그래밍 방법을 사용해서 프로세서와 코프로세서에서 어떻게 각각의 프로세서가 지닌 장점을 이용하는지를 보여주며, 인텔 제온 파이 코프로세서와 인텔 제온 프로세서 혹은 다른 멀티 코어 프로세서를 활용해서 시스템의 계산적 잠재력을 최대한 활용하기 위한 가장 효율적인 방법들을 제시한다. 


도서 상세

분야: [프로그래밍]

출간일: Jun 13, 2016

페이지: 624

도서정가: 34,965 원

ISBN: 9788993827019

N 초급 B 초/중급 능숙 C P 숙련 E 전문
부가 정보


출판사 서평

고성능 병렬 프로그래밍의 진수! 

실제 사례로 알아보는 멀티 코어와 매니 코어에서의 병렬 프로그래밍 

이 책은 인텔 제온 파이 제품들에 대한 최적의 프로그래밍을 포함해서 고수준의 병렬성을 훨씬 쉽게 사용할 수 있도록 할 것이다. 제온과 제온 파이 계열 사이의 공통적인 프로그래밍 방법론은 과학과 공학 커뮤니티 전체에 희소식이다. 동일한 프로그래밍은 멀티 코어와 매니 코어 양쪽 모두에 대해서 병렬 확장과 벡터화를 실현 가능하게 해준다.

동일한 프로그래밍 방법을 사용해서 프로세서와 코프로세서에서 어떻게 각각의 프로세서가 지닌 장점을 이용하는지를 보여주며, 인텔 제온 파이 코프로세서와 인텔 제온 프로세서 혹은 다른 멀티 코어 프로세서를 활용해서 시스템의 계산적 잠재력을 최대한 활용하기 위한 가장 효율적인 방법들을 제시한다. 

일반 산업계와 화학, 공학, 그리고 환경 분야와 같은 다양한 분야에서 얻은 성공적인 프로그래밍 노력이 담겨 있는 예제들을 다루고 있다. 여러 분야의 전문가들이 집필한 각 장마다 인텔 제온 파이 코프로세서와 멀티 코어 프로세서 양쪽 모두에서 고성능을 보여주면서 여기에 사용된 프로그래밍의 세부적인 설명을 다루고 있다. 많은 새로운 예제들과 ‘성공적인 사례‘를 보여주는 사례 연구들은 단순히 강력한 시스템의 기능을 보여주는 것 외에 이러한 차세대 이기종 시스템을 통해서 병렬성을 어떻게 이용하는지를 설명한다.

저자 소개

제임스 레인더스 : 산업계에서 병렬 프로그래밍의 사용을 늘리는 데 큰 역할을 했다. 그는 세계 최초의 TeraFLOP/s 슈퍼컴퓨터(ASCI Red)와 세계 최초의 TeraFLOP/s 마이크로프로세서(인텔 제온 파이 코프로세서) 개발 프로젝트를 진행했다. 고성능 프로그래밍과 관련된 몇 가지 다른 책을 집필했으며 [Intel Xeon Phi Coprocessor High Performance Programming]의 공저자이다.

짐 제퍼스 : 인텔 기술 컴퓨팅 그룹에서 수석 엔지니어이자 엔지니어팀의 관리자이다. 인텔의 기술 컴퓨팅 가시화 팀을 이끌고 있다. [Intel Xeon Phi Coprocessor High Performance Programming]의 공저자이다.


역자 소개

나승주 : 제어계측공학과에서 포트란 및 C를 배우고 이런 저런 조그마한 장비들을 만들어 갖고 놀기 위해 프로그램을 한 것이 프로그램의 전부다. 삼성전자 컴퓨터사업부에서 노트북을 개발하였으며 인텔에서 서버 개발 지원 엔지니어로 인텔에 입사하였으며, 이후 아시아 태평양 및 일본 지역 고성능 컴퓨팅(HPC) 제품 마케팅 업무를 하고 있다. HPC에 관련된 인텔의 제품 및 기술을 전파하며 멀티 코어 및 매니 코어 프로세서에서 소프트웨어의 코드 최적화에 관심을 갖고 있다.

도종관 : 고등학교까지는 아무 생각 없이 공부만 했다가 대학에서는 아무 생각 없이 물리과에 지원했다. 대학에서도 아무 생각 없이 지내다가 막상 취직을 해서는 컴퓨터와 관련된 일을 하게 되었다. 컴퓨터 조립, 전산실 바닥 공사, 네트워크 배선 공사에서부터 시스템 관리자, 네트워크 관리자 등을 전전하다가 윈도 환경에서 MFC를 이용한 프로그램 개발을 하면서 하드웨어를 직접 만지는 일을 어느 정도 벗어나게 되었다. 그 후에는 제대로 배우지도 못한 포트란 언어와 C/C++ 언어로 프로그램 이식과 최적화를 하는 일로 살아가고 있다. 요즘은 어릴 때 가까이 하지도 않았던 인문학 서적을 읽고 있다. 물리도, 컴퓨터도, 인문학도 제대로 알지 못하지만 알려고 노력하며 살고 있다.

이진필 : 일본 츠쿠바 대학에서 컴퓨터공학을 전공했으며 대학원 박사과정 재학 중에 PGAS 병렬 프로그래밍 언어 XcalableMP 컴파일러를 개발하였다. 병렬 아키텍처, 프로그래밍 언어 전반에 관심이 많으며 최근에는 Xeon Phi, GPU와 같은 매니 코어 아키텍처의 프로그래밍 기법, FPGA와 같은 reconfigurable 아키텍처의 사용 방법에 관하여 공부 중이다. 2013년부터 2015년 사이에 KISTI 사용자 지원실에 근무하면서 사용자 코드의 병렬화를 수행했으며, 현재 일본 RIKEN AICS에서 차세대 슈퍼컴퓨터 개발에 관한 연구를 하 있다.

추가 역자

이창성 : 병렬 컴퓨팅 응용분야로 학위를 받았고, SC2001에서 Gordon Bell Prize를 수상했다. 졸업 후에는 삼성전자에 입사해서 지금까지 근무하고 있다. 회사에서는 서버 개발 및 HPC 솔루션 개발 업무를 수행한 후, 모바일 디바이스들이 멀티 코어를 채택하면서, 서버에서 적용하던 HPC 기술들을 스마트폰 성능 최적화에 적용하는 업무를 맡았다. 현재는 네트워크 시스템의 운영 최적화 및 사용자 분석을 위한 빅데이터 기반 솔루션 업무를 이끌고 있다. 

이홍석 : 한국과학기술정보연구원 슈퍼컴퓨팅본부에서 슈퍼컴퓨팅 교육을 담당하고 있다. 고려대학교, 충북대학교 대학원에서 병렬프로그램을 강의했으며 MPI 책을 쓰기도 했다. 2010년부터 인텔 Xeon Phi 코프로세서를 이용하여 KMD, KMC 코드를 개발하였고, 최근에는 인텔 Xeon Phi나 GPU를 활용한 딥러닝 시뮬레이션 프로그래밍 기법 개발에 관심이 있다.




CHAPTER 1 서론 

CHAPTER 2 ‘올바른’에서 ‘올바르고, 효율적으로’ 

CHAPTER 3 HBM에서 우수한 동시성과 SIMD 

CHAPTER 4 나비에-스톡스 방정식 반응의 최적화 

CHAPTER 5 독립 페이징 배리어 

CHAPTER 6 결함수 수식의 병렬 계산 

CHAPTER 7 딥 러닝의 수치 최적화 

CHAPTER 8 수집/분산 패턴들의 최적화 

CHAPTER 9 매니 코어에서의 DIRECT N-body PROBLEM 구현 

CHAPTER 10 N-body 계산 방법 

CHAPTER 11 OpenMP 4.0을 이용한 동적 로드 밸런싱 

CHAPTER 12 병행 커널 오프로딩 

CHAPTER 13 MPI를 이용한 이기종 컴퓨팅 

CHAPTER 14 제온 파이 코프로세서에서 전력 분석 

CHAPTER 15 제온 파이 코프로세서를 클러스터 환경으로 통합 

CHAPTER 16 인텔 제온 파이 코프로세서에서의 클러스터 파일 시스템 지원 

CHAPTER 17 대규모 양자 화학 모의실험 

CHAPTER 18 대규모 시스템에서의 효율적인 네스티드 병렬화 

CHAPTER 19 블랙-숄즈 가격 모형의 성능 최적화 

CHAPTER 20 인텔 COI 라이브러리를 이용한 데이터 전송 

CHAPTER 21 고성능 광선 추적 

CHAPTER 22 OpenCL을 통해서 적용 가능한 성능 

CHAPTER 23 스텐실 계산의 특성 분석과 최적화 방법 

CHAPTER 24 프로파일링-유도 최적화 

CHAPTER 25 ITAC을 활용한 이기종 MPI 애플리케이션 최적화 

CHAPTER 26 클러스터에서 확장성이 뛰어난 아웃-오브-코어 솔버 

CHAPTER 27 희소 행렬-벡터 곱의 병렬화와 벡터화 

CHAPTER 28 MORTON ORDER의 성능 향상