Top.Mail.Ru

C# (JIT) vs Go (AOT): сравнение с точки зрения результата и процесса компиляции

Технологии и фреймворки
Производительность

Тезисы

C# и Go часто сравнивают как языки одной ниши веб-разработки. Споры обычно ведутся вокруг синтаксиса, удобства async, влияния GC, размера бинарей и скорости рантайма. Но почти никогда не предлагается сопоставление на уровне реального результата компиляции, хотя именно он определяет поведение программы на CPU.

Мы возьмём одинаковые примеры кода и сравним:

  • кто лучше делает inlining
  • как компиляторы устраняют bounds checks
  • как обрабатываются циклы, аллокации и escape analysis
  • даёт ли PGO и Tiered JIT конкурентное преимущество C#
  • как структура языка упрощает или усложняет работу компилятора

Ключевые темы и технологии

С# / .Net, go


Аудитория

Бэкенд-разработчик


Уровень сложности

Средний

¯\_('-')_/¯
Дмитрий Егоров

Разрабатывает информационные системы в Ozon, изучает компиляторы и все, что с ними связано.

Другие спикеры трека Технологии и фреймворки