R 병렬 프로그래밍
도서명:R 병렬 프로그래밍
저자/출판사:사이먼,채플,에일리,트룹,토르스텐,포스터,테렌스,슬론/에이콘출판
쪽수:292쪽
출판일:2017-02-07
ISBN:9788960779747
목차
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장. 병렬 프로그래밍의 예술
__병렬 효율성 이해
____가속계수
____암달의 법칙
____병렬화할 것인가 하지 않을 것인가
______채플의 법칙
__수치적 근사
__난수
__데드락
데드락 피하기
__병렬 오버헤드 줄이기
__적응적인 로드밸런싱
____과제 농장
____효율적인 그리드 처리
____성공적인 병렬화를 위한 세 가지 단계
____무엇이 미래를 품고 있는가
____하이브리드 병렬화
__요약