Оберон-клуб «ВЄДАsoft»

Твердыня модульных языков
Текущее время: 28 мар 2024, 15:37

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Эдвард А. Ли. Проблемы с потоками
СообщениеДобавлено: 11 авг 2016, 22:38 
Не в сети
Аватара пользователя

Сообщения: 1019
Откуда: Днепропетровская обл.
Эдвард А. Ли

© 2006 г.

Отделение электротехники и информационных технологий
Университет штата Калифорния
Беркли


Перевод Александра Петрова
© 2007 г.

Аннотация

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

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

В основе модели вычислений должны лежать детерминированные компоненты, а не средства сокращения недетерминизма. Нужно иметь возможность добавить недетерминизм при необходимости, а не возможность убрать его при “ненужности”. Другими словами не следует искать средства для борьбы с недетерминизмом в исконно недетерминированной модели, нужно создать детерминированную модель параллельных вычислений с возможностью добавления недетерминизма при необходимости. В действительности этот принцип может коренным образом изменить текущее положение дел. Необходимо разработать язык управления параллелизмом, причем этот язык должен опираться на надежные и понятные конструкции. Я уверен, что такой язык обеспечит возможность создания более надежных программ с высокой степенью параллелизма.

http://www.softcraft.ru/parallel/pwt/pwt.pdf


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
© VEDAsoft Oberon Club