Как стать автором
Обновить
0

Побочные эффекты распараллеливания

Время на прочтение2 мин
Количество просмотров16K
image
Сейчас я скажу о том, что все знают и о чем говорят уже несколько лет. Параллельное программирование неизбежно. Я знаю, что прозвучало это банально! Но я специально выделил это в отдельный маленький пост, в надежде кто-то задумается над этой простой фразой чуть дольше. Часто то, о чем мы регулярно слышим, теряет всякий для нас смысл и не приводит к размышлениям и выводам. Попробуем же сделать несколько этих выводов.

Когда мы слышим о параллельном программировании и преимуществах, которые оно дает, мы сразу ассоциируем это с тематикой роста количества ядер на кристалле и о возможном приросте производительности приложений. Еще при этом мы вспоминаем о технологиях параллельного программирования (MPI, POSIX Threads, OpenMP) и инструментах.

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

image
Специалистов, способных писать параллельные программы и имеющих соответствующий опыт, крайне мало. В ближайшее время можно ожидать кризис кадров в этой области. То, что в институтах сейчас массово вводятся курсы по параллельному программированию, не в счет. Конечно, это увеличит количество специалистов, но не значительно и очень постепенно. Как всегда только несколько человек в группе будут понимать, о чем речь и изучать это, остальные просто «прослушают курс лекций». Таким образом, быстро увеличить количество программистов за счет введения новых курсов не получится.

Определенным опытом параллельного программирования обладают люди в академических кругах. Не хочется обидеть этих людей. Действительно, часто можно встретить высококвалифицированных разработчиков создающих параллельные системы и разбирающихся в предметной области, для которых эти системы предназначены. Но их навыки чаще всего не сочетаются с промышленной разработкой ПО. Я не знаю чем это вызвано. Но в нашей стране разработка академических программных проектов и прикладного программного обеспечения для пользователей, это как бы две совершенно разных области. Можно дискутировать на эту тему, но не хочется. Считайте это просто моим ничем неподкрепленным мнением.

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

image
В связи со сменой технологии программирования, произойдет перераспределения рынка некоторых решений. Будут области, где основные производители упустят из вида актуальность адаптации своей продукции для параллельных систем. Для ряда клиентов это критично, и они будут вынуждены искать альтернативные решения. Это удачный момент выхода на рынок с новым решением или просто возможность забрать себе клиентов у неповоротливых компаний.

Поэтому второй вывод — менеджерам проектов разумно проанализировать, как освоение параллельности может помочь повысить конкурентоспособность их решений. И именно с точки зрения конкурентоспособности в кратко- и долгосрочной перспективе преподнести свои услуги заказчику.

На этом все. Надеюсь, кто-то продолжит в голове у себя эти рассуждения и найдет полезное зерно. Уверен — мысль может пойти и по другим маршрутам. Удачных размышлений! :)
Теги:
Хабы:
Всего голосов 57: ↑46 и ↓11+35
Комментарии85

Публикации

Информация

Сайт
www.intel.ru
Дата регистрации
Дата основания
Численность
5 001–10 000 человек
Местоположение
США
Представитель
Анастасия Казантаева

Истории