Lenguajes y Automatas II Optimizacion

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 4

Lenguajes y Autómatas II.

Optimización

Contenido
Tipos de Optimización ..................................................................................................................... 2
Costos .............................................................................................................................................. 3
Análisis del flujo de datos................................................................................................................ 3
Conclusión ....................................................................................................................................... 4
Introducción:

La optimización consiste en mejorar el código intermedio de modo que


quede un código maquina más rápido de ejecutar. Con esto también se
obtiene optimización temporal y optimización espacial.

Tipos de Optimización.

La optimización depende del lenguaje de programación y es directamente


proporcional al tiempo de compilación. La optimización es un proceso que
tiene que minimizar o maximizar alguna variable de rendimiento, tiempo,
espacio, etc.

Optimización Local:

Se realiza sobre módulos de un programa. Las optimizaciones locales solo se


ven reflejadas en métodos, procedimientos, clases, etc.

Ciclos:

En ciclos se realizan acciones repetitivas y si están incorrectas el problema


sigue creciendo infinitamente. En la optimización por ciclos es difícil saber el
uso exacto de algunas instrucciones, así que no todo código de proceso
puede ser optimizado.

Globales:

Son optimizaciones entre bloques básicos, para realizarla es necesario crear


el grafo de flujo de ejecución, este representa todos los caminos posibles de
ejecución de programa.

Mirilla:

Trata de estructurar de manera eficiente el flujo del programa, como en


instrucciones de bifurcación tales como decisiones ciclos y saltos de rutina.
Diferencias:

 Local: reemplazan operaciones costosas de la maquina por otras


menos costosas.
 Ciclos: es difícil saber el uso exacto de algunas instrucciones.
 Mirilla: tener los saltos lo más cerca de las llamadas, siendo el salto lo
más pequeño posible.

Costos.

Los costos son uno de los factores más importantes al optimizar, la mejora
puede a veces no verse reflejada en el programa final. Los costos de
ejecución son aquellos que vienen implícitos al ejecutar el programa. Algunos
programas tienen un mínimo para poder ejecutar el programa, por lo que el
espacio y la velocidad de los microprocesadores son elementos que se deben
optimizar para tener un mercado potencial más amplio.

Criterios para mejorar el código.

La mejor manera de optimizar el código es hacer que los programadores lo


optimicen desde el momento de su creación, el problema sería que se
tardaría mas en codificar y esto representa tiempo y esfuerzo que representa
un costo extra. Los criterios de optimización siempre están definidos por el
compilador.

Análisis del flujo de datos


Las principales herramientas para el análisis de flujo de datos son los
depuradores y desambladores. Las principales ventajas del análisis es que se
puede compartir tanto con usuarios finales como con analistas. A medida que
los analistas reúnen hechos y detalles, comprenden mejor el proceso y se
puede transmitir mejor los datos.
Conclusión:

La optimización no solo la desarrollan los programas y/o programadores,


todos pueden participar dentro de una empresa desde el usuario final hasta
los propios ejecutivos.

También podría gustarte