component_level_optimization.remarkup
No OneTemporary

File Metadata

Created
Wed, Jul 8, 5:55 PM

component_level_optimization.remarkup

У цій роботі розглядаються техніки, що представляють собою, у відмін-
ність від низькорівневих оптимізацій, зазвичай реалізованих у сучасних
компіляторах, більш абстрактний рівень компонентної оптимізації, пов'язаної
з агрегуванням і спільною взаємодією різних незалежних компонентів
усередині однієї програми.
Як правило, стандартні компоненти написані й підтримуються без
врахування того середовища в якому вони працюють у рамках кінцевої кліє-
нтської програми, тому просте їх комбінування зазвичай малоефективне й
затратно по швидкодії і пам'яті.

, а також для мов високого рівня, що просто не надають про-
грамісту можливість «ретельно» налаштувати використовувані компоненти.

Зазвичай, при розробці програм, оптимізації такого рівня проводяться
вручну програмістом, що, як було показано вище(у розділі 1.1), має ряд недо-
ліків.

There are ways for component level optimization

  • state recognition (example with take (1, sort()) )
  • process recognition (example with addin one element to sorted contaier. extract CHANGES = ADDED_ELEMENT)

    State recogniton usually requires reasoning about functions, code scopes in other words CFA. To support this Xreate provides Context. Process recogniton usually requires reasoning about variables and its transformations, in other words DFA. To support this Xreate provide variable annotations.

    To summarize, everything about component level optimization revolves around efforts to recognize states and processes. Nothing else.

Event Timeline