Logo Host-telecom.com — профессиональный хостинг в Европе! Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

ATLEX Выделенные серверы: в Европе / в России.

Виртуальные серверы: в Европе / в России.

Партнерская программа

Хостинг + Certum Commercial SSL и домен в подарок

VPS: SSD, KVM, бесплатные бэкапы и администрирование 24/7

Бесплатный перенос сайта + подарки к новоселью

хостинг сайтов ГиперХост — хостинг сайтов который Вы искали.

Виртуальный хостинг, Аренда VPS серверов, рация доменных имен, SSL сертификаты

Рабы закона Мура

Страницы: предыдущая :: 1 :: 2 :: 3

Будущее

Тенденции настоящего, к сожалению, дают все основания ожидать, что в будущем рабство программистов не только сохранится, но и существенно усилится. Пока что на многоядерность процессоров можно закрыть глаза. В конце концов, два или даже четыре ядра благополучно может использовать сама операционная система, ничего не говоря о их наличии пользователям, а просто выполняя на них отдельные, никак не взаимодействующие приложения. Но ведь беда-то в том, что закон Мура продолжает действовать, и теперь, похоже, выражается в геометрическом возрастании числа ядер в микропроцессоре. Что, господа, вы будете делать с 1000-ядерным микропроцессором? Какие услуги должна предоставлять пользователям операционная система компьютера с таким микропроцессором? Что и как будет считаться на таком компьютере?

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

В будущем нас ждет еще одна компьютерная проблема – многопоточные (multithreading) микропроцессоры. На аппаратном уровне идея кажется мне замечательной. В современных процессорах основные задержки при выполнении очередной команды возникают в том случае, когда эта команда и/или требуемые для ее данные не обнаруживаются в кэше процессора. В этом случае производится обращение к основной памяти, и длительность этой операции такова, что может привести к остановке всех конвейеров процессора. В многопоточном процессоре на уровне аппаратуры поддерживается несколько потоков управления со своими контекстами. Если в некотором потоке требуется обращение к основной памяти, этот поток блокируется, и производится очень быстрое (однотактовое) переключение процессора на поток управления, готовый к продолжению выполнения. Легко видеть, что при достаточно большом числе потоков управления, поддерживаемых аппаратурой, компьютер, основанный на таком процессоре, будет работать с пиковой скоростью процессора.

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

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

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

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

Но, пардон, уже слышны известия о многопоточных процессорах от Sun Microsystems. Пускай, это пока не очень серьезно: восьмиядерный процессор Niagara-2 c поддержкой восьми потоков в каждом ядре. Но закон Мура-то действует. И кто знает, не станут ли многоядерные процессоры со временем массовыми. И что мы будем с ними делать? Что такое «универсальная» операционная система для многопотокового процессора? Может ли она вообще существовать? Задачка-то посерьезнее будет, чем для многоядерных однопотоковых процессоров.

Так что и в будущем останемся мы рабами закона Мура, и чтобы перестать быть его рабами, нужно либо научиться хорошо использовать то, что получается у разработчиков процессоров, либо предложить им новые идеи, которые привели бы к архитектурам, более пригодным для программистов. И тогда закон Мура перестанет нас давить, а будет лишь помогать.

Страницы: предыдущая :: 1 :: 2 :: 3

CITKIT.ru
Цикл "Операционные системы:
Ностальгия по будущему
"

Комментарии

Страницы комментариев: 1 :: 2 :: 3 :: 4 :: следующая

аноним, Ср 14 окт 2009 10:47:19:
такое впечатление, что развитие эвм в союзе тормозилось с само верха. уже тогда готовились к его ликвидации?
аноним, Ср 02 сен 2009 20:26:25:
Какой нах закон мура?! Это просто маркетинговая уловка! Ну что поменяется, если этому закону не следовать? Аж ничего! Лучше бы по-моему дорабатывали существующее железо и софт. ТОгда и проблемы с безопасностью глядишь исчезли бы. И быстрее все стало бы работать из-за оптимизации.
Бородулин Вячеслав, Вт 02 июн 2009 05:55:21:
Спасибо и за Вашу статью "Восход и закат High Performance Fortran: наглядный урок истории"
Тоже очень понравилась.
Бородулин Вячеслав, Вт 02 июн 2009 05:52:16:
Спасибо Сергей за интересную статью. Я думаю, что если произвести отсев всех комментариев хотя бы по критерию орфографии и оконченных 11 классов то из них уже отсталось бы 3-5 штук. А если отсеять тех кто не программировал под параллельные системы, и не написал ни одной статьи, так и подавно будет человека два.

Сам недавно начал работать с университетским кластером и задумался над фундаментальными проблемами распараллеливания вычислений. Оказалось не всё выражается простой маркетинговой фразой интел - "чем больше ядер, тем выше производительность"...

С уважением, Бородулин Вячеслав, ТОГУ
SKeeper, Пн 13 апр 2009 14:15:13:
Браво! Хоть и как-то пессимистично, но все равно интересно.
дао, Вс 12 апр 2009 15:19:29:
мне кажется автора просто не понимают!
это относится и ко всем предыдущим статьям.
tweak, Ср 08 апр 2009 22:19:11:
креатив ниасилил, многабуков. Автор ставит интересный вопрос, но не предлагает вариантов решения проблемы "закона Мура для software".
В отличие от более другого автора http://www.moserware.com/2008/04/towards-moores-law-software-part-1-of-3.html
аноним, Ср 01 апр 2009 09:25:33:
привет кузнецов
аноним, Пн 30 мар 2009 21:18:43:
блин.. интересная статья, наверно. потом по-читаю. не грусти, Серега!
Rigdzin, Пн 30 мар 2009 18:30:21:
А вот почему я возбухаю по поводу лараби: http://www.thg.ru/graphic/intel_larrabee/index.html
В этой статье четко говорится, что интел собирается использовать х86 инструкции именно для графического проца. Причем сами инструкции предполагается модифицировать.
Аргумент, что интел пытается отвоевать рынок встроенной графики - неправилен. Интел и так владеет этим рынком чуть-ли не на 60%. Она скорее пытается подвинуть АТИ и Нвидию с перспективного рынка высокопроизводительных вычислений в объёме десктопа. А кто там обеспечивает такое? Правильно: Радеон и ДжиФорс. Вот интел по аналогии с ними тоже выпускает ГПУ, правда пихает в него х86, забывая, что Рдеон и ДжиФорс такие мощные не потому, что там х86, а как раз наоборот.
По поводу стоимости компьютеров DEC на базе процессоров Alpha - жизнь всегда наказывала жлобство. Я так подозреваю, что их руководство назначало более высокую цену по принципу, если наши компы быстрее - значит круче, и мы будем требовать за них большие деньги, и нам плевать, что продажи наши падают - вот и умер DEC.

Страницы комментариев: 1 :: 2 :: 3 :: 4 :: следующая

Ваш комментарий

Имя:

Текст комментария (HTML-теги не допускаются):

💰 Самые низкие цены на домены

🔒 Отличный хостинг на SSD c бесплатными SSL

💻 Огромнейший выбор dedicated выделенных серверов

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

Новости мира IT:

Архив новостей

Последние комментарии:

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...