Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вычислительные системы и сети, облачные технологии. Учебно-методическое пособие.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
982 Кб
Скачать

Кластеры. Это тот вариант, как если бы взять некоторое число «почти самостоятельных» компьютеров и объединить их быстродействующими линиями связи. «Общей памяти» здесь может и не быть вообще, но её несложно реализовать. На практике обычно удобнее работать с кластером в «явном» виде, описывая в программе все пересылки данных между его узлами.

Долгое время повышение производительности традиционных одноядерных процессоров происходило, в основном, за счёт последовательного увеличения тактовой частоты, с одновременным увеличением числа транзисторов на одном кристалле.

Способность процессора выполнять одновременно несколько программных потоков называется параллелизмом на уровне потоков (TLP — thread-level parallelism). Необходимость в TLP зависит от конкретной ситуации.

Под производительностью процессора понимается скорость выполнения им задачи, т.е. чем меньше времени затрачивает процессор на реализацию той или иной задачи, тем выше его производительность.

Преимущества многоядерных процессоров:

возможность распределять работу программ, например, основных задач, приложений и фоновых задач операционной системы, по нескольким ядрам;

увеличение скорости работы программ;

более эффективное использование требовательных к вычислительным ресурсам мультимедийных приложений (например, видеоредакторов);

снижение энергопотребления;

работа пользователя ПК становится более комфортной.

Недостатки многоядерных процессоров:

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

так как с оперативной памятью одновременно работают сразу два и более ядер, необходимо «научить» их работать без конфликтов;

возросшее энергопотребление требует применения мощных схем питания;

требуется более мощная система охлаждения;

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

операционные системы, поддерживающие многоядерные процессоры (например, Windows XP SP2 и выше), используют вычислительные ресурсы дополнительных ядер для собственных системных нужд.

1.7.Вычислительная техника и её применение в строительной отрасли

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

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

Поддержка многоядерности в САПР-системах. Если рассмотреть возможность распаралле-

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

15

на более мелкие блоки, математическое взаимодействие между которыми происходит по условно заданным границам.

ArchiCAD 19: производительность BIM. Ни комплексность модели, ни прогресс архитектуры процессоров изначально не были спланированы под нынешние поколения приложений, и многие разработчики программного обеспечения не смогли полностью использовать многоядерные процессоры, полагаясь вместо этого на одно ядро процессора, которое должно сделать большую часть тяжёлой работы.

Многоядерные процессоры находят применение в BIM-платформе ArchiCAD. Распараллеливание вычислений необходимо для обработки больших BIM-моделей. Компания Graphisoft пояснила, что в дополнение к «табулированным ключам» для интеллектуальной обработки новый интеллектуальный алгоритм сделает анализ рабочего процесса и часто используемых инструментов в целях дальнейшего совершенствования распределения обработки.

Autodesc Revit, которая работает только в Windows, имеет некоторую поддержку многоядерных процессоров, но она остаётся доступной только для отдельных функций, таких как 3D-визуа- лизация. И ряд функций, поддерживающий многопоточость (сохранение / загрузка и т. д.), но архитектура программного обеспечения просто не предназначена для работы таким образом, а учитывая то, как процессоры нового поколения будут работать, это вызывает некоторые опасения.

Любой процессор обязательно оснащён процессорной шиной, которую в среде x86 CPU принято называть FSB (Front Side Bus). Эта шина служит каналом связи между процессором и всеми остальными устройствами в компьютере: памятью, видеокартой, жёстким диском и т.д. Впрочем, между собственно памятью и процессором находится контроллер памяти. Соответственно: процессор посредством FSB связывается с контроллером памяти, а уже тот, в свою очередь, по специальной шине (назовём её, не мудрствуя лукаво, «шиной памяти») — с модулями ОЗУ на плате. Однако, повторимся: поскольку «внешняя» шина у классического x86 CPU всего одна, она используется не только для работы с памятью, но и для общения процессора со всеми остальными устройствами.

1.8. Технологии виртуализации

Информационные технологии привнесли в жизнь современного общества много полезного

иинтересного. Постоянно придумываются новые применения компьютерам как эффективным инструментам производства, развлечения и сотрудничества. Множество различных программных

иаппаратных средств, технологий и сервисов позволяют нам ежедневно повышать удобство и скорость работы с информацией. Всё сложнее и сложнее выделить из обрушивающегося на нас потока технологий действительно полезные и научиться применять их с максимальной пользой. Далее пойдёт речь о ещё одной невероятно перспективной и по-настоящему эффективной технологии, стремительно врывающейся в мир компьютеров — технологии виртуализации, которая занимает ключевое место в концепции «облачных» вычислений.

Согласно статистике, средний уровень загрузки процессорных мощностей у серверов под управлением Windows не превышает 10 %, у Unix-систем этот показатель лучше, но, тем не менее, в среднем не превышает 20%. Низкая эффективность использования серверов объясняется широко применяемым с начала 90-х годов подходом «одно приложение — один сервер», т.е. каждый раз для развёртывания нового приложения компания приобретает новый сервер. Очевидно, что на практике это означает быстрое увеличение серверного парка и, как следствие, — возрастание затрат на его администрирование, энергопотребление и охлаждение, а также потребность в дополнительных помещениях для установки всё новых серверов и приобретении лицензий на серверную ОС.

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

16

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

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

собъектом. Иными словами, происходит отделение представления от реализации чего-либо. Виртуализация призвана абстрагировать программное обеспечение от аппаратной части.

Вкомпьютерных технологиях под термином «виртуализация» обычно понимается абстрак-

ция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулиру-

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

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

История развития технологий виртуализации насчитывает более сорока лет. Компания IBM была первой, кто задумался о создании виртуальных сред для различных пользовательских задач, тогда ещё в мэйнфреймах. В 60-х годах прошлого века виртуализация представляла чисто научный интерес и была оригинальным решением для изоляции компьютерных систем в рамках одного физического компьютера. После появления персональных компьютеров интерес к виртуализации несколько ослаб ввиду бурного развития операционных систем, которые предъявляли адекватные требования к аппаратному обеспечению того времени. Однако бурный рост аппаратных мощностей компьютеров в конце девяностых годов прошлого века заставил ИТ-сообщество вновь вспомнить о технологиях виртуализации программных платформ.

В 1999 г. компания VMware представила технологию виртуализации систем на базе x86 в качестве эффективного средства, способного преобразовать системы на базе x86 в единую аппаратную инфраструктуру общего пользования и назначения, обеспечивающую полную изоляцию, мобильность и широкий выбор ОС для прикладных сред. Компания VMware была одной из первых, кто сделал серьёзную ставку исключительно на виртуализацию. Как показало время, это оказалось абсолютно оправданным. Сегодня WMware предлагает комплексную виртуализационную платформу четвёртого поколения VMware vSphere 4, которая включает средства как для отдельного ПК, так и для центра обработки данных. Ключевым компонентом этого программного комплекса является гипервизор VMware ESX Server. Позднее в «битву» за место в этом модном направлении развития информационных технологий включились такие компании как Parallels (ранее SWsoft), Oracle (Sun Microsystems), Citrix Systems (XenSourse).

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

17

гии виртуализации становятся одним из ключевых компонентов (в том числе, и маркетинговых) в самых новых и будущих процессорах Intel и AMD, в операционных системах от Microsoft и ряда других компаний.

Основные достоинства технологий виртуализации: Эффективное использование вычислитель-

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

Виртуальная машина — это программная или аппаратная среда, которая скрывает настоящую реализацию какого-либо процесса или объекта от его видимого представления. Таким образом, это полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру. Виртуальная машина действует так же, как физический компьютер, и содержит собственные виртуальные (т.е. программные) ОЗУ, жёсткий диск и сетевой адаптер.

ОС не может различить виртуальную и физическую машины. То же самое можно сказать о приложениях и других компьютерах в сети. Даже сама виртуальная машина считает себя «настоящим» компьютером. Но, несмотря на это, виртуальные машины состоят исключительно из программных компонентов и не включают оборудование. Это даёт им ряд уникальных преимуществ над физическим оборудованием.

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

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

Виртуализация на уровне ядра ОС (operating system-level virtualization). Этот вариант подра-

зумевает использование одного ядра хостовой ОС для создания независимых параллельно работающих операционных сред.

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

Виртуализация представлений (рабочих мест). Виртуализация представлений подразумева-

ет эмуляцию интерфейса пользователя.

1.9. Требования к программному обеспечению

При создании программного обеспечения приходится решать очень сложные проблемы. Например, трудно чётко описать функциональные действия, которые должна выполнять система, т.е. разработать программируемые требования (requirements engineering). Требования могут быть не полностью описывающие технологический процесс или нечёткие. В этом случае можно использовать не двузначную логику, а нечёткую логику (fuzzy logic). Система описывается на естественном языке — пользовательские требования. Затем производится формализация и разрабатываются системные требования, и только после этих операций разрабатывается проектная системная спецификация, являющаяся документом, который ориентирован на разработчиков ПО.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]