Вакансія
З партнерського стрічки
Інженер продуктивності компілятора
Ціна за запитом
Деталі
- Тип зайнятості
- Повна зайнятість
- Віддалено
- Так
- Компанія
- Azul
Опис
Автоматичний переклад з English. Оригінальний текст є авторитетним. Машинний переклад — готується точніший варіант.
Falcon — це своєчасно оптимізований компілятор (JIT) у Azul Platform Prime. Він компілює гарячий байт-код Java у високооптимізований машинний код і забезпечує продуктивність Java, якої стандартні JVM не досягають. Falcon побудовано на LLVM.
Ми шукаємо інженера компілятора, який змусить Falcon генерувати ще швидший код. Це не зовнішня роль компілятора і не компілятор, створений з нуля: компілятор існує, працює у виробництві на великих підприємствах, і ваше завдання полягає в тому, щоб знайти, де згенерований код працює повільніше, ніж має бути, і виправити це в оптимізаторі та генераторі коду.
Ви приєднаєтеся до розподіленої команди експертів із компіляторів і працюватимете над реальними робочими навантаженнями з прямим, вимірним впливом на продуктивність клієнтів.
Що ви робитимете (або обов'язки)
• Аналізуйте продуктивність тестів Java і робочих навантажень клієнтів, знаходьте прогалини в згенерованому коді та відстежуйте їх першопричину в компіляторі
• Впроваджуйте та вдосконалюйте оптимізацію в середній і бек-енді Falcon: вбудовування, оптимізація циклу, векторизація, усунення надмірності, спекулятивна оптимізація та їх взаємодія з середовищем виконання
• Покращено генерацію коду для x86_64 і AArch64
• Напишіть тести та контрольні показники, які підтверджують покращення та захищають його від регресії
• Внесіть зміни до LLVM, де це має сенс
Що ви принесете (досвід, навички)
• 2+ роки професійного досвіду в компіляторах, компіляторах JIT або низькому рівні продуктивності
• Сильні навички проектування та програмування C++
• Тверде розуміння теорії оптимізації компілятора: SSA, аналіз потоку даних, перетворення циклу
• Здатність читати збірку та міркувати, чому одна послідовність інструкцій швидша за іншу
Дуже приємно мати
• Досвід роботи з проходами оптимізації LLVM IR та LLVM або з іншим оптимізуючим компілятором, таким як HotSpot C2, Graal, GCC або V8
• Досвід роботи з профайлерами, такими як perf, VTune або асинхронний профайлер
• Знання мікроархітектури x86_64 та/або AArch64
• Досвід роботи з Java, Scala або Kotlin, або з внутрішніми компонентами JVM
• Магістр наук або доктор філософії з комп’ютерних наук із фокусом на компіляторі чи продуктивності
Спочатку опубліковано на Гімалаях
Джерело: Himalayas (https://himalayas.app/companies/azul/jobs/compiler-performance-engineer)
Ми шукаємо інженера компілятора, який змусить Falcon генерувати ще швидший код. Це не зовнішня роль компілятора і не компілятор, створений з нуля: компілятор існує, працює у виробництві на великих підприємствах, і ваше завдання полягає в тому, щоб знайти, де згенерований код працює повільніше, ніж має бути, і виправити це в оптимізаторі та генераторі коду.
Ви приєднаєтеся до розподіленої команди експертів із компіляторів і працюватимете над реальними робочими навантаженнями з прямим, вимірним впливом на продуктивність клієнтів.
Що ви робитимете (або обов'язки)
• Аналізуйте продуктивність тестів Java і робочих навантажень клієнтів, знаходьте прогалини в згенерованому коді та відстежуйте їх першопричину в компіляторі
• Впроваджуйте та вдосконалюйте оптимізацію в середній і бек-енді Falcon: вбудовування, оптимізація циклу, векторизація, усунення надмірності, спекулятивна оптимізація та їх взаємодія з середовищем виконання
• Покращено генерацію коду для x86_64 і AArch64
• Напишіть тести та контрольні показники, які підтверджують покращення та захищають його від регресії
• Внесіть зміни до LLVM, де це має сенс
Що ви принесете (досвід, навички)
• 2+ роки професійного досвіду в компіляторах, компіляторах JIT або низькому рівні продуктивності
• Сильні навички проектування та програмування C++
• Тверде розуміння теорії оптимізації компілятора: SSA, аналіз потоку даних, перетворення циклу
• Здатність читати збірку та міркувати, чому одна послідовність інструкцій швидша за іншу
Дуже приємно мати
• Досвід роботи з проходами оптимізації LLVM IR та LLVM або з іншим оптимізуючим компілятором, таким як HotSpot C2, Graal, GCC або V8
• Досвід роботи з профайлерами, такими як perf, VTune або асинхронний профайлер
• Знання мікроархітектури x86_64 та/або AArch64
• Досвід роботи з Java, Scala або Kotlin, або з внутрішніми компонентами JVM
• Магістр наук або доктор філософії з комп’ютерних наук із фокусом на компіляторі чи продуктивності
Спочатку опубліковано на Гімалаях
Джерело: Himalayas (https://himalayas.app/companies/azul/jobs/compiler-performance-engineer)
Це оголошення надходить із партнерського фіду. Подайте заявку на сайті джерела.
Джерело: Azul
Оголошення надано Azul.