Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Umiejętność pracy z MLIR (Multi-Level Intermediate Representation) i CIR do budowania kompilatorów dedykowanych dla konkretnych dziedzin. Zawiera wiedzę o hierarchicznych reprezentacjach pośrednich, dialektach (TensorFlow, PyTorch, Linalg, Affine), progresywnym obniżaniu abstrakcji oraz transformacjach kodu. Użyj tej umiejętności gdy projektujesz kompilatory do uczenia maszynowego, języki specjalistyczne lub pracujesz z wielopoziomowymi pipelinami kompilacji.
Jak używać
Zainstaluj umiejętność w swoim środowisku Claude/Copilot, wskazując ścieżkę do repozytorium gmh5225/awesome-llvm-security w katalogu .claude/skills/mlir-development.
Zdefiniuj swój dialekt poprzez utworzenie klasy dziedziczącej po mlir::Dialect — określ nazwę dialektu, zarejestruj operacje i typy danych, które będą dostępne w Twojej domenie.
Opisz operacje używając ODS (Operation Definition Specification) w plikach TableGen (.td) — dla każdej operacji zdefiniuj argumenty wejściowe, wyniki, właściwości (Pure, Commutative) i dokumentację.
Zbuduj pipeline transformacji poprzez łańcuchowanie przeć operacji na różnych poziomach abstrakcji — od dialektów wysokopoziomowych (TensorFlow, PyTorch) przez dialekty pośrednie (Linalg, Affine) aż do niskopoziomowych (LLVM, GPU).
Testuj progresywne obniżanie (lowering) między poziomami abstrakcji, upewniając się że każda transformacja zachowuje semantykę kodu i umożliwia optymalizacje specyficzne dla Twojej domeny.
Wykorzystaj bogatą infrastrukturę transformacji MLIR do implementacji optymalizacji wysokopoziomowych — takich jak fuzja operacji, eliminacja martwego kodu czy specjalizacja dla konkretnych architektur sprzętowych.