Sasha Goldshtein, гуру .NET Performance, выступит на .NET-конференции в Питере
В июне к нам на конференцию DotNext приедут две звезды .NET-программирования мирового уровня — Dino Esposito и Sasha Goldshtein.
Оба наших супергостя знамениты двумя вещами:
- они авторы прекрасных книг;
- они замечательные спикеры.
Про Дино я уже пару раз писал, и наверное напишу и в этот раз. А сегодня я расскажу вам про Сашу.
Саша Голдштейн / Sasha Goldshtein
Саша Голдштейн — ведущий мировой эксперт по производительности .NET-платформы, восьмикратный Microsoft MVP, автор прекрасной (и, наверное, единственной) серьезной книги по производительности .NET «Pro .NET Performance» (eng, rus).
Саша — наша большая удача: он приезжал в Москву в декабре на московский DotNext по приглашению Андрея Акиньшина aka DreamWalker, нашего друга, тоже .NET MVP, члена программного комитета DotNext. Саша восхитил аудиторию, несмотря на то, что рассказывал по-английски. Саша живет в Израиле, прекрасно говорит по-русски, но, по его собственному признанию, рассказывать на технические темы у него гораздо лучше получается на английском языке. И в его случае — это не понты и не выпендреж. Как я понял из разговора с ним, он просто никогда не выступал до этого на технические темы по-русски :)
Меня его доклады очень впечатляют. Как человек, которого прет от изучения рантаймов, я обожаю вот этот его доклад о том, как компиляторы .NET работают с векторизацией (System.Numerics.Vectors), используя SIMD-инструкции:
Через месяц в Питере на DotNext Саша сделает два доклада.
PerfView: Measure and Improve Your App’s Performance For Free
PerfView — бесплатный компактный инструмент от команды CLR, который помогает в исследовании производительности .NET-приложений. Он предлагает несколько уникальных фич для глубокого изучения объемных Performance-данных. Этот инструмент можно использовать даже для анализа проблем с производительностью на ARM-устройствах.
В этом докладе мы будем использовать PerfView для периодического измерения и улучшения CPU time, wall-clock time и использования памяти (да, PerfView может помочь вам и с поиском утечек памяти!).
The C++ and CLR Memory Models
Словосочетание «Модель памяти» обычно вселяет в разработчиков ужас, вгоняет в сон или даже вводит в кому. Глубокое понимание запутанных связей между компилятором, процессором и подсистемой памяти необходимо, если вы собираетесь написать низкоуровневую синхронизацию, код без блокировок или отлаживаться, пытаясь найти гонку в своем многопоточном коде. В этом докладе мы спустимся вниз в пропасть моделей памяти CLR и C++, ласково названной SC-DRF (см. у Шипилёва, начиная со слайда 32). Мы поговорим про volatile и atomic переменные, посмотрим на примеры реордеринга, которые делает компилятор и процессор, и увидим, как многопоточный код, который на первый (и даже второй) взгляд кажется корректным, в реальности нафиг разваливается на не-Intel-овских процессорах.
В реальности, это может дать вам по башке, если вы, например, пишите и тестируете код на Intel, а в продакшене живете в клауде и в какой-то момент решите переехать на ARM, PowerPC или еще что-то. В наше время — это все более часто случающаяся история. Ну или все прозаичнее: у вас есть многопоточный код для Windows RT или грядущий Win 10 for ARM. Тогда вам точно стоит в этом всем разобраться.
I’m super-happy to be back in St Petersburg for #dotnext 2016 with two hard-core .NET talks! https://t.co/1PxXOrMHxY @DotNextConf
— Sasha Goldshtein (@goldshtn) 29 апреля 2016 г.
Вот так вот хардкорно. Ну, а с полным списком докладов конференции можно ознакомиться тут.
P.S: мы с Мишей Щербаковым aka yu5k3, лидером SPb .NET Community, думаем позвать Сашу выступить на митапе днем раньше DotNext или днем позже. Так что следите не только за новостями DotNext, но и за новостями community тоже.