Compiler Performance Engineer in Katowice

Compiler Performance Engineer in Katowice

Katowice Pełny etat 135000 - 165000 zł / rok (szac.) Hybrydowo
A

W skrócie

  • Zadania: Poprawiaj wydajność aplikacji na procesorach AMD, analizując kod maszynowy i optymalizując kompilatory.
  • Firma: AMD - innowacyjna firma technologiczna z kulturą współpracy.
  • Benefity: Konkurencyjne wynagrodzenie, benefity zdrowotne, praca zdalna i rozwój zawodowy.
  • Pozostałe informacje: Dynamiczne środowisko z doskonałymi możliwościami rozwoju kariery.
  • Dlaczego ta praca: Pracuj nad nowoczesnymi technologiami i wpływaj na przyszłość AI.
  • Kwalifikacje: Doświadczenie w analizie wydajności kompilatorów oraz umiejętności programowania w C/C++.

Przewidywane wynagrodzenie mieści się w przedziale 135000 - 165000 zł za rok.

W AMD naszym celem jest budowanie wspaniałych produktów, które przyspieszają doświadczenia związane z obliczeniami nowej generacji - od AI i centrów danych, po komputery PC, gry i systemy wbudowane. Opierając się na kulturze innowacji i współpracy, wierzymy, że prawdziwy postęp pochodzi z odważnych pomysłów, ludzkiej pomysłowości i wspólnej pasji do tworzenia czegoś niezwykłego. Kiedy dołączysz do AMD, odkryjesz, że prawdziwym wyróżnikiem jest nasza kultura. Przekraczamy granice innowacji, aby rozwiązywać najważniejsze wyzwania świata - dążąc do doskonałości w wykonaniu, będąc bezpośrednimi, pokornymi, współpracującymi i otwartymi na różnorodne perspektywy. Dołącz do nas, gdy kształtujemy przyszłość AI i nie tylko. Razem rozwijamy Twoją karierę.

Rola: Ta rola koncentruje się na poprawie wydajności aplikacji na procesorach AMD poprzez analizę wyników kompilatora, zachowania po linkowaniu i cech kodu maszynowego w rzeczywistych aplikacjach. Będziesz współpracować z zespołami kompilatorów i wydajności AMD, aby zidentyfikować nieefektywności w generowanym kodzie, udoskonalić potoki optymalizacji (w tym transformacje oparte na MLIR/LLVM) oraz wnosić ukierunkowane ulepszenia, które zwiększają wydajność na architekturach AMD. Stanowisko to wiąże się z głęboką analizą techniczną zastrzeżonych obciążeń, współpracą z wewnętrznymi specjalistami oraz dostarczaniem praktycznych wskazówek, które wzmacniają pozycję wydajności AMD wśród kluczowych partnerów oprogramowania.

Kluczowe obowiązki:

  • Analiza kodu maszynowego x86 64 generowanego przez kompilator w celu zidentyfikowania nieefektywności i pominiętych optymalizacji.
  • Praca z MLIR i LLVM IR w celu inspekcji transformacji, diagnozowania problemów i poprawy zachowania obniżania.
  • Opracowywanie lub udoskonalanie przejść optymalizacyjnych MLIR/LLVM, które zwiększają wydajność na architekturach AMD.
  • Refaktoryzacja kodu C/C++ w celu poprawy automatycznej wektoryzacji, transformacji pętli i wzorców dostępu do pamięci.
  • Używanie narzędzi profilujących do identyfikacji wąskich gardeł wydajności na poziomie IR, kompilatora lub binariów.
  • Współpraca ze specjalistami kompilatorów AMD w zakresie wyboru instrukcji, alokacji rejestrów oraz heurystyk optymalizacji i optymalizacji po linkowaniu.

Preferowane doświadczenie:

  • Doświadczenie w analizie problemów wydajnościowych w potokach kompilatorów lub generowanych binariach.
  • Silna znajomość LLVM, MLIR i nowoczesnych technik optymalizacji kompilatorów.
  • Solidne umiejętności programowania w C/C++ z naciskiem na kod przyjazny dla kompilatora.
  • Umiejętność czytania i rozumienia asemblera x86 64, w tym instrukcji SIMD.
  • Znajomość narzędzi profilujących (perf, VTune, profiler MSVC).
  • Zrozumienie podstaw architektury CPU (potoki, pamięci podręczne, przewidywanie gałęzi).
  • Doświadczenie z systemami kontroli wersji, takimi jak Git.

Dodatkowe doświadczenie:

  • Praktyczne doświadczenie z intrinsics SIMD (SSE, AVX, AVX2, AVX 512).
  • Znajomość API współbieżności i wątków.
  • Doświadczenie z narzędziami na poziomie binarnym (objdump, perf annotate, LLVM MCA).
  • Znajomość Pythona lub JavaScriptu do narzędzi.
  • Komfort pracy w środowiskach Linux i Windows.

Wykształcenie: Co najmniej BS/MS w dziedzinie informatyki, inżynierii komputerowej lub pokrewnej.

Compiler Performance Engineer in Katowice – pracodawca: AMD

AMD to doskonały pracodawca, który oferuje wyjątkowe możliwości rozwoju zawodowego w dynamicznym środowisku pracy. Nasza kultura opiera się na innowacyjności i współpracy, co pozwala pracownikom na realizację ambitnych projektów w dziedzinie architektury GPU i technik renderowania. Pracując z nami, będziesz miał szansę na publikacje w czołowych czasopismach oraz wpływ na kierunki rozwoju produktów, a także na budowanie zespołu o wysokiej wydajności i różnorodności.

A

Dane kontaktowe:

Zespół rekrutacyjny AMD

Naszym zdaniem te umiejętności pozwolą ci błyszczeć jako Compiler Performance Engineer in Katowice

Analiza kodu maszynowego x86 64
Optymalizacja kompilatorów
MLIR
LLVM
Programowanie w C/C++
Zrozumienie asemblera x86 64
Narzędzia profilujące (perf, VTune, MSVC profiler)