간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (19,800원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (15,750원)
(최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (15,750원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (18,000원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (20,250원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (20,930원)
(최대할인 3만원 / 3만원 이상 결제)
Close

R 병렬 프로그래밍 : 빠른 데이터 처리를 위한 병렬 프로그래밍의 기초와 고급 라이브러리 활용

원제 : Mastering Parallel Programming with R

2013년 9월 9일 이후 누적수치입니다.

판매지수 74
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

25,000원

  • 22,500 (10%할인)

    1,250P (5%적립)

할인혜택
적립혜택자동적립
배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서(321)

  • 사은품(2)

책소개

R에서의 병렬 처리를 위한 핵심 패키지 parallel에서 시작해 클라우드 기반 패키지, 고급 MPI, GPU 기반 병렬화 등에 관해 기술적으로 깊이 다룬다. R에서 효율적인 병렬 코드를 작성할 수 있는 방법 및 피해야 할 문제에 대해 깊이 있게 배울 수 있다. R 병렬 프로그래밍을 간단하게 구현하는 방법은 물론, 고차원의 병렬화 기술을 접하는 데 좋은 길잡이가 될 것이다.

출판사 서평

[이 책에서 다루는 내용]
- R의 내장 병렬 패키지를 사용한 로드밸런싱된 병렬 연산의 효율적인 구축
- AWS에서 동작하는 하둡의 분산화된 연산 실행을 포함한 R에서 클라우드 기반 병렬 인프라 배치 및 활용
- RMPI, pbdMPI, SPRINT 패키지를 사용한 메시지 전달 인터페이스(MPI)로 복잡한 병렬 처리 알고리즘 개발
- 사용자의 MPI 기반 루틴으로 병렬 R 패키지(SPRINT)의 생성 및 확장
- OpenCL로 그래픽 프로세싱 유닛(GPU)의 벡터 처리 능력을 활용한 R에서 가속화된 수치 함수 구현
- 데드락 및 수치적 불안정성과 같은 병렬 프로그래밍의 함정과 처리 및 회피 방법
- 마스터-워커 과제 농장, 공간 그리드, 하이브리드 병렬 R 프로그램 만들기

[이 책의 대상 독자]
장시간 실행되는 연산 및 대량의 데이터 분석을 위해 병렬 컴퓨팅 파워의 활용법을 배우고자 하는 중급에서 고급 수준의 프로그래머를 대상으로 한다. R 프로그래밍에 대한 적절한 지식과 이해가 요구된다. C나 C++와 같은 낮은 수준 언어를 읽고 이해할 수 있으며 코드 컴파일 프로세스에 익숙할 정도로 충분한 능력의 프로그래머야 한다. 독자는 스스로 숙련된 프로그래머이자 수학자인 새로운 유형의 데이터 과학자라고 여겨야 한다.

[이 책의 구성]
1장, 'R에서의 간단한 병렬화'에서는 R의 병렬화된 핵심 버전인 lapply()를 사용해 노트북의 멀티코어 프로세싱 능력을 어떻게 활용할 수 있는지 빠르게 알아본다. 또한 아마존 웹 서비스를 통해 클라우드의 막대한 컴퓨팅 능력에 대해 간단히 살펴본다.
2장, '메시지 전달 소개'에서는 고급 병렬 알고리즘 구현에 핵심적인 기술인 MPI를 다룬다. 두 가지의 R MPI 패키지인 Rmpi 및 pbdMPI와 함께 해당 통신 서브시스템의 OpenMPI을 구현한다.
3장, '고급 메시지 전달'에서는 구체적인 Rmpi 예제를 개발하고 비차단 통신과 프로세스 간 메시지 교환의 지역화 패턴을 설명하며 MPI 학습을 마무리한다. 이를 위해 공간 그리드 병렬화를 구현한다.
4장, '슈퍼컴퓨터용 MPI 기반 R 패키지- SPRINT 개발'에서는 실제 슈퍼컴퓨터에서 병렬 코드를 실행하는 경험을 소개한다. 또한 슈퍼컴퓨터는 물론 노트북에서도 실행할 수 있는 C로 작성된 병렬 컴퓨팅 R 패키지인 SPRINT 개발에 대해 상세히 설명한다. 그리고 직접 작성한 고성능의 병렬 알고리즘으로 어떻게 이 패키지를 확장할 수 있는지, 어떻게 이를 R에서 접근할 수 있는지 보여준다.
5장, '노트북 안의 슈퍼컴퓨터'에서는 여러분의 노트북에 내장된 그래픽스 프로세싱 유닛(GPU, Graphics Processing Unit)의 엄청난 병렬 및 벡터 프로세싱 능력을 R에서 어떻게 드러낼 수 있는지 보여준다. 이를 위해 공개 컴퓨팅 언어(OpenCL, Open Computing Language)의 R 래퍼(wrapper)인 ROpenCL 패키지를 사용한다.
6장, '병렬 컴퓨팅의 예술'에서는 병렬 프로그래밍 및 그 성능 이면의 기초 과학과 잠재적인 함정을 강조한다. 모범 사례의 기술을 제공하고, 병렬 컴퓨팅 시스템의 미래를 살펴봄으로써 끝맺는다.

[지은이의 말]
우리는 현재 폭발적으로 급증하고 있는 정보의 한가운데 있다. 우리 삶의 모든 것은 자신의 생명 활동에서 세계 환경에 이르기까지 사물 인터넷(IoT, Internet of Things)을 통해 실시간으로 측정되며 연결돼 있다. 일부 지표에 따르면 2020년에는 세계의 정보량이 오늘날로부터 10배 증가해 믿기 어려운 규모인 44제타 바이트(1제타 바이트는 2,500억 개 DVD와 같은 규모다)에 이를 것으로 전망되고 있다. 이러한 규모와 속도의 빅데이터를 처리하기 위해 막대한 규모의 계산력, 메모리, 디스크 자원이 필요하며, 이를 위해서는 병렬화가 필요하다.
오픈소스 통계 프로그래밍 언어인 R은 만들어진 햇수에도 불구하고 데이터 분석에 주춧돌과 같은 기술 중 하나로 인기를 얻고 있다. 그리고 계속 확장되고 있는 커뮤니티이면서 장담하건대 현재 인기 있는 명칭인 '데이터 과학자'에 의해 쓰이고 있다.
물론 데이터 과학자가 빅데이터라는 야수를 길들이기 위해 도입할 수 있는 도구는 여러 가지가 있다. 어쩌면 여러분은 파이썬(Python), SAS, SPSS 아니면 MATLAB의 고수일 수도 있다. 그러나 1997년 이후로 기나긴 오픈소스의 유산과 함께한 R은 그사이 20년 동안 개발돼 온 CRAN 호스팅의 매우 다양한 플러그인 라이브러리 패키지와 함께 널리 보급되고 있으며, 작은 숫자 행렬에서부터 생체 분자 DNA와 같은 극히 대규모의 기호로 된 데이터셋에 이르기까지 대부분의 데이터 형태를 다룰 수 있다. 물론 우리는 R이 매우 다양한 형태의 데이터에 관련된 상당히 복잡한 분석 과정을 조율할 수 있는, 사실상 데이터 과학 스크립팅 언어로 자리매김하고 있다는 것을 제시하기 위해 가능한 한 깊게 들어가고자 한다.
R 자체는 항상 싱글 스레드(single thread)로 구현됐으며, 언어 근본 자체 내에서 병렬화를 사용하지 않도록 디자인됐다. 대신 특정 가속화된 함수를 위한 병렬화 수립과 병렬 처리 프레임워크를 사용할 수 있게 하려고 특별히 구현된 외부 패키지 라이브러리에 의존한다. 다양한 기술 분야에서 병렬 알고리즘을 개발할 수 있게 하는 가장 좋은 대표적 구현 방법을 몇 가지 살펴본다.
이 책에서는 R의 자체 멀티코어 능력을 활용하는 parallel 패키지와 메시지 전달 인터페이스(MPI, Message Passing Interface) 표준을 사용하는 메시지 전달법, OpenCL을 통한 범용 목적의 GPU(GPGPU) 기반 병렬화를 비롯해 단일 프로그램 복수 데이터(SPMD, Single Program Multiple Data)에서 단일 명령 복수 데이터(SIMD, Single Instruction Multiple Data)에 이르기까지 병렬화의 여러 다른 면을 살펴본다. 또한 과제 파밍(farming)을 통한 로드밸런싱에서 그리드를 통한 공간 처리에 이르기까지 프레임워크 병렬화 접근 방법의 차이점을 살펴본다. 그리고 클라우드에서 하둡을 통한 일반적인 목적의 배치 데이터(batch-data) 처리, 그리고 보너스로 클러스터 컴퓨팅에서 최근 인기 있는 새로운 기술이면서 대규모의 실시간 데이터 처리에 더 적합한 아파치 스파크에 대해 간단히 언급한다. 게다가 수백만 파운드짜리 슈퍼컴퓨터의 사용법을 살펴본다. 이를 어떻게 사용하는지, 어느 정도의 성능을 달성할 수 있는지 보도록 한다. 여러분이 사는 지역의 슈퍼컴퓨터 센터에 들이닥친 후, 여러분이 발견한 새로운 지식으로 엄청난 규모의 병렬 컴퓨팅을 해볼 수 있게 될지 누가 알겠는가?
이 책에 나온 모든 코딩 예제는 직접 작성한 것이며, 일부 예제는 같은 분야의 다른 책에서 만날 수 있을 법한 종류의 예제와 겹치지 않게 선택했다. 우리는 평범한 것과 다소 다른 무언가로 독자 여러분을 사로잡을 수 있게 예제들을 선택했다. 우리는 여러분이 이제 막 시작하는 R에서의 병렬 프로그래밍 완성 과정을 즐기기를 기대한다.

[옮긴이의 말]
21세기 들어 IT업계에서 가장 인기 있는 화두 중 하나는 바로 '데이터'가 아닐까 한다. 소프트웨어 없이 지속 가능한 산업이 전무하다고 할 수 있는 지금 비단 IT뿐만 아니라 모든 업계에서 데이터의 중요성을 외치고 있다. 저성장으로 인해 양적 팽창이 어려워지면서 데이터는 모든 분야에서 생산성을 조금이라도 키우기 위한 핵심적인 수단이 되고 있다.
데이터 분석에서 파이썬(Python)이 비교적 최근에 주목을 받고 있다면 R은 풍부한 라이브러리 생태계를 기반으로 한 전통의 강자라 할 수 있다. 통계학, 생물학, 의학, 사회과학 등 폭넓은 분야의 연구자가 R에서 쓸 수 있는 다양한 라이브러리를 개발해놓은 덕분에 데이터 분석가는 자신이 직접 분석 도구를 개발할 필요 없이 기존 라이브러리를 쉽게 가져다 쓸 수 있다. 이러한 개방성이 R을 인기 있는 데이터 분석 언어로 만들어 준 가장 중요한 원동력이라 할 수 있을 것이다.
모든 프로그래밍 언어에서 하드웨어가 발전하면서 CPU, GPU의 멀티코어를 잘 활용할 수 있는 능력이 더욱 중요해지고 있다. R도 예외가 될 수는 없다. R 자체는 싱글 스레드로 구현돼 있으므로 병렬 연산을 위해서는 별도의 라이브러리를 사용해야 한다. 이 책에서 이러한 라이브러리를 이해하고 다루는 방법을 체계적으로 배울 수 있다.
이 책은 R 병렬 처리를 위한 핵심 패키지인 parallel에서 시작해 클라우드 기반 라이브러리, 고급 MPI, 그리드 병렬화, OpenCL을 이용한 GPU 기반 병렬화 등 기술적으로 깊은 내용까지 다룬다. 또한 R에서 효율적인 병렬 코드를 작성하는 방법 및 피해야 할 문제에 대해 자세히 배울 수 있다. 마음 급하신 분들은 2장만 읽어본 후, 기존에 개발해놓은 R코드에 병렬화를 적용한다면 빠르게 실행 시간을 단축할 수 있을 것이다. 이 책이 R에서의 병렬화에 대한 기초는 물론 고급 기술을 접하는 데 좋은 디딤돌이 될 수 있기를 기대한다.

목차

1장. R에서의 간단한 병렬화
아리스토텔레스의 숫자 퍼즐
- 해석기 구현
- 해석기 개선
* 실행 시간 측정
- 문제를 여러 과제로 분할
* lapply()로 복수의 과제 실행
R 병렬 패키지
- mclapply() 사용
* mclapply() 옵션
- parLapply() 사용
- 병렬 로드밸런싱
segue 패키지
- segue 설치
- AWS 계정 설정 하기
- segue 실행
* createCluster() 옵션
* AWS 콘솔 화면
- 아리스토텔레스의 숫자 퍼즐 풀기
* 결과 분석
요약

2장. 메시지 전달 소개
MPI를 위한 시스템 환경 설정
- MPI를 위한 R 패키지 선택
- MPI 서브시스템 선택
- OpenMPI 설치
MPI 표준
- MPI 유니버스
- Rmpi 설치
- pbdMPI 설치
MPI API
- 지점 간 차단 통신
* MPI 내부통신기
- 지점 간 비차단 통신
- 집단 통신
요약

3장. 고급 메시지 전달
그리드 병렬화
- 그리드 클러스터 만들기
- 경계 데이터 교환
- 중앙값 필터
- 이미지를 조각으로 분산
- 중앙값 필터 그리드 프로그램
* 성능
통신 검사와 관리
lapply() 변형
- Rmpi에서의 parLapply()
요약

4장. 슈퍼컴퓨터용 MPI 기반 R 패키지- SPRINT 개발
ARHCER
R에서 MPI 코드 호출
- MPI 헬로 월드
- R에서 C 호출
* R에서 호출 가능하게C코드 수정
* MPI 코드를 R 공유 객체로 컴파일
* R에서 MPI Hello World 예제 호출
MPI R 패키지 빌드- SPRINT
- 간단한 병렬 R 인터페이스(SPRINT) 패키지
* R스크립트에서 사전 구축된SPRINT 루틴 사용
- SPRINT 패키지의 아키텍처
SPRINT 패키지에 새로운 함수 추가
- SPRINT 소스코드 다운로드
- R에서 스텁 만들기- phello.R
- 인터페이스 함수 추가- phello.c
- 구현 함수 추가- hello.c
- 스텁, 인터페이스, 구현 연결
* functions.h
* functions.c
* 네임스페이스
* Makefile
- SPRINT 코드 컴파일과 실행
유전체학 분석 사례 연구
- 유전체학
- 유전체적 데이터
슈퍼컴퓨터와 함께하는 유전체학
- 목표
- ARCHER 슈퍼컴퓨터
- 랜덤 포레스트
- 유전체학 분석 사례 연구를 위한 데이터
- ARCHER에서의 랜덤 포레스트 성능
- 랭크 프로덕트
- ARCHER에서의 랭크 프로덕트 성능
- 결론
요약

5장. 노트북 안의 슈퍼컴퓨터
OpenCL
- 시스템에서 OpenCL 능력 쿼리
ROpenCL 패키지
- ROpenCL 프로그래밍 모델
* 간단한 벡터 덧셈 예제
* 커널 함수
- 거리 행렬 예제
* 다중 빈곤 지수
* GPU 코어 외부 메모리 처리
요약

6장. 병렬 프로그래밍의 예술
병렬 효율성 이해
- 가속계수
- 암달의 법칙
- 병렬화할 것인가 하지 않을 것인가
* 채플의 법칙
수치적 근사
난수
데드락
데드락 피하기
병렬 오버헤드 줄이기
적응적인 로드밸런싱
- 과제 농장
- 효율적인 그리드 처리
- 성공적인 병렬화를 위한 세 가지 단계
- 무엇이 미래를 품고 있는가
- 하이브리드 병렬화
요약

저자소개

사이먼 채플(Simon R. Chapple) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

고도로 숙련된 솔루션 아키텍트이자 선임 소프트웨어 엔지니어다. 데이터 분석과 헬스케어 정보학에 대한 혁신적인 솔루션 및 애플리케이션 개발에 25년이 넘는 경력을 쌓았다. 또한 슈퍼컴퓨터 HPC(High Performance Computing)와 빅데이터 프로세싱 전문가다.
데이터리틱스 테크놀로지 사(Datalytics Technology Ltd)의 CTO이자 경영 파트너다. 기존 IT 운영 환경에서 쉽게 배포할 수 있게 캡슐화된 차세대의 대규모 데이터 분석 플랫폼 개발을 위한 팀 구성을 이끌고 있다. 이 플랫폼은 커스터마이징이 가능한 고성능 도구, 프레임워크, 시스템으로 구성돼 있으며, 데이

펼쳐보기
에일리 트룹 [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

에딘버그 대학교 EPCC(High Performance Computing Centre at the University of Edinburgh)의 애플리케이션 컨설턴트다. 글래스고 대학교에서 유전학 학위를 받았으며, 현재는 폭넓은 사용자, 특히 생물학자들이 고성능 컴퓨팅에 접근할 수 있게 하는 데 집중하고 있다. SPRINT 및 과학을 위한 웹 기반 데이터 저장소인 SEEK 등 다양한 소프트웨어 프로젝트에 참여 중이다.

토르스텐 포스터(Thorsten Forster) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

에딘버그 대학교의 데이터 과학 연구원이다. 통계학과 컴퓨터 과학을 전공했으며, 생물의학 박사 학위를 취득했고, 학제 간 연구 분야에 10년이 넘는 경력을 쌓았다.
마이크로어레이(microarray)와 차세대 시퀀싱(next-generation sequencing)과 같이 통계학과 머신 러닝에 기초를 둔 생물의학 빅데이터 분석 방법을 연구했며, 초심자가 대규모의 생물학 데이터셋에 R 통계 프로그래밍 언어로 병렬화된 분석 솔루션을 사용할 수 있게 하는 데 목표를 둔 SPRINT 프로젝트의 매니저를 맡았다. 또한 대학교에서 스핀아웃된 회사이자 생물학 관련 빅데이터 분석 서비스를 제공

펼쳐보기
테렌스 슬론(Terence Sloan) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

EPCC의 소프트웨어 개발 그룹 매니저다. 스코틀랜드의 중소기업, 영국 기업, 유럽과 글로벌 기업과의 데이터 과학 및 HPC 프로젝트를 25년 넘게 관리하고 참여해왔다.
웰컴 트러스트(Wellcome Trust, 지원금 번호 086696/Z/08/Z)와 BBSRC(지원금 번호 BB/J019283/1), 그리고 R을 위한 SPRINT 패키지 개발을 지원하는 3개의 EPSRC 분산 컴퓨터 과학 프로젝트의 공동 수석 연구자였다. 또한 고객 행위 분석을 위한 운영적 측면의 빅데이터 사용법 연구에 대해 ESRC(지원금 번호 RES-189-25-0066, RES-149-25-0005)로부터 지원금을 받았다.
에딘버그 대학교 HPC 데이터 과학

펼쳐보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

대학에서 통계학을 전공한 후 금융 관련 일을 하다가 뒤늦게 프로그래밍 세계에 입문했다. 데이터 분석을 기반으로 하는 금융 투자와 프로그램 개발에 관심이 많다. 현재는 ETF 포트폴리오 분석을 위한 웹 서비스를 개발하며 기술 서적을 번역하고 있다. 에이콘출판사에서 펴낸 [R 병렬 프로그래밍](2017), [파이썬으로 배우는 데이터 과학 2/e](2017) 등을 번역했다.

이 상품의 시리즈

acorn+PACKT 시리즈(총 351권 / 현재구매 가능도서 322권)

펼쳐보기

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    리뷰

    0.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    0.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용