В июне к нам на конференцию 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. Тогда вам точно стоит в этом всем разобраться.






Вот так вот хардкорно. Ну а с полным списком докладов конференции можно ознакомиться тут.

P.S: мы с Мишей Щербаковым aka yu5k3, лидером SPb .NET Community, думаем позвать Сашу выступить на митапе днем раньше DotNext или днем позже. Так что следите не только за новостями DotNext, но и за новостями community тоже.

Комментарии (3)


  1. ZOXEXIVO
    04.05.2016 13:13
    +4

    Одна из самых интересных и полезных книг по .NET


    1. 23derevo
      04.05.2016 14:08

      Я, к сожалению, читал ее не целиком. У меня есть печатный русский вариант, но перевод не очень, и до конца его я не осилил. Английскую версию купил в амазоне, но руки пока не доходят взяться. Вы по-русски или по-английски читали? Что скажете?


      1. ZOXEXIVO
        04.05.2016 14:34

        Читал русскоязычный вариант, но странностей перевода не заметил