다음과 같이 해당 논문의 심각한 문제점들을 번역해 드리겠습니다:
이 논문에는 몇 가지 심각한 문제가 있는 것으로 보입니다: 계산된 커널들의 실제 검증이 이루어지지 않았으며, 일부 커널이 "더 빠른" 것처럼 보이는 이유는 단순히 제대로 작동하지 않기 때문입니다.
https://pub.sakana.ai의 특정 예시 (현재는 삭제됨)를 그들의 초록에서 "최적화"의 대표적인 사례로 언급했습니다.
수정: 안타깝게도 Sakana에서 자신들의 실수를 드러내는 페이지들을 삭제하기 시작한 것으로 보입니다. 위의 링크는 현재 작동하지 않습니다.
이 커널의 명백한 오류는 실행 구성이 잘못되어 좌측 상단의 원소만 계산한다는 점입니다:
```cpp
const int threadsPerBlock = 256; // 블록당 스레드 수 증가
const int numBlocks = N;
triangular_mm_kernel<<<numBlocks, threadsPerBlock>>>(
A.data_ptr<float>(), B.data_ptr<float>(), C.data_ptr<float>(), N
);
```
코드를 살펴보면, 이 커널은 x와 y 차원 모두에 대해 2차원 블록 크기가 필요합니다. 1차원 블록 크기만 지정함으로써 최상단 행만 계산되고 행렬의 대부분이 건너뛰어집니다.
직접 제 컴퓨터에서 이 커널을 실행해 보았고, 실제로 좌측 상단 모서리만 계산된다는 것을 확인했습니다.
그들이 주장하는 속도 향상은 단순히 정답을 제대로 계산하지 않은 결과입니다!
https://www.reddit.com/r/MachineLearning/comments/1itqrgl/p_sakana_ai_released_cuda_ai_engineer/
사요나라 ~
이 논문은 CUDA 커널에 관한 것이지만, SOTA(최신 기술) 라이브러리(CUTLAS, cuBLAS 등)와 비교하지 않았습니다. 만약 목표가 신경망을 자동으로 최적화하는 것이라면, 이미 TensorRT가 존재하며, 아마도 더 나은 성능을 보일 것입니다(참고로, 논문에서도 이를 비교하지 않았습니다). 아쉽게도, 지금 시점에서는 이 논문이 단순한 마케팅 자료처럼 보입니다. 앞으로 계속 개선하고 더 많은 벤치마크를 추가하길 바랍니다.
ai탑티어 회사는 규모,자본부터 다른데 지들끼리해낼수있다믿은것부터 잘못된 생각인거같긴함
흠.........기존 방법이 아닌 방법은 아직 성과 내는 게 없긴 하네......