УДК 651.3:518.5 Г.С. ТЕСЛЕР
ИНТЕНСИФИКАЦИЯ ПРОЦЕССА ВЫЧИСЛЕНИЙ
Введение
Концепция информатизации общества, пришедшая на смену его индустриализации, играет важную роль сегодня и будет играть еще большую в наступающем столетии. Эта концепция опирается на комплексную автоматизацию и компьютеризацию общества, охватывая производство, сбыт, связь, транспорт, обслуживание, управление, образование, культуру, быт и т.д. Компьютеризация общества, включающая в себя интернет-технологии, индустрию знаний и т.д., позволяет существенно повысить эффективность всех видов труда и обеспечивает пользователям компьютеров новые возможности на работе, дома и при обучении.
Однако обществу не безразлично, какими средствами достигается эта компьютеризация - экстенсивными или интенсивными. В реальной действительности интенсивные факторы тесно переплетаются с экстенсивными. Последние связаны с привлечением дополнительной рабочей силы и дополнительных капиталовложений. Особо важную роль интенсивные факторы могут играть в предотвращении экономических и экологических кризисов. Этот факт особо важен в связи с тем, что, по мнению многих аналитиков и футурологов, наступающее столетие будет характеризоваться повышенным вниманием к решению экологических проблем и, в частности, проблемы баланса между человеческой деятельностью и окружающей средой. Среди этих проблем на первый план выдвигается энерго- и ресурсосбережение, а также рационализация человеческой деятельности. Без решения отмеченных выше проблем будущее развитие и даже существование человечества становится проблематичным.
Представляет интерес рассмотрение роли computer science в решении вышеназванных проблем. Безусловно, компьютеризация производства, в частности, и всего общества, в целом, направлена на использование интенсивных факторов во всех сферах деятельности человека. Но при разработке вычислительной техники и ее программного обеспечения во многих случаях используются экстенсивные факторы. Примером такого подхода является продукция, разрабатываемая ведущей в мире фирмой по производству программного обеспечения для персональных компьютеров, рабочих станций и серверов Microsoft. Исходя из обыденных критериев эффективности, Microsoft является одной из самых процветающих фирм в мире. Об этом свидетельствует тот факт, что акции фирмы, где работают 27000 человек, оцениваются в 500 млрд. долларов США, а стоимость акций со дня основания фирмы (1975 г.) возросла примерно в 500 раз. Помимо этого, ее президент Билл Гейтс является самым богатым человеком на планете.
Создаваемые фирмой программные продукты привели к расширению функциональных возможностей компьютеров, что, безусловно хорошо. Но, с другой стороны, решение многих задач под управлением создаваемых фирмой программных продуктов требует резкого увеличения производительности процессора и объемов используемых ресурсов компьютера даже для тех задач, которые решались на компьютерах предыдущих поколений, а это уже лишние затраты финансов и ресурсов. По нашим оценкам, использование интенсивных факторов при создании такого программного продукта и рациональной организации процесса вычислений позволили бы решать основной спектр решаемых сегодня на компьютерах задач на значительно менее производительных процессорах. Такой подход позволил бы большинству пользователям ЭВМ не столь резко менять имеющиеся у них вычислительные средства, что и привело бы к значительному ресурсо-, энерго- и капиталосбережению. Внутренние причины этого явления ясны: недостаточность использования интенсивных факторов при создании программного обеспечения. Внешними же причинами, по нашему мнению, являются следующие: отсутствие в настоящее время
научно обоснованной теории построения постиндустриального общества, идущего на смену обществу потребления; искусственное насаждение понятий престижности и моды, культивируемых в обществе потребления; наличие монополизма в производстве определенных видов товаров массового потребления (в нашем случае - программного обеспечения) и, как следствие, завышение цены на товар с целью получения сверхприбыли. Помимо этого, в рассматриваемом случае, по-видимому, имеется негласный, а, может быть, и гласный сговор заинтересованных сторон - производителя товара и связанных с ним партнеров по бизнесу, а, также госаппарата. Таким образом, государство делает вид, что не замечает наличия монополизма и сверхприбыли производителя в обмен на получение большей массы налогов с продажи программного обеспечения, которое дает в экономику США 100 млрд. долларов налогов в год, а партнеры по бизнесу (в нашем случае - производители компьютерной техники) получают дополнительную прибыль не только за счет расширения областей использования выпускаемой продукции, но и за счет неявного побуждения и принуждения пользователей, имеющих достаточно современные изделия, покупать новые. Это приводит к нерентабельному использованию средств и ресурсов, что со временем приведет к возникновению экономических и экологических проблем в рамках государства и шире.
Приведенный выше пример не исчерпывает сфер такого подхода. Аналогичные проблемы возникают в сфере производства одежды, бытовой техники, транспортных средств и т.д.
Экстенсивные факторы в вычислительной технике связаны, прежде всего, с широким использованием параллелизма, нерациональной организации процесса вычислений, с неэффективным использованием функциональных возможностей совокупности вентилей на кристалле СБИС и т.д.
Во многих случаях такие подходы происходят из-за неиспользования принципов и критериев интенсификации процессов вычислений. Настоящая работа хоть и не дает полного ответа на все поставленные вопросы, но является тем компасом, который позволит двигаться инженерам и ученым при решении этих проблем в нужном направлении.
Особо важным является использование интенсивных средств в постиндустриальном обществе в связи с проблемой баланса деятельности человечества и окружающей его экосистемы. На смену свободному предпринимательству приходит смешанная система [1,2]. Это, прежде всего, связано с тем, что достигать увеличения производительности любой ценой недопустимо из-за ограниченности ресурсов и отрицательного воздействия на экосистему. Поэтому необходимо введение ограничений и понимание свободы не как вседозволенности, а как осознанной необходимости. Поэтому, наряду с повышением производительности, следует исповедовать принятый в медицине принцип - не навреди. Такой подход необходим не только в сфере материального производства, но и в сознании. Однако проблема вышеназванного баланса - предмет отдельного исследования. В данной работе основное внимание уделено принципам и критериям интенсификации вычислений.
1. Постановка проблемы
Постоянное повышение производительности вычислительных средств сопровождается снижением себестоимости производимой информационной продукции [3]. О важности снижения себестоимости информационной продукции косвенно свидетельствует показатель - отношение стоимость/производительность.
Повышение производительности в настоящее время в основном достигается путем повышения частотных свойств элементов (совершенствование элементно-технологического базиса) и использованием параллельных вычислений. Если первый путь использует интенсивные факторы ускорения вычислений, то второй -преимущественно экстенсивный, так как связан с наращиванием количества одновременно работающих элементов. Однако в общем случае для обеспечения высоких показателей производительности, надежности, стоимости и интеллектуальности необходимо более полно использовать потенциальные возможности элементнотехнологического, организационного, информационного и алгоритмического базисов. В работе [3] показано, что потенциальные возможности этих базисов на данном этапе развития вычислительных средств различны.
В связи с этим каждый из рассматриваемых базисов обеспечивает свой уровень ускорения вычислений. Поэтому важное значение приобретают преимущественно интенсивные методы и средства. При этом интенсивные факторы, как и в экономике, основаны на качественном совершенствовании орудий труда, рациональном использовании имеющихся ресурсов, улучшении организации труда и производства, повышении квалификации работников, использовании достижений научно-технического прогресса и т.д.
Исходя из вышесказанного, интенсификация процесса вычислений предполагает увеличение качественных факторов экономического роста. Это достигается прежде всего за счет сокращения времени счета решаемых задач путем:
использования новых технологических, информационных и прочих технологий; рациональной организации вычислений; увеличения пропускной способности каналов связи; рациональной организации системы хранения и обработки информации; повышения машинного интеллекта;
рационального распределения ресурсов системы между устройствами системы и задачами; обеспечения рациональной загрузки элементов системы;
адаптируемости вычислительных средств, программного и математического обеспечения к внутренним и
внешним условиям применения;
уменьшения стоимости производимого продукта;
увеличения надежности и отказоустойчивости технических средств и программного обеспечения; ресурсосбережения, включая уменьшение энергопотребления;
уменьшения затрат на единицу информационной продукции, систематического снижения объема используемых вычислений (живого труда) и увеличение использования прошлого труда на единицу информационной продукции и т. д.
Одним из факторов интенсификации вычислений есть взаимная адаптация технических, программных и алгоритмических средств.
При взаимной адаптации гораздо сложнее адаптировать технические средства к используемым алгоритмам, чем подобрать соответствующие алгоритмы, отвечающие заданной структуре вычислительных средств.
Наряду с взаимной адаптацией для целей ускорения вычислений широко используется односторонняя адаптация. К числу таких средств относится специализация технических, информационных, организационных и алгоритмических средств.
Для достижения соответствия технических и алгоритмических средств друг другу требуется большое их разнообразие. При этом в настоящее время разнообразие технических средств ограничено, а алгоритмических средств недостаточно. О последнем свидетельствует постоянный недостаток эффективных алгоритмов для конкретных применений. Поэтому для преодоления этого недостатка целесообразно перенести идеологию смешанных вычислений [7], предложенную академиком А. П. Ершовым для решения проблем программирования, на создание соответствующего алгоритмического базиса. Для этого необходимо разработать и использовать систему порождающих алгоритмов, которые позволят получать соответствующие специализированные эффективные алгоритмы, исходя из некоторой системы обобщенных алгоритмов. Этой цели наиболее полно отвечают адаптивные методы и алгоритмы и построенная соответствующая база знаний, основанная на порождающих и конкурирующих алгоритмах [5,6].
Такой подход позволяет более компактно представлять имеющиеся знания в конкретной предметной области и обеспечивать необходимое разнообразие эффективных специализированных алгоритмов для интенсификации процесса вычислений. При этом специализация и проблемная ориентация технических, программных и алгоритмических средств может быть осуществлена на разных уровнях: структурном, архитектурном,
микропрограммном, программном и алгоритмическом. Однако цель всех этих подходов одна - интенсификация процесса вычислений. В работе большое внимание уделено интенсификации за счет использования различных видов адаптивных по времени, данным и точности алгоритмов, архитектур и структур.
Основной эффект такого подхода достигается при совершенствовании массовых алгоритмов нижнего уровня обработки. При этом необходимо использовать различные механизмы адаптации и методы оптимизации, направленные на уменьшение временной, алгоритмической и информационной сложности алгоритмов. Для интенсификации процесса вычислений следует применять алгоритмы, использующие прошлые знания либо результаты счета (табличные, таблично-алгоритмические, предварительное преобразование параметров -коэффициентов и т.д.), динамические алгоритмы счета, асинхронные методы счета, новые нормы погрешностей и т.д. Кроме того, для интенсификации процесса вычислений более рационально использование точностных характеристик алгоритма на всех фазах его выполнения (переменная и произвольная точность), выбор наиболее рационального вида аппроксимации, выбор простых коэффициентов (для экономичной аппроксимации), методы экономизации аппроксимирующих приближений и т.д.
На данном периоде развития компьютерной техники для лучшей адаптации алгоритмического базиса с техническими средствами весьма желательно хоть частично ликвидировать разрыв между входным языком машины и алгоритмическими языками высокого уровня. Помимо этого, необходимо ликвидировать "узкие места" в вычислительном процессе на основе критерия баланса в соответствии с законом Амдала. Частичная ликвидация этого семантического разрыва может быть достигнута путем использования более мощных команд (наподобие использования макросов). Но для интенсификации внутренних ресурсов ЭВМ и ВС используется ИЭС-архитектура [7,8], которая еще больше увеличивает семантический разрыв. Но в последнее время вновь пробудился интерес к решению этой проблемы на основе использования УНУ -архитектуры [9]. Поэтому при интенсификации процесса вычислений необходимо найти компромисс между двумя крайними подходами. Такой компромисс в материальном производстве достигается сочетанием технологической и предметной специализаций.
Исходя из вышеизложенного, целесообразно рассмотреть основные исходные положения интенсификации вычислений за счет совершенствования всех базисов СВТ и особенно алгоритмического базиса, который для этих целей практически не использовался. Данные положения изложены в следующих подразделах в виде системы принципов и критериев эффективности вычислительных средств, которые в конечном счете направлены на минимизацию времени счета, удешевление создаваемого информационного продукта и ресурсосбережение.
2. Основные принципы интенсификации процесса вычислений
Одной из основных целей совершенствования вычислительных средств является повышение их производительности путем интенсификации процесса вычислений и расширение выполняемых функций. Но, имея глобальную цель, целесообразно ее представить в виде некоторой совокупности подцелей, в которой достижение их приближает к достижению основной цели. В этой связи целесообразно положение поставленной цели сформулировать в виде системы принципов, подобных, изложенным в работах [10,11].
Под принципами интенсификации процесса вычислений ЭВМ и ВС будем понимать основные исходные положения построения этих вычислительных средств, необходимые для практического их проектирования и эффективного использования.
Развитие науки характеризуется сохранением известных положительных качеств, т.е. их наследованием и получением новых. Но при этом область применения известных положительных качеств сужается. Поэтому первым принципом является сохранение известных положений, направленных на повышение производительности ЭВМ и ВС и/или расширение выполняемых функций. Этот принцип тождественен принципу соответствия, который гласит: развитие теории не отменяет результатов старой теории, но ограничивает область ее применения. Назовем его принципом сохранения и преемственности.
Второй принцип - принцип повышения производительности выполнения наиболее массовых операций, процессов и задач. Суть этого принципа состоит в том, что, ставя задачу повышения производительности ЭВМ и ВС, ориентированных на решение заданного класса задач, в первую очередь необходимо повысить производительность наиболее массовых операций, процессов и задач. Это связано с тем, что именно данные операции, процессы и задачи в основном и определяют общую производительность ЭВМ и ВС. Исходя из вышеизложенного, мы видим, что в ряде последующих принципов раскрываются различные аспекты этой проблемы.
Третий принцип - принцип использования прошлых результатов вычислений (прошлого труда).
Этот принцип направлен на уменьшение времени выполнения алгоритма, в частности, - на экономию количества выполняемых операций. Экономия достигается путем использования табличных и табличноалгоритмических методов на основе ПЗУ, ПЛМ или ОЗУ. Целесообразно использование этого принципа для наиболее массовых процессов, операций и макроопераций. Необходимое множество значений результатов вычислений либо вычисляется заранее и запоминается, либо используются вычисленные на предыдущих этапах решения задачи.
К третьему принципу тесно примыкает четвертый принцип - принцип динамического режима счета. Суть этого принципа состоит в использовании адаптивных по данным алгоритмов счета для заданного массива данных. Для равноотстоящих данных алгоритмы становятся более экономичными. К этому режиму счета тесно примыкает режим использования таблично-алгоритмических методов для массива долеко отстоящих данных, который в пределе может вырождаться в счет отдельных значений. Этот принцип включает работу с инкрементной (укороченной) информацией и приращениями.
Пятый принцип - принцип адаптации технических и алгоритмических средств к длине обрабатываемых данных. При этом данный принцип также направлен на экономию количества выполняемых действий. Экономия времени счета достигается путем изменения в динамике или статике длины обрабатываемых данных путем использования переменной разрядности, формата данных и т.д. При этом оценка выигрыша (экономии) -вероятностная. Дополнительным эффектом от использования этого принципа является возможность счета с использованием слабоустойчивых относительно погрешностей округления алгоритмов путем добавления в необходимых случаях дополнительных обрабатываемых разрядов либо использования "точной арифметики".
Шестой принцип - принцип эквивалентных преобразований алгоритмов, архитектур или структур, включая обеспечение параллельных вычислений. Этот принцип направлен на экономию времени счета путем замены вычислительных операторов (функций), которые требуют больших затрат времени счета, на операторы, требующие меньшего времени счета. Особо важно использование этого принципа при распараллеливании циклов, являющихся источником наибольшей загрузки вычислительных средств, на что обратил внимание академик В.М. Глушков [12].
Седьмой принцип - принцип односторонней или взаимной адаптации методов, алгоритмов, архитектур или структур. Суть этого принципа состоит в комплексном (системном) подходе, который требует, чтобы проектируемые ЭВМ и ВС наилучшим образом соответствовали бы поставленным целям и критериям с точки зрения единства методов, алгоритмов, структур и архитектур в их взаимосвязи и взаимообусловленности, включая С!ЗС, ИЗС, и сетевые архитектуры [7-9,13].
К этому принципу тесно примыкает такое важное для практики требование, как обеспечение гибкости, расширяемости и комплексируемости вычислительных средств за счет использования адаптивных методов, алгоритмов, архитектур и структур, а также сетевого взаимодействия.
Восьмой принцип - принцип интеллектуализации ЭВМ и ВС. Этот принцип в определенной мере дополняет седьмой принцип и направлен на упрощение приспособления вычислительных средств к окружающей среде для облегчения взаимодействия пользователей с ЭВМ и ВС, включая ликвидацию семантического разрыва [14], а также на обеспечение эффективного решения интеллектуальных задач и работы со знаниями.
Девятый принцип - принцип баланса (уравновешивания) используемых ресурсов за счет оптимизации параметров. Суть этого принципа состоит в более полном использовании потенциальных возможностей системы
путем оптимизации, лежащей в основе метрической теории вычислительных систем. Суть принципа основывается на том, что ЭВМ или ВС должны быть построены таким образом, чтобы на каждой стадии их функционирования обеспечивался бы баланс между составными частями по быстродействию, пропускным способностям, емкостям запоминающих устройств и т. д. Необходимо добиваться статистического или динамического уравновешивания оптимизируемых параметров. Этот принцип, с одной стороны, направлен на повышение производительности ЭВМ и ВС, а с другой, - на более рациональное использование ресурсов. Сюда включается оптимизация алгоритмических, программных, технических, информационных, организационных и других видов средств.
Десятый принцип - выявление и устранение “узких мест” вычислительного процесса и более рациональное использование ресурсов. Этот принцип тесно примыкает к девятому. В соответствии с данным принципом повышение производительности вычислительных средств осуществляется за счет выявления и устранения узких мест в вычислительном процессе и обеспечения баланса производительности процессора, пропускной способности каналов передачи информации, используемых объемов и времен обмена системы памяти, более полного использования ресурсов, включая обеспечение оптимальной рабочей загрузки системы, совершенствование организации процесса вычислений и т.д.
Одиннадцатый принцип - совмещение вычислений во времени. Этот принцип направлен на увеличение производительности ЭВМ и ВС путем совмещения во времени (конвейеризации) выполнения процессов, команд, операций, доступа к разным ресурсам и т.д. Дополнительный эффект в повышении производительности вычислительных средств и уменьшении используемых ресурсов может быть достигнут путем совершенствования организационного базиса.
Двенадцатый принцип - принцип специализации на основе адаптации используемых средств к условиям применения. Суть этого принципа состоит в обеспечении получения эффективных с точки зрения производительности и ресурсосбережения специализированных алгоритмических, программных и вычислительных средств на основе использования наиболее общих методов, алгоритмов, архитектур и структур. Этот принцип направлен на преодоление существующих противоречий между универсальными и специализированными средствами путем использования перехода от общего к частному. Действие данного принципа в алгоритмическом базисе состоит в том, что эффективные специализированные методы и алгоритмы, учитывающие особенности конкретного применения, получаются на основе общих методов и алгоритмов. Для машинного алгоритма-программы этот принцип соответствует теории смешанных вычислений, предложенной академиком А.П. Ершовым [4].
Использование этого принципа стимулирует разработку и исследование наиболее общих адаптивных методов, алгоритмов, архитектур и структур, обладающих возможностями реконфигурации и получения на их основе эффективных специализированных версий.
Тринадцатый принцип интенсификации процесса вычислений сформулировал академик В. М. Глушков как единство ближних и дальних целей [10,11].
3. Критерии показателей качества интенсификации процесса вычислений
В работе [15] отмечаются следующие показатели качества в технике: аддитивный обобщенный показатель, мультипликативный обобщенный показатель, составной обобщенный показатель и совокупность частных показателей. К этим видам показателей необходимо добавить показатели, основанные на достижении минимума (максимума) отношений типа коэффициента полезного действия, минимума (максимума) функционала, минимаксный критерий и другие.
Обобщенный аддитивный показатель образуется как сумма нормированных частных показателей, а мультипликативный - как произведение множества частных показателей с весовыми коэффициентами либо без них. При этом предполагается максимизация (минимизация) суммы или произведения частных показателей. К
достоинству этих показателей качества относятся простота их образования, а к недостаткам - эвристическое назначение весовых и других коэффициентов.
Основным методом формирования составных обобщенных показателей качества является использование эмпирических формул, объединяющих определенным образом выбранные частные показатели. Наиболее часто в качестве составного показателя используются технико-экономические, стоимостные, эксплуатационные, экологические и другие. Остановимся более подробно на известных показателях типа коэффициента полезного действия и нового для вычислительной техники минимаксного критерия.
Одним из наиболее известных критериев интенсификации является коэффициент полезного действия
П = А, / А,,,
где Ап - полезная работа, Ао - общая работа.
Этот критерий нашел свое применение в вычислительной технике. Так, в работе [16] приводится коэффициент производительного использования машинного времени
П = Тп / (Гп + Тн Ь
где Тп и Тн - соответственно производительно и непроизводительно используемое машинное время. Этот коэффициент может быть использован для характеристики организации процесса вычислений.
В работе [17] введен коэффициент использования каналов
П = 0п / вп +0ел),
где 0п - объем полезной информации, передаваемой по каналам связи, а 0сл - объем служебной информации.
Один из способов обеспечения высокой эффективности вычислительных средств состоит в сбалансировании показателей структурного, информационного, алгоритмического, программного, функционального, нагрузочного, эксплуатационного, экономического и т. п. видов эффективности. При этом одни показатели необходимо максимизировать, а другие минимизировать.
Примером показателей, которые необходимо максимизировать, являются производительность, надежность, пропускная способность каналов, объемов всех видов памяти и т.д., а минимизировать - стоимость, потребляемая мощность, массо-габаритные характеристики и т.д.
Для нахождения таких обобщенных показателей качества можно воспользоваться широко используемой в математике и экономике минимаксной нормой
\\F\\ = min max F (x, y),
y e Y x e X
являющейся частным случаем обобщенной нормы [18]
\\F\\ = (£ (x, y)k )/ k при k ^ » .
k=1
Отметим, что при k=1 - это сумма модулей, при k=2 - среднеквадратичная норма (типа среднее квадратическое отклонение в математической статистике).
Такой подход соответствует тем общим требованиям, которые ставят перед собой изготовители вычислительной техники, - производительнее, надежнее, меньше, дешевле и со все возрастающими функциональными возможностями, что в большинстве случаев совпадает с требованиями потребителя [19]: простота в использовании, низкая стоимость покупки и эксплуатации, достаточное качество аппаратного и программного обеспечения, обширный набор выполняемых функций, использование современных технологий и архитектур в покупаемом вычислительном средстве, достаточные для конкретных приложений показатели производительности, объемов памяти, номенклатуры периферийных устройств и устройств сетевого взаимодействия, а также возможность обновления и модернизации системы.
Вполне понятно, что многие из перечисленных требований могут вступать в противоречие друг с другом и требованиями более высокого порядка, например, экологическими, общечеловеческими и т.д.
Обобщенный минимаксный критерий эффективности может быть представлен в следующем виде:
Э = тіп тах Е (х, у),
у є У х є X
где Х = ( Х1, х2 ... хп ) , У = (у1 , у1.... ут )
В качестве параметров Хі, хп могут выступать следующие показатели: Хі - производительность;
Х2 - надежность;
Х3 - отказоустойчивость;
Х4 - количество и вид выполняемых функций;
Х5 - точность вычислений;
Хд - пропускная способность каналов;
Ху - емкость оперативной памяти;
Хд - емкость долговременной памяти;
Хд - характеристики загрузки компонентов системы;
Хід - разрешающая способность дисплея;
Хц - количество портов;
Х12 - характеристики условий эксплуатации и т. д..
В качестве параметров У1 , уп могут выступать следующие показатели: У1 - стоимость вычислительных средств и/или ее компонент;
у2 - потребляемая мощность;
У3 - массо-габаритные характеристики;
У4- время обработки прерываний;
У5 - величина коэффициента готовности к эксплуатации;
Уд - время выполнения операций типа "клиент-сервер";
Уу - время запаздывания;
Уд - время выполнения основных операций трехмерной графики;
время обнаружения сбоя и/или ошибки системы; время исправления ошибки и т.д.
Другой подход состоит в том, что параметр в векторе У остается прежним, а вектор X состоит из показателей стоимостей.
Примером показателя качества, основанным на максимизации функционала Р(х^2, хп), является
следующий функционал общей пригодности [20]:
Ц п Р , • • • *Х2Б ^ ,
где Х1 - быстродействие, Х2 - универсальность, Хд - точность, Х4 - нейтральность, Х5 - защищенность, Хд -
устойчивость (робастность), Ху - корректность, Хд - полнота, Хд - общность, Х10 - простота, Хц - естественность, Х12 -
единообразие, Х1д - доступность, Х14 - коммуникабельность, Х15 - самоописываемость, Х^ - читабельность
(прозрачность), Х^ - краткость, Х1д - учитываемость, Х^ - эффективное использование резервов ЭВМ, Х20 -
независимость от технических средств и системного программного обеспечения, Х21 - автономность, Х22 -
расширяемость (открытость), Х23 - структурность, Х24 - модульность, Х25 - скрытость.
Наиболее важными, по нашему мнению, являются показатели: Х1 - Хд, Х5 - Хю, Х^ , Х1у, Х^ - Х24.
К сожалению, большинство перечисленных параметров трудно определить количественно и их определяют на основе экспертных оценок. Для сведения этих показателей к единому показателю необходимо использовать весовые коэффициенты. Помимо этого, целесообразно добавить еще три частных показателя: Х26 - стоимость, Х27 -
среднее время наработки на отказ и Х2д - коэффициент готовности.
Наиболее часто в качестве составного показателя используются технико-экономические, стоимостные и другие показатели или показатели эффективности. Например, эффективность вычислительной системы (в единицах стоимость/операция) может быть представлена [21]
Цэф = С / ТЭБ ,
где С - суммарные затраты на изготовление (покупки) системы, Тэ - время (реальное либо предполагаемое)
эксплуатации системы, Б - эффективное быстродействие. Аналогично рассматривается показатель “потребляемая мощность/производительность”.
Как отмечается в работе [22], эффективность вычислительной системы существенно зависит от степени согласованности конфигурации и режима функционирования системы с нагрузкой, создаваемой прикладными задачами и операционной системой. Оценка нагрузки для системы общего назначения и проблемноориентированных ЭВМ проводится на основе данных измерения. В процессе функционирования системы оценивается потребность в процессорном времени, памяти и других ресурсах на решение каждой задачи, процесса и т. д.
Среднее значение потребности задачи в ресурсах определяется как величина [22]
к
©п =ЕУ пкпк , п = 1, 2..........М,
к= 1
где: К - количество операторов в программе;
пк - число попаданий к-го процесса поглощающей Марковской цепи в состояние с дисперсией ст^2;
упк - потребности операторов в ресурсах.
Значения ©п характеризуют использование ресурсов в объемных или временных единицах при одной реализации программы.
Для определения компонент вычислительных средств, которые, в первую очередь, целесообразно интенсифицировать, предлагается воспользоваться следующей моделью:
сс
(tj /t ) • (t */ tj ) * t */1
j j j где:
C - стоимостной показатель условных затрат на улучшение j -ой компоненты ЭВМ;
Cj - прямые стоимостные затраты на улучшение j-ой компоненты ЭВМ;
tj - среднее время, которое затрачивает j-ая компонента ЭВМ при решении задач;
tj*- среднее время, которое затрачивает j-ая компонента ЭВМ после улучшения;
t - среднее время, затрачиваемое ЭВМ на решение задачи;
n - количество компонент, на которое условно разбивается ЭВМ.
Данная модель идейно близка к модели, приведенной в [23] для оптимизации программных модулей. В нашем случае в первую очередь надо улучшать ту j-ю компоненту ЭВМ, которая имеет минимальный показатель С.
*
Из формулы (1) видно, что при одинаковых отношениях jj (для разных j) предпочтение надо отдавать той
*
компоненте, у которой показатель Cj меньше. В случае одновременного возрастания tj и убывания Cj, предпочтение
*
дается компоненте с меньшим значением величины jj . В работе [22] производительность вычислительных средств определяется количеством выполняемой работы за единицу времени. В частности , как отмечалось выше, производительность вычислительных средств может быть определена количеством решаемых задач за единицу времени либо величиной
П = 1/т ,
1 n
где т = — Z т ±;
n ±= 1
т - среднее время решения задач на ЭВМ; т j - время, затрачиваемое на решение i-ой задачи;
Такой подход соответствует использованию известных тестовых программ SPEC 98, Winstone 98, Bench 98, Marc 98 и других. В качестве локальных показателей производительности вместо количества решаемых задач может использоваться количество выполненных заданий, процессов, запросов и т.д. в единицу времени.
Отметим, что вышеприведенный подход соответствует понятию производительности в политэкономии, где производительность труда определяется количеством продукции, создаваемой в единицу времени. Она повышается в результате совершенствования или более полного использования орудий труда, развития науки и технологий, повышения искусства работника, рационализации труда и других улучшений в процессе производства. Перечисленные интенсивные факторы служат для повышения производительности в материальном производстве, но они могут быть интерпретированы и для средств вычислительной техники.
Принцип баланса, изложенный выше, тесно связан с общей (системной) производительностью вычислительных средств [22], которая зависит не только от потенциальных возможностей процессорной части, но и от производительности (пропускной способности) работы всех остальных составляющих компьютера (системы),
объемов и организации всех видов памяти, архитектурных и структурных решений и т.д. Согласно законам Амдала и Флина, каждому миллиону операций процессора необходимо обеспечить пропускную способность миллион байт в секунду и не менее миллиона байт оперативной памяти. Именно исходя из этих положений, было выработано
требование "трех Т" (Терафлопс, Терабайт/с, Терабайт) для современных супер-ЭВМ [24].
Пример такого согласования двух из перечисленных характеристик можно видеть на примере одной из самых мощных в настоящее время супер-ЭВМ ASCI BLUE [25], которая выполняет 3,9 триллиона операций в секунду и имеет суммарную оперативную память 2,6 терабайт.
Безусловно, для обеспечения баланса необходимо обеспечить согласование системы обработки с системой ввода-вывода, архитектуры и структуры, рабочей нагрузки, программного обеспечения и т.д.
Отметим, что в экономике приведенный выше принцип баланса соответствует принципу гармонии интересов, выдвинутому экономистом Джоном Кларком [2].
Для оценки соответствия ЭВМ законам Амдала и Флина можно использовать следующий критерий эквивалентности:
(V о - V н ) ^ (Гок - Гк Н ^ (Гоп - Г.и> ^ (1 / Т оп - !/ Т кН,
где ^ - знак эквивалентности;
Vo> ^н - соответственно среднее для данного класса пиковое быстродействие процессора или
процессоров и быстродействие после совершенствования; гок, гкн - пропускная способность канала (байт/с), эквивалентная Уо и пропускная способность
канала после совершенствования; гоп, гпи - объем оперативной памяти, эквивалентный Уо, и объем оперативной памяти после
совершенствования;
- среднее время обращения к памяти для перемещения байта информации (эквивалентное 1/т) и среднее время обращения после совершенствования.
оп кн
Для оценки процесса интенсификации вычислений воспользуемся видоизменной моделью Д. Ван Тассела [23] мера улучшения, имеющей вид
Процент времени • Процент улучшения
Необходимые усилия
В качестве основных параметров нашей модели используем следующие: тс - существующие затраты времени при решении задач на ЭВМ;
тн - время решения задачи после проведенных улучшений;
гс, гн - соответствующие затраты ресурсов при решении задач на ЭВМ до и после улучшения.
При этом под ресурсом будем понимать любой из компонентов вычислительных средств и их возможности. Тогда безразмерный коэффициент относительной интенсификации процесса вычислений имеет вид
ГС / т с г / т н г • т н
Ки = ^ с = , н = -------, (2)
ГН / тн тс /т н Г, • тс
Вполне понятно, что коэффициент Ки является приближенным показателем оценки процесса интенсификации вычислений, но он позволяет определить направление поиска параметров, влияющих на интенсификацию процесса вычислений.
n
r = Z C i • r^
i= 1
где: q - количество (объем) используемого ресурса i-го вида;
Cj - стоимостной коэффициент, определяемый стоимостью единицы используемого ресурса i - го вида.
Отметим, что показатели т и r могут относиться как к отдельным компонентам системы, так и ко всей системе в целом. В качестве интегрального показателя r можно брать стоимость, а в некоторых частных случаях -надежность, потребляемую мощность, массу, габариты и т.д. Для сравнения различных ЭВМ одного класса можно использовать методику, которая изложена в работе [19].
При оценке отдельных компонент системы надо учитывать тот факт, что показатели отдельных компонент системы не сводятся к совокупности показателей ее компонент. Поэтому необходимо использовать как локальные, так и глобальные показатели, характеризующие эффективность вычислительных систем.
Примерами подходов, направленных на интенсификацию процесса вычислений, могут служить следующие [26]. Так, понижение рабочего напряжения с 2,8 В до 2,0 В и переход с 0,35-микронной технологии на 0,25 позволили вдвое снизить потребляемую мощность и повысить частоту работы процессора с 300 МГц до 333 МГц.
Использование Giant Magneto-Resitive (GMR) эффекта, основанного на наличии у электронов спина, позволили компании IBM получить дисковый накопитель емкостью до 16 Гбайт не за счет удвоения количества дисков по сравнению с существующими моделями, а путем значительного уплотнения записи информации и использования GMR-головок, а также высокой внутренней скорости передачи данных.
Заключение
В работе сделана попытка обосновать положения о необходимости использования преимущественно интенсивных факторов для ускорения процесса вычислений. Такой подход является эффективным не только в рамках computer science, но и с точки зрения метасистемы в части учета влияния принимаемых решений на окружающую среду (экосистему). В этой связи необходимо следовать выдвинутому академиком В.М. Глушковым принципу единства ближних и дальних целей, с учетом основного принципа медицины - "не навреди". Нельзя добиваться необходимого результата любой ценой, а использовать преимущественно интенсивные факторы с учетом ограничений, налагаемых экосистемой, и всех последствий в ближайшем и отдаленном будущем.
СПИСОК ЛИТЕРАТУРЫ
1. Павловський М.А. Шлях України: Шлях вліво, шлях вправо - хибний шлях. - Київ.-Техніка, 1996.- 152с.
2. Мешко І.М. Історія економічних вчень: Основні течії західноєвропейської та американської думки. -Київ: Вища шк.,1994.
3. Теслер Г.С. Место и роль алгоритмического базиса в решении проблемы производительности // Математические машины и системы. - 1997. - №1.- С. 25-33.
4. Ершов А.П. Смешанные вычисления // В мире науки. - 1986. - №6.- С. 28-42.
5. Теслер Г.С. Построение базы знаний на основе порождающих алгоритмов // Разработка и внедрение цифровых вычислительных комплексов и систем распределенной обработки данных. / Сб. научн. трудов.- Киев: Ин-т кибернетики АН УССР, 1986. - С. 21-27.
6. Цейтлин Г.Е. Теоретические и прикладные аспекты алгоритмики // уСиМ.- 1995.- №1,2.- С. 3-14.
7. Ганин А.Г. Архитектура ИБС-системы // Компьютеры + программы. - 1994.- Спецвыпуск.- С. 54-55.
8. Шелепов В.Г. Выбор ИБС-системы //Компьютеры+программы.-1994.- Спецвыпуск.- С. 52-59.
9. Слово за У1_^ // Компьютерное обозрение. - 1996.- №24.- С. 20-23.
10. Глушков В.М. Введение в АСУ.- Киев: Техника, 1974.- 319с.
11. Справочник - словарь АСУ. Под ред. д.т.н. Ю.Е. Антипова, чл.-корр. АН УССР А.А. Морозова /Авт. В.И. Вьюн, А.А. Кобозев, Т.А.
Паничевская, Г.С. Теслер.-М.: Радио и связь, 1990.- 128с.
12. Глушков В.М. Кибернетика. Вопросы теории и практики.- М.: Наука, 1986.- 486с.
13. Малышенко А. Перспективы развития сетевых компьютеров // Компьютерное оборудование.- 1996.- №24.- С.20-23.
14. Майерс Г. Архитектура современных ЭВМ. - М.: Мир, 1985. - Т.2. - 312с.
15. Брахман Т. Р. Многокритериальность и выбор альтернативы в технике. -М.: Радио и связь, 1984. - 288с.
16. Брюхович Е.И. Экономическая стратегия разработки вычислительных средств и сетей с позиции экономических интересов их владельцев // УСиМ.- 1989.- №3.- С. 3-11.
17. Матов В.Н., Белоусов Ю.А., Федосеев Е.П. Бортовые цифровые машины и системы - М.: Высш.шк., 1988.- 216с.
18. Хемминг Р.В. Численные методы. -М.: Наука, 1972.- 400с.
19. Денисов О., Назаров С. Компьютеры SONO // Компьютер-пресс.- №11.-1998.- С. 136-162.
20. Дейстибеков Д.М., Калмыков О.В., Черепанов А.И. Программное обеспечение статистической обработки данных. -М.: Финансы и статистика, 1984. - 192с.
21. Пронин Е.Г., Мочуева О.В. Проектирование бортовых машин обмена информацией. -М.: Радио и связь, 1989. - 240с.
22. Ларионов А.М., Майоров С.А., Новиков Г.И. Вычислительные комплексы, системы и сети.-Ленинград: Энергоатомиздат,1987.-288с.
23. Ван Тассел Д. Стиль, разработка, эффективность, отладка и испытание программ. -М.: Мир, 1985.- 332с.
24. Электромагнитные поля в триаде Человек - Земля - Вселенная /Авт.: А.А. Бритиков, В.И. Гвоздев, В.А. Кузнецов и др.// Зарубежная радиоэлектроника. - 1995.- №2,. - 3с.
25. KM inform, -1998.- №3, .- С.7.
26. Компьютер пресс. -М. -1998. -№4, .- С. 231-254.
Інтенсифікація процесу обчислень / Теслер Г.С. // Математичні машини і системи. - 1999.- № 2. - С.
Розглянуто систему принципів інтенсифікації процесу обчислень і різні критерії визначення якості засобів обчислювальної техніки та програмного забезпечення. Вперше з цією метою розглянуто мінімаксний і узагальнений критерій інтенсифікації процесу обчислень. Показано зв'язок використання інтенсивних факторів для підвищення продуктивності комп'ютерів з екологічними та економічними проблемами. Бібліогр.: 26 назв.
УДК 651.3:518.5
Интенсификация процесса вычислений /Теслер Г.С. // Математические машины и системы.-1999-№ 2. - С.
Рассматривается система принципов интенсификации процесса вычислений и различные критерии определения качества средств вычислительной техники и программного обеспечения. Впервые для этих целей рассмотрен минимаксный и обобщенный критерий интенсификации процесса вычислений. Показана связь использования интенсивных факторов для повышения производительности компьютеров с экологическими и экономическими проблемами. Библиогр.: 26 назв.
UDC.651.3.518.5
Intensification of the computation process /Tesler G.S./ /Mathematical machines and systems. - 1999. - N2 - P.
There is discussed the system of the computation process intensification principles and different criteria of the determination of the hardivare and software guality. At the first time for this purpose the minimax and generalised criterion of the computation process intensification were considered. The connection of using the intensive factors for inereasing the computer efficiency with ecological and economical problems is shown Refs: 26 titles.