Dao-AILab/causal-conv1d

Causal depthwise conv1d in CUDA, with a PyTorch interface

해결하는 문제

인공지능 모델의 시계열 모델링에 필수적인 인과적 깊이 방향 1D 컨볼루션에 대해 고성능 CUDA 구현을 제공합니다. 출력이 시점에서 과거와 현재 단계에만 의존하는 인과적 연산에 최적화된 전용 커널로 표준 PyTorch conv1d 연산을 대체합니다.

작동 방식

이 프로젝트는 커스텀 CUDA 커널을 구현하여 깊이 방향 1D 컨볼루션을 수행합니다. fp32, fp16, bf16 다중 정밀도 형식과 커널 크기 2, 3, 4를 지원합니다. 입력 텐서, 가중치, 선택적 편향 및 활성화 함수(SiLU 또는 Swish 등)를 인수로 받는 causal_conv1d_fn 함수로 PyTorch에 직접 통합됩니다.

대상 사용자

고성능 시계열 모델이나 상태공간 모델(SSM)을 개발하고 있으며, 인과 컨볼루션의 효율적인 저수준 CUDA 구현이 필요한 개발자 및 연구자.

주요 특징

  • 인과적 깊이 방향 1D 컨볼루션을 위한 최적화된 CUDA 커널.
  • fp32, fp16, bf16 정밀도 지원.
  • 커널 크기 2, 3, 4 지원.
  • 내장된 선택적 SiLU 및 Swish 활성화 함수 지원.
  • NVIDIA(CUDA) 및 AMD(ROCm) 하드웨어와의 호환성.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트