Дмитpий Hecтepук - Высокопроизводительные вычисления на С/С++
Многие из нас знают про питерский JetBrains, и если хоть раз сталкивалось с программированием для Android или .NET скорее всего любит. Любит за IntelliJ IDEA/Android Studio, ReSharper и многие другие средства разработки. И если на собрание Си++ разработчиков приходит "технический евангелист" из такой уважаемой фирмы, то он сразу получает большой кредит доверия
Кроме всего прочего Дмитрий Нестерук является MVP (Most-valuable Professional) по Visual C# с 2009 года. Он разработчик курсов на PluralSight по Matlab и CUDA, любит заниматься финансовой математикой (чтобы это ни значило), закончил британский университет в Саутгемптоне, и живет в Швеции. Всё говорило за то, что его длинная, полуторачасовая презентация должна быть очень интересна и полезна аудитории ("она же про HPC/высокопроизводительные вычисления!"), но...
Dmitry Nesteruk on HPC - is the next #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Dmitry Nesteruk is the technical evangelist in JetBrains #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Начал Дмитрий с рассказа про управляемый (managed) и нативный код. И перешел сразу же к управляемому коду. Что, конечно, слегка напрягало, т.к. аудитории это было в-общем то чуждо.
Смешно он переносимость на русском называет - "портативность" #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Не знаю почему, может в силу больших ожиданий от "евангелиста", мне периодически казалось что Дмитрию непривычно и некомфортно выступать на русском. Например, иногда смешили переводы на русский некоторых терминов, так он применял "портативный" вместо "переносимый" для "portable". Кажется, просто не хватило адекватного review данной презентации.
He has an impression that Microsoft JIT-compiler does not use SSE* at alll (worth to check) #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Как и в каждой презентации про HPC было рассказано про disk-bound vs cpu-bound, параллелизм, SIMD/SSE* (и не сказано про AVX).
Shows Incredibuild demo which uses cloud for remote concurrent compilation #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
JetBrains пытается ускорить все стадии циклов разработки, начиная от редактирования и заканчивая параллельной сборкой. На этом месте Дмитрий показал Incredibuild как средство параллелизации построения большого проекта (привет DISTCC)
Dmitry is a big fan for hw solution for parallelism extensions: gpgpu, fpga, xeon phi, etc #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
He thinks tha CUDA is wider and better used than OpenCL #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
CUDA is really flavour of managed code #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Далее он перешел к рассказу про высокоуровневые технологии параллелизации/векторизации вычислений: CUDA (сказал много) vs OpenCL (сказал почти ничего). Когда надо больше параллелизма (но нет еще достаточно мотивации и денег на реальный кластер) то технологии FPGA и Xeon Phi могут помочь как ускорители вычислений работающих на desktop компьютерах.
А еще он смешно AMD всегда ATI зовёт Где он был последние несколько лет? #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Some attendees think we are getting far, far away from C++ here. CUDA is not very much ontopic here indeed.#cpp #moscow still hope
— Timur Safin (40+) (@tsafin) 15 февраля 2014
В этом месте некоторая часть аудитории достигла точки кипения и все-же спросила: "Когда же про Си++ то начнем?". Резонный вопрос.
He is good proponent of easiness of porting to Xeon Phi/MIC because of software stack elegance #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Интеловские технологии Xeon Phi aka MIC, большим фанатом которых с недавних пор Дмитрий является, стали пожалуй спасителями презентации и впервые он говорил собственно о Си++ (Intel C++ compiler) и как его применять для компиляции MIC кода.
and as the bonus he showed their C++ IDE. Still barebones enough. #cpp #moscow
— Timur Safin (40+) (@tsafin) 15 февраля 2014
Ну и чтобы Си++ разработчики не чувствовали себя совсем обманутыми нам под конец еще раз показали текущее состояние дел их (JetBrains) кросс-платформенной среды разработки Си++ со всеми, свойственными JetBrains пирогами и плюшками (удобные средства рефакторина и кодогенерации). Но вы скорее всего это уже видели на Хабре месяц назад. И должен признаться, что визуально это пока не очень впечатляет, выглядит не сильно лучше чем KDE редактор Kate, к которому приделали меню рефакторинга. В-прочем, на таком раннем этапе развития продукта никто большего и не ожидал.
В-целом, выступление Дмитрия оставило двойственное впечатление: с одно стороны рассказ про технологии, скорее всего был многим полезен, но все-же его надо читать в другое место и другое время, это был очень сильный оффтопик для группы пользователей Си++. Персонально я не узнал ничего нового, и лучше бы еще какой материал про Си++11/14 послушал. Слишком много интересного происходит последние пару лет собственно в языке Си++, чтобы тратить время на такие общеобразовательные лекции. Извините.
Комментариев нет :
Отправить комментарий