inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CUDA 프로그래밍 (2) - C/C++/GPU 병렬 컴퓨팅 - 벡터 vector 더하기

15-4 warp scheduling - 와프 스케줄링

Warp를 동시에 돌린다는 말이 이해가 가지 않습니다.

해결된 질문

337

OpenJR

작성한 질문수 3

0

안녕하세요. 먼저 좋은 CUDA 강의를 제공해주셔서 감사합니다.

 

다름이 아니라 15-4 강의에서 Warp를 동시에 돌린다는 말에 질문이 있습니다.

 

Warp 스케줄링을 저는 아래와 같이 비교하여 이해하였습니다.

CPU: Core -> 여러개의 쓰레드

GPU: SM -> 여러개의 Warp

 

강의 내용처럼, CUDA에서 Warp별로 스케줄링을 관리를 한다면 모든 SP의 Clock들이 같은 Instruction을 수행(SM내 SP들의 Clock들은 Sync가 맞음)하여야 Warp단위로 스케줄링이 가능할 것 같은데, 제 생각이 맞는지 궁금합니다.

 

감사합니다.

 

c c++ cuda gpu 병렬-처리

답변 1

0

드립커피+한모금더

안녕하세요.

네. 당연히 그렇게 처리 합니다.

SM 1개 내의 모든 SP 들은 같은 clock 으로 동시에 실행됩니다.

warp 단위로 실행 해야 하다 보니, 같은 warp 를 실행하는 32개의 SP 는 instruction 도 똑같은 것을 수행합니다.

강의에서도 한번 설명했지만, GPU 구조에서는 ALU + control unit 쪽을 줄이는 대신 갯수를 늘리는 쪽으로 설계 방향을 잡았는데, ALU 를 줄이는 데는 한계가 있고, 결국 control unit을 최대한 줄이는 방법이, 32개의 warp를 실행하는 32개의 SP가 control unit 1개의 통제를 받는 방식이고, 이러면, 이들은 동시에 똑같은 instruction을 수행하는 수 밖에 없습니다.

감사합니다.

 

26년2회 실기기출은 언제쯤...

0

19

2

이론 공부법 요약본 버전 업데이트 문의

0

15

2

코딩살구클럽 가입부탁드립니다

0

27

2

vs 디버그 옵션 설정

0

26

2

코딩살구클럽 가입 요청 확인부탁드립니다

0

30

2

54강 양자화의 끝판왕, 터보퀀트 (예정) 강의 업로드

0

29

1

블로그에 학습 내용 올려도 되나요?

0

32

1

5-S 테스트 케이스 질문

0

34

2

정처기 필기 준비할때 이 이론을 다시 외워도 될까요?

0

54

2

코살 문제풀이 환경

0

48

2

2 - T 오큰수 문제가 있는 것 같습니다.

0

43

1

추천 추가문제들

0

43

2

프로그래머스 코테 환경 관련해서 질문드립니다.

0

45

2

최신 엔비디아 CUDA 아키텍처에서의 결정적 변경 사항

1

41

1

ch .12 grid 설정 관련 질문 드립니다.

0

105

2

memcpy 시간 고려 시 gpu vs. cpu

0

120

2

common.cpp의 procArg 함수에 대해 질문이 있습니다.

0

158

2

Thread Block 개수에 제한이 있나요?

0

439

1

매크로 함수를 쓴 이유

0

327

1

VS2022 컴파일 에러

0

394

2

global 변수가 cuda memory에서 사용되는 이유

0

394

1

Warp 갯수에 대한 고찰입니다....

0

574

2

15강 Block ID 예제 오류 질문입니다.

0

381

1

컴파일 시의 <typeinfo> 관련 에러

0

612

1