inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

삼각형의 실전! OpenAI Triton 초급

코드가 실행되는 순서에 관하여

해결된 질문

382

tritonman

작성한 질문수 4

0

@triton.jit
def add_kernel(x_ptr, y_ptr, z_ptr, size, block_size: tl.constexpr):
    (...)

def add(x, y):
    z = (...)
    size = (...)

    def grid(meta):
        return (triton.cdiv(size, meta["block_size"]),)

    add_kernel[grid](x, y, z, size, 1024)

    return z

 

안녕하세요 vector_add.py를 보던 중, 코드 라인이 실행되는 순서가 궁금하여 질문남깁니다

 

수업에서 runtime 때 meta가 받아진다고 말씀해주셨는데요.

그렇다면 코드가 실행되는 순서가

  1. runtime 동안 add_kernel의 argument로 들어온 x, y, z, size, 1024가 meta로 받아지고

  2. meta를 이용해 grid가 (n, )의 형태로 set되고

  3. 그 이후 add_kernel이 실행된다

가 맞을까요?

 

또 하나 궁금한 것은 아래 라인이 실행될 때 @triton.jit 데코레이터의 역할인데요

add_kernel[grid](x, y, z, size, 1024)
  1. (x, y, z, size, 1024)를 meta로 받아준다

  2. 그 meta가 적용된 특정 grid 설정 위에서 add_kernel 함수가 실행될 수 있게 해준다

일까요?

 

파이썬에서 원래 함수는 subscriptable하지 않아, 위 syntax가 생소해서 질문드립니다

python 딥러닝 cnn gpgpu dropout openai argmax relu triton kernel-programming

답변 1

1

삼각형

안녕하세요?

 

네 맞습니다! 알고 계신 순서로 실행이 됩니다. 그리고 triton.jit 데코레이터의 역할은 해당 함수를 Triton 커널로 정의하는 것입니다. triton.jit 데코레이터를 명시한 함수는 실행전에 컴파일 과정을 거치게 됩니다.

 

감사합니다.

저장 공간

1

14

1

수업자료 안열림

0

10

0

41강 1분 39초 영상에서 import test_module이 조회 안 돼요.

0

13

1

실습파일이 제대로 올라와 있지 않습니다.

0

10

1

정처기 26-2회. 9번 질문드립니다!

0

23

1

1-11 소수 나열하기 (에라토스테네스의 체)

0

13

0

이론 보면서 질문이 있습니다.

0

28

2

테마 개발의 한계, 업종이 대체 할 수 있을까요?

0

17

2

정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문

0

37

2

유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)

0

53

2

262 정처기 실기 C언어코딩

0

24

1

정보처리기사 262 실기 Hash(해시) 질문

0

43

2

static 변수 질문입니다.

0

35

2

파이썬 4강 질문입니다.

0

45

2

colab 코드 실행시 error

1

27

2

autotune은 아직 안 올라온 건가요?

0

71

1

강의만 봐서는 triton 커널이 pytorch에 비해 빨라 보이지 않네요..

0

219

2

block ptr 질문

0

90

2

디스코드 커뮤

0

117

1

앞으로의 강의 계획에 대하여

0

263

2

실행을 위한 최적 환경

1

850

1

강의 계획에 대하여

0

351

1

행렬곱 오차 문제

1

432

2

실습 코드

0

391

1