Pull to refresh
0

Разработка многопоточных приложений, HPC и дизайн интерфейсов

Reading time 6 min
Views 11K
   В четвертой серии второго сезона «5 недель с компанией Intel» мы плавно переходим от HPC к разработке многопоточных приложений — в том числе и для HPC. Гости нашей сегодняшней программы — два нижегородца, занимающихся разработкой интеловского пакета Parallel Studio: уже знакомый вам по прошлому сезону Владимир Цымбал, занимающийся поддержкой пользователей Intel Parallel Studio, и Анатолий Любомиров, разрабатывающий для этих инструментов интерфейсы.

image

   Поскольку эта серия продолжает сюжет про Parallel Studio, начатый год назад, мы настоятельно рекомендуем вам освежить в памяти первый разговор о Parallel Studio. В этой серии речь пойдет о совершенно новом продукте для параллельной разработки под названием Intel Parallel Studio XE.

Разговор первый — технический, с Владимиром Цымбалом


image

Расскажите про XE подробнее?

   Несмотря на маленькую приставочку, Parallel Studio XE — это не просто новая версия, а новый продукт. Уверен, будет бомба! С инженерной точки зрения это глобальное расширение концепции Parallel Studio: мы охватили не только поле Microsoft Windows, но пришли и на Linux, так что это будет кроссплатформенный продукт. Кроме того, мы немного зашли на территорию Microsoft и будем поддерживать .NET-приложения, написанные на языке C#. Это то, чего от нас ждали очень долго; основная претензия к Parallel Studio состояла в том, что продукт слишком простой и охватывает только приложения, написанные на C++ для Windows. Что же, мы ответили на пожелания пользователей и существенно расширили область применения Parallel Studio.

Кому может понадобиться кроссплатформенность?

   С одной стороны, мы не объединяем две платформы для одного разработчика, поскольку Parallel Studio XE — все же не средство кроссплатформенной разработки. Скорее, мы предлагаем разработчикам выбор — работать в Linux или Windows, включая .NET. С другой стороны, если разрабатывается кроссплатформенный продукт для Linux и Windows, то преимущества применения новой версии XE налицо. Кроме того, в XE воплощен внушительный список новых возможностей, которых не было и не будет в обычной версии Parallel Studio.

Какова целевая аудитория у PS XE?

   Все разработчики, которые пишут клиент-серверные приложения и HPC-приложения. Мы пока не захватываем приложения для встраиваемых систем (например, для нашего же Intel Atom), но это дело будущего. А так — большой срез приложений, которые разрабатываются на C, C++, C# и FORTRAN.

image

Некоторые люди, занимающиеся HPC, предпочитают аккуратно писать параллельный код и не трогают Parallel Studio.

   Действительно, до выхода новой версии XE, о которой мы говорим, пакет Parallel Studio не применялся в HPC-приложениях, поскольку их подавляющее большинство написано для UNIX/Linux-систем. А так — возьму на себя смелость утверждать, что безошибочно написать параллельное приложение, даже будучи очень аккуратным, практически невозможно. Есть компании, у которых огромный опыт разработки приложений и крупные коммерческие проекты, которые существуют много лет. Мы были в таких компаниях и убеждали их использовать наши инструменты; во многих случаях даже пробный запуск Parallel Studio в буквальном смысле открывал разработчикам глаза: оказывалось, что приложение работает таким причудливым образом, о котором сами разработчики даже не подозревали. Инструмент помогает сделать новый срез работы параллельного приложения даже несмотря на то, что разработчики пребывают в уверенности, что они знают, как именно работает их код. Уникальной особенностью Parallel Studio является простота и интуитивная понятность; не нужно проходить специальные курсы или получать какие-то сакральные знания о том, как пользоваться PS. Наши инженеры сделали все, или почти все возможное, чтобы освоить пакет было не сложнее, чем Microsoft Visual Studio, в которую PS и интегрируется.

Версия XE уже доступна?

   Да, но только в рамках бета-программы. Как и обычная версия, пакет состоит из нескольких отдельных проектов, но уже с приставками XE: Composer XE (компилятор C++ и Fortran, а также библиотеки MKL, IPP, TBB), Inspector XE (Thread Checker и Memory Checker) — они все доступны в рамках открытой бета-программы, так что вы можете зарегистрироваться и попробовать XE самостоятельно. Есть еще один продукт, который называется VTune Amplifier XE, это продолжение нашего старого продукта VTune, и вот оно доступно только тем пользователям, которые уже являются обладателями наших инструментов.

Когда релиз?

Мы не говорим о датах, но надеемся, что релиз будет в этом году.

   Конечно же, я с удовольствием отвечу на все технические вопросы читателей Хабра, касающиеся разработки параллельных приложений и Intel Parallel Studio всех версий.

Разговор второй — творческий, с Анатолием Любомировым


С Владимиром вы уже знакомы, а вот Анатолия стоит представить. Вот как он сам рассказывает о себе:

image

   «По образованию радиофизик, кафедра электродинамики. Должен был заниматься плазменным оружием, но не случилось — выходит, я уже спас мир тем, что не изобрел плазменную пушку. В Intel я с 2002 года; начинал, кем-то вроде программиста-тестировщика — есть такой род занятий, называющийся product validation. Ближайший аналог это советская система ОТК (отдел технического контроля), когда ты смотришь на готовый продукт (например, телевизор), и ставишь штампик ОТК, или не ставишь его. Со временем мне этого показалось мало, и последние четыре года я занимаюсь тем, чем всегда мечтал заниматься — разработкой пользовательских интерфейсов и usability, в частности, проектирую интерфейс для Parallel Studio XE. Люблю рисовать, слушать людей и не торопиться делать выводы, поскольку usability — больше чем наполовину психология».

Как так получилось, что Вы занимаетесь в Intel usability?

   Надо сказать, что даже учитывая огромное число прекрасных программистов в Intel, в какой-то момент руководство посчитало, что необходимо обращать внимание и на такие вещи, как usability, user-centered design, на то, чтобы во главе угла стояла модель использования конкретного продукта. В тот момент, когда эту тему в очередной раз подняли, я выразил желание заняться всем этим — и занялся.

Вы занимаетесь интерфейсом нового продукта XE. Как строится работа?

   Никакого новаторства нет — мы пытаемся определить пользователя, сформулировать нашу ЦА, составить краткий портрет нашего пользователя. Вместе с маркетологами описываем, что же должен делать наш продукт, каким задачам он должен отвечать.

image
Пример мозгового штурма, записанного в графическом редакторе.

   На основе этих вводных начинается исследование конкурентных продуктов; для каждой из целей продукта записывается то, что называется flow (один из возможных путей взаимодействия пользователя и продукта — прим.авт.).

image

image
Иногда для обсуждения логики поведения приложения я использую примерно такие схемы.

   Все эти этапы достаточно документоемкие, хотя, конечно, мы обходимся без бумаги и используем электронный документооборот. Затем создается paper prototype, от руки нарисованный скетч — правда, в моем случае это PowerPoint с отдельными экранами приложения:

image

Обычно последовательность экранов выстроена вдоль определенного workflow:

image

   Ими я пытаюсь прощупать почву со всеми участниками разработки продукта — нравится ли им предложеная модель интерфейса, или нет, согласны ли они с выбранным направлением, или не вполне.

В середине процесса разработки прорисовываются отдельные элементы:

image

Заканчивается все это толстой спецификацией страниц эдак на 80–120:

image

В спецификациях используются картинки другого уровня детализации, с пояснениями и так далее:

image

image

Затем мой дизайн тестируется двумя парнями из Орегона (на фотографии не они):

image

Вы используете какие-то инструменты прототипирования вроде Axure RP или Fireworks?

   Я несколько раз пользовался инструментом Captivate, он позволяет ввести минимальный интерактив в прототипы. Результаты хорошие, но довольно трудоемкие. В ежедневной работе я общаюсь примерно с сотней программистов; это совершенно прекрасно, но рук хватает далеко не на все. Кроме того, я думаю, что Intel сейчас находится не на той стадии, чтобы бросать более существенные ресурсы на usability — в конце концов, мы делаем профессиональные инструменты, использованию которых в любом случае нужно учиться. Наши инструменты (компилятор, профилировщик или чекер) для профессиональных программистов.

   Про ресурсы, которые Intel выделяет на usability, спорный тезис. Я регулярно интересуюсь у интеловских боссов по поводу того, что они думают про назревающий сдвиг интерфейсной парадигмы. У нас перед глазами есть пример фирмы Apple, которая во многом делает ставку именно на интерфейс, и в общем-то не прогадывает.

   Ха, меня за обедом коллеги постоянно поддразнивают по поводу Apple. А если серьезно, то мы видим, куда стремиться, и я стараюсь смотреть в сторону более качественного дизайна интерфейсов. Кроме того, напомню, что Apple делает продукты для массового пользователя, а нижегородский офис Intel, где я работаю, занимается программными продуктами мирового уровня, ориентированными на профессионального пользователя, и это два разных мира и, разумеется, два совершенно разных подхода к разработке интерфейса.

Кумиры в области usability?

У меня на книжной полке стоит Алан Купер, а остальные книги — по рисованию. Люблю рисовать.

О чем Вам было бы интересно поговорить с участниками Хабрахабра?


   Знаете, мне чрезвычайно приятно оказаться на Хабрахабре. Коллеги часто присылают ссылки на материалы отсюда, да и я сам заглядываю, так что я с уважением и неким трепетом внутри отношусь к предложенной мне возможности поучаствовать в этом проекте на Хабрахабре. У меня ни в коем случае нет желания меряться количеством знаний с теми участниками Хабра, которые давно занимаются разработкой интерфейсов, скорее, хотелось бы поделиться опытом как с другими разработчиками интерфейсов, так и с теми, кому близка эта тема.

+ Победителем на прошлой неделе, посвященной рассказу о HPC, стал пользователь VenomBlood, с чем мы его и поздравляем.
Не стесняйтесь вступать в ряды читателей компании Intel на Хабре.

Спасибо за внимание, продолжение следует. Успехов!
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
+22
Comments 58
Comments Comments 58

Articles

Information

Website
www.intel.ru
Registered
Founded
Employees
5,001–10,000 employees
Location
США
Representative
Анастасия Казантаева