한빛출판네트워크

IT/모바일

Thinking About : PPL을 이용한 VC++ 병렬 프로그래밍(2판)

리얼타임 eBook

집필서

판매중

Thinking About : PPL을 이용한 VC++ 병렬 프로그래밍(2판)
좋아요: 26
  • 저자 : 김경진
  • 출간일 : 2014-03-17
  • 페이지 : 196쪽
  • ISBN : 9788968486548

합계 : 10,800

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

  • PPL로 병렬 프로그래밍을 손쉽게 구현해보자!

     

    CPU가 멀티 코어로 진화하면서, CPU 리소스를 적극적으로 활용하여 성능을 최대한 향상하기 위한 병렬 프로그래밍이 이슈가 되고 있다. 현재 프로그램 대부분이 순차처리를 하고 있는데, 이러한 방식은 멀티 코어의 장점을 제대로 살리지 못한다. 최근 다양한 분야에서 대용량 데이터 처리 작업 및 복잡도가 높은 연산 처리 작업이 증가하는 추세이므로, 점점 더 병렬 프로그래밍이 필요하게 될 것이다.

     

    병렬 프로그래밍이 유용할 것이라는 인식은 있지만, 기존의 개발 언어로는 병렬 프로그래밍하는 게 어려워서 병렬 프로그래밍에 접근하지 못하였다. 이런 문제를 덜어주기 위해 Visaul C++에서 Parallel Patterns Library(PPL) 제공하는 데, 이를 이용하면 손쉽게 병렬 프로그램을 구현할 수 있다. 

     

    이 책은 다양한 예제를 통해 PPL을 소개하고 그 사용 방법을 알려준다. 내용의 신뢰성을 높이고자 MSDN을 참고하였으며, 다양한 예제와 그림으로 병렬 프로그래밍을 쉽게 설명하였다. 

     

    대상 독자

    • 윈도 환경에서 응용 프로그램과 게임을 개발하는 Visual C++ 개발자
    • 개발하는 애플리케이션에 멀티 코어를 활용한 병렬 프로그래밍을 적용하려는 개발자 
    • 성능 개선을 해야 하는 윈도 서버 개발자
    • 이미지/영상 처리 애플리케이션 개발자

    C++로 병렬 프로그래밍을 시작하는 개발자를 위한 바른 가이드
    병렬 프로그래밍이 좋다는 것은 알고 있지만, 알아야 할 지식이 방대하고 고려해야 할 사항이 너무 많아서 이를 시작하고 구현하는 것은 힘들고 어려운 일이다. 이 책은 C++로 병렬 프로그래밍을 시작하는 개발자를 위한 '바른 가이드'다. 다양한 예제를 통해서 PPL이 무엇이며, 어떻게 사용해야 하는지 제대로 알려준다. 이 책에 있는 예제를 하나하나 따라 하다 보면 PPL을 이용하여 어떻게 병렬 프로그래밍을 하는지, 병렬 프로그래밍할 때 어떤 점을 주의해야 하는지 알게 될 것이다. 

  • [저자] 김경진

    wisejini@hanmail.net
    신문 편집 디자인, 웹 페이지 디자인 등 다양한 분야에서 작업하고 있으며, 테크니컬라이터로도 활동 중이다. 더조은 컴퓨터 아트 학원에서 강사로 활동하였으며, 지금은 SBS 아카데미 컴퓨터 아트 학원에서 학생들을 가르치고 있다. 저서로는 『U세대를 위한 인터넷 활용 + 홈페이지 구축』(베스트북, 2006), 『코비랑 하비랑 함께하는 홈페이지 만들기』(중앙 교육, 2005), 『한 권으로 딱, 나모 웹 에디터 FX』(영진닷컴, 2004), 『OKOKOK 알찬 예제로 배우는 포토샵 7』(교학사, 2003) 등이 있다.

  • INTRO 
      멀티 코어 시대, 병렬 프로그래밍합시다 
      병렬 프로그래밍 도구 
      동시성 런타임 
      시작하기 전에 


    1장. PPL 시작하기 
      1.1 문제를 태스크로 분리하자 
      1.2 태스크 그룹을 이용하여 태스크를 병렬 처리하자 


    2장. 병렬 알고리즘 
      2.1 병렬 실행 알고리즘
      2.2 반복 알고리즘 
      2.3 변형 및 수치 알고리즘 
      2.4 정렬 알고리즘 


    3장. 병렬 컨테이너와 오브젝트 
      3.1 병렬 오브젝트 
      3.2 시퀀스 컨테이너와 컨테이너 어댑터 
      3.3 연관 컨테이너 


    4장. 의존성을 가지는 태스크 집합 구성 
      4.1 task 클래스 
      4.2 태스크 연결 
      4.3 태스크 집합의 Join과 Select 
      4.4 람다 표현식 사용 시 주의사항 


    5장. 병렬 작업의 취소 
      5.1 태스크 그룹 취소 
      5.2 병렬 알고리즘 취소 
      5.3 task 클래스 취소 


    6장. PPL 활용 및 주의사항 
      6.1 작업의 크기가 작은 루프는 병렬 처리하지 말자 
      6.2 병렬 루프 안에서 작업이 자주 블로킹되지 않게 하자 
      6.3 병렬 루프 안에서는 공유 데이터 쓰기 작업을 수행하지 말자 
      6.4 태스크에서 참조하는 변수의 수명을 태스크가 종료될 때까지 유지하자 
      6.5 취소 메커니즘 또는 예외 처리 방식을 통해 병렬 루프를 탈출하자 
      6.6 병렬화 수준을 최대한 끌어올리자 
      6.7 parallel_invoke 함수를 활용하여 분할 정복 알고리즘을 구현하자 
      6.8 취소 및 예외 처리가 객체 소멸에 미치는 영향을 이해하자 
      6.9 병렬 작업이 취소 조건에 도달하면 즉시 취소하자 
      6.10 가능한 한 거짓 공유 문제를 피해 가자 


    참고 문헌

  •  

  • 내용이 없습니다.
닫기

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