[BUG]: FFT sample launches `Batch` blocks that each process the full batch
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 68/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- python
- Lĩnh vực
- performance
Hướng nghiên cứu
Bắt đầu trong samples/FFT.py tại cutile_fft(), xung quanh phép gán BS ở dòng 274 và lần khởi chạy grid ở dòng 315, sau đó đọc fft_kernel để theo dõi cách bid chọn tile của nó. Chạy mẫu FFT với cấu hình N=512 và batch=64 đã được báo cáo, đồng thời xác minh rằng đầu ra vẫn đúng về mặt số học trong khi khối lượng công việc của kernel và thời gian chạy tăng tuyến tính theo batch.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Version
1.5.0
Version
13.3
Describe the bug.
In samples/FFT.py, cutile_fft() sets the kernel constant BS to the full batch size (BS = x.shape[0], line 274) and also launches grid = (BS, 1, 1) (line 315). Inside fft_kernel every block loads a (BS, N*2//D, D) tile at index (bid, 0, 0) — i.e. every block loads and transforms the entire batch, then writes it out. The result is numerically correct, but the work is O(Batch²) instead of O(Batch), and the kernel spills registers / shared memory at modest batch sizes.
Expected: one block per batch item (or per fixed-size minibatch), with the grid sized Batch // BS, so cost scales linearly with batch.
Measured on a DGX Spark, N=512, batch=64, factors=(8,8,8), twiddles precomputed: kernel time 2376 µs -> 12 µs (~200x) after fixing the grid/BS relationship.
Contributing Guidelines
- I agree to follow cuTile Python's contributing guidelines
- I have searched the open bugs and have found no duplicates for this bug report
- Ngôn ngữ chính
- Python
- Star
- 2.2k
- Fork
- 155
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của NVIDIA/cutile-python
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
NVIDIA/cutile-python#105 · 2 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 68/100
NVIDIA/cutile-python#101 ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
NVIDIA/cutile-python#97 · 1 bình luận ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
NVIDIA/cutile-python#96 · 1 bình luận ·
-
bug
NVIDIA/cutile-python#95 · 1 bình luận · 1 người được giao ·
Tất cả issue của NVIDIA/cutile-python
Issue tương tự
-
essnmx good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
-
[Feature] 奇物选择添加优先级 Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
syfoud/Simulated_Scepter#174 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Giskard-AI/giskard-oss#2840 · 1 bình luận ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success Đang mởarea: repo bug perceived difficulty: 2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
yeti-platform/yeti#1380 ·