Оптимизация - код - Большая Энциклопедия Нефти и Газа, статья, страница 1
Легче изменить постановку задачи так, чтобы она совпадала с программой, чем наоборот. Законы Мерфи (еще...)

Оптимизация - код

Cтраница 1


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

Ключ / ор запрещает некоторые виды оптимизации кода, которые могут привести к потере точности. Процессоры Intel обычно хранят результаты операций с плавающей точкой в 80-разрядных регистрах, что превышает разрядность значений с двойной точностью. При сохранении результатов в памяти выполняется округление. С данным ключом на платформе IA-32 вещественные переменные не хранятся в регистрах, операции не оптимизируются, деление, например, не заменяется умножением на величину, обратную знаменателю. Не выполняется и перегруппировка операндов. При вычислении выражений используются все 80 разрядов, а при присваивании результата переменной с простой и даже с двойной точностью выполняется округление до 32 ( в первом случае) или до 64 ( во втором случае) разрядов. С ключом / Qop соблюдаются и некоторые другие условия.  [2]

Многие компиляторы языков высокого уровня автоматически осуществляют оптимизацию кода, например исключение излишних команд и перенос команд, независимых от цикла, за его-пределы.  [3]

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

Разработан новый компилятор, обеспечивающий исключение неиспользуемых фрагментов программы, улучшенную оптимизацию кода. Предусматриваются возможности использования переменных среды операционной системы для управления компиляцией, а также большой набор параметров управления режимами работы компилятора.  [5]

Для обхода этих ограничений разработчики ряда компиляторов вынуждены были перекладывать на пользователя заботу об оптимизации кода программы.  [6]

Компилятор может быть сконфигурирован так, чтобы выполнять оптимизацию вашего кода. Когда в разделе Code optimization ( Оптимизация кода) вкладки C оптимизация выключена ( выбрана радиокнопка None), компилятор не делает никаких попыток как-либо оптимизировать ваш код.  [7]

К сожалению, использование абстрактных классов влечет за собой значительный дополнительный расход машинного времени при выполнении программы, поскольку каждый вызов виртуальной функции требует обращения к таблице указателей на функции-члены. Более того, компиляторы обладают намного меньшими возможностями в отношении оптимизации кода для абстрактных классов. Так как рассматриваемые в книге алгоритмы и структуры данных часто находятся в частях системы, критичных к производительности, возможно, упомянутая цена за гибкость, предоставляемую абстрактными классами, окажется слишком большой, чтобы ее платить.  [8]

Наибольшее разнообразие типов данных в стандарте предусмотрено для представления целых чисел. Смысл применения широкого спектра целочисленных переменных заключается в первую очередь в оптимизации кода программы. Скорость вычислений зависит от того, как микропроцессор оперирует с переменными данного типа.  [9]

Под оптимизацией в данном случае подразумевается повышение скорости работы функций и программ. Однако у MATLAB имеется и некоторая специфика, которую следует учитывать при оптимизации кода.  [10]

Имеется довольно обширная литература по синтаксису и трансляции языков программирования. В двухтомнике Ахо и Ульмана [1972] достаточно полно представлены формальная математическая теория синтаксиса, методы грамматического разбора и оптимизации кода применительно к построению компиляторов. В работах Гриса [1971], Хопгуда [1969], Макки-мана и др. [1970] можно найти обсуждение методов компиляции, ориентированное на практическое приложение.  [11]

Безусловно, оператор CASE слабее оператора IF, не имеющего подобных ограничений. Но формат CASE не только выразителен для программиста, но и более эффективен. Использование целочисленных констант позволяет транслятору выполнить оптимизацию кода, часто весьма существенную.  [12]

Платой за динамические типы явля-ц Л ются действия по проверке типа на этапе исполнения. В этом случае транслятор может использовать эту информацию для оптимизации кода.  [13]

Маклисп был также первой Лисп-системой, для которой создан хороший транслятор. Транслятор генерирует машинную программу, получившую имя LAP ( List Assembly Program), в форме списков. Это объясняется разумностью транслятора Маклиспа при обработке выражений и оптимизации кода.  [14]

Фортран - язык, ориентированный на вычисления, а вычисления всегда связаны с массивами. Современные вычислительные средства, реализуя векторную модель выполнения операций на аппаратном уровне, позволяют рассматривать массив как единое целое. Средства Фортрана для работы с массивами соответствуют векторным представлениям вычислений; они не только удобны для программиста, но и дают дополнительные - по сравнению с циклами - возможности для оптимизации кода применительно к разным аппаратным платформам.  [15]



Страницы:      1    2