inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Tam giác đang hoạt động! Người mới bắt đầu OpenAI Triton

실행을 위한 최적 환경

Đã giải quyết

830

tritonman

4 câu hỏi đã được viết

1

안녕하세요

hello_triton.py가 실행이 되지 않아 질문남깁니다

 

현재

cuda==11.8

pytorch==2.1.2

triton==2.1

의 환경을 사용하고 있습니다

 

 

hello_triton.py 실행 시 아래 오류가 뜹니다

Traceback (most recent call last):

File "/home/furiosa/Desktop/workspace/Triton/practice-triton/hello_triton.py", line 28, in <module>

def hello_triton():

File "/home/furiosa/miniconda3/envs/triton/lib/python3.10/site-packages/triton/runtime/jit.py", line 542, in jit

return decorator(fn)

File "/home/furiosa/miniconda3/envs/triton/lib/python3.10/site-packages/triton/runtime/jit.py", line 534, in decorator

return JITFunction(

File "/home/furiosa/miniconda3/envs/triton/lib/python3.10/site-packages/triton/runtime/jit.py", line 433, in init

self.run = self._make_launcher()

File "/home/furiosa/miniconda3/envs/triton/lib/python3.10/site-packages/triton/runtime/jit.py", line 400, in makelauncher

exec(src, scope)

File "<string>", line 2

def hello_triton(, grid=None, num_warps=4, num_stages=3, extern_libs=None, stream=None, warmup=False, device=None, device_type=None):

^

SyntaxError: invalid syntax

 

 

triton==2.2 가 아니라 2.1을 사용하는 이유는, hello_triton.py 실행 시 아래 오류가 떴기 때문입니다

RuntimeError: Triton Error [CUDA]: device kernel image is invalid

 

 

공식홈페이지에서 제공하는 01-vetor-add.py 같은 경우 실행이 잘됩니다

triton을 사용하기 위한 최적환경은 무엇인지 별 설명이 없었던 것 같은데요

  1. 어떤 cuda/pytorch 환경을 사용해야 오류가 가장 안나고 안정적인가요?

  2. 위 오류는 왜 일어나고 어떻게 해결할까요?

인터넷에도 크게 도움되는 정보는 없어서 부득이 질문 남깁니다ㅠㅠ

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

Câu trả lời 1

1

triangle

안녕하세요?

 

먼저 강의를 수강해주셔서 감사합니다. 예제가 실행이 되지 않아 속상하시겠어요.

 

지금 발생한 에러는 Triton의 문법 에러입니다. 예전 버전의 Triton은 커널 호출시 값을 반드시 1개는 전달해줘야 했습니다. 최신 버전의 Triton은 이러한 버그가 수정되어서 커널을 호출할 때 값을 전달하지 않아도 됩니다. 저희가 처음 사용하는 hello_triton은 전달 인자가 없어서 Syntax 에러가 발생하게 됩니다.

File "<string>", line 2
def hello_triton(, grid=None, num_warps=4, num_stages=3, extern_libs=None, stream=None, warmup=False, device=None, device_type=None):
^

SyntaxError: invalid syntax

공유해주신 에러 메세지를 살펴보면 코드가 hello_triton(,인 것을 확인할 수 있습니다. 즉 ,가 쓸모없이 추가되었기 때문에 문법 에러가 발생하고 컴파일이 되지 않는 것입니다. 그래서 RuntimeError: Triton Error [CUDA]: device kernel image is invalid같이 커널이 이상하다는 에러가 발생하는 것이라고 생각됩니다.

 

Triton은 최신 데일리 버전을 사용하는게 가장 좋다고 생각합니다. 주의해야할 점은 Torch도 Triton을 사용하기 때문에 Torch를 설치할 때 기존에 설치된 Triton은 삭제되게 됩니다. 그러면 이런 에러가 또 발생할 것입니다. 이것을 방지하기 위해서 Torch를 먼저 설치하고 그 다음 Triton 최신 데일리 버전을 설치하시면 됩니다.

 

감사합니다.

1

tritonman

감사합니다!! Triton 2.2를 위해서 다시 세팅해주니까 되는것같습니다 ㅎㅎ

말씀하신 내용이 여기있는 것 같네요 ㅎㅎ

6-6

0

9

1

작업형 1 유형 부분

0

12

1

수강평 이벤트

0

17

2

import torch가 안되는 경우는 어떻게 하나요?

0

16

1

작업형 1 (삭제예정, 구 버전)

0

31

2

강의노트는 어디있나요?

0

17

1

노션 학습 자료 권한 요청

0

17

1

수강기간 연장 문의드립니다.

0

21

1

2유형 레이블 인코딩 VS 원핫 인코딩

0

24

3

part2강의 문의사항입니다.

0

19

2

수강기간 연장 문의드립니다.

0

26

1

인덱스 슬라이싱

0

27

2

코드를 첨부해야하는 이유가 있나요?

0

20

2

소리가 겹쳐서 들려요

0

21

2

데스크톱과 노트북 연결

0

27

1

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

0

49

1

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

0

165

2

block ptr 질문

0

62

2

디스코드 커뮤

0

87

1

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

0

243

2

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

0

366

1

강의 계획에 대하여

0

336

1

행렬곱 오차 문제

1

418

2

실습 코드

0

376

1