at-dispatch-v2
Automatycznie konwertuj stare makra AT_DISPATCH na nowy format AT_DISPATCH_V2 w kodzie ATen C++.
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill do szybkiej konwersji zastarzeałych makr AT_DISPATCH_* na nowy API AT_DISPATCH_V2 w kodzie PyTorch. Przydatny podczas modernizacji kerneli ATen, implementacji operatorów natywnych i kerneli CUDA. Automatycznie zmienia kolejność argumentów, opakowuje lambdy w AT_WRAP, rozszerza grupy typów za pomocą AT_EXPAND i dodaje wymagane include. Oszczędza czas przy refaktoryzacji dużych baz kodu, gdzie dispatch macros są rozproszone w wielu plikach.
Jak używać
Zainstaluj skill w swoim środowisku Claude/Copilot, wskazując repozytorium PyTorch jako źródło.
Otwórz plik C++ z kodów ATen zawierający stare makra AT_DISPATCH_ALL_TYPES_AND*, AT_DISPATCH_FLOATING_TYPES* lub inne warianty AT_DISPATCH_*.
Dodaj nagłówek Dispatch_v2.h obok istniejącego include Dispatch.h na górze pliku. Skill może zasugerować to automatycznie lub możesz dodać ręcznie:
#include <ATen/Dispatch_v2.h>.Wskaż skill na konkretne makro AT_DISPATCH_* do konwersji. Skill przeanalizuje strukturę: identyfikuje typ skalara, nazwę kernela, ciało lambdy i listę typów.
Skill przepisuje makro na format AT_DISPATCH_V2: przesuwa scalar_type i name na początek, opakowuje lambdę w AT_WRAP(), rozszerza grupy typów za pomocą AT_EXPAND(AT_ALL_TYPES) i dodaje dodatkowe typy (kHalf, kBFloat16) na końcu.
Przejrzyj wygenerowany kod, upewnij się że logika lambdy pozostała niezmieniona, i zatwierdź zmianę w pliku.