Lenguajes y Autómatas II Optimizacion

5
Lenguajes y Autómatas II. Optimización Edgar Gómez Gutiérrez Nc.125500! Lenguajes y Autómatas II "r#$es#r% &aime &#e' (uintana )#c*a

description

Unidad 2 Lenguajes y automatas

Transcript of Lenguajes y Autómatas II Optimizacion

Lenguajes y Autmatas II. OptimizacinEdgar Gmez Gutirrez Nc.12550069Lenguajes y Autmatas IIProfesor: Jaime Joel Quintana RochaContenidoTipos de Optimizacin3Costos4Anlisis del flujo de datos4Conclusin5

Introduccin:La optimizacin consiste en mejorar el cdigo intermedio de modo que quede un cdigo maquina ms rpido de ejecutar. Con esto tambin se obtiene optimizacin temporal y optimizacin espacial.

Tipos de Optimizacin.La optimizacin depende del lenguaje de programacin y es directamente proporcional al tiempo de compilacin. La optimizacin es un proceso que tiene que minimizar o maximizar alguna variable de rendimiento, tiempo, espacio, etc.Optimizacin Local:Se realiza sobre mdulos de un programa. Las optimizaciones locales solo se ven reflejadas en mtodos, procedimientos, clases, etc.Ciclos:En ciclos se realizan acciones repetitivas y si estn incorrectas el problema sigue creciendo infinitamente. En la optimizacin por ciclos es difcil saber el uso exacto de algunas instrucciones, as que no todo cdigo de proceso puede ser optimizado.Globales: Son optimizaciones entre bloques bsicos, para realizarla es necesario crear el grafo de flujo de ejecucin, este representa todos los caminos posibles de ejecucin de programa.Mirilla: Trata de estructurar de manera eficiente el flujo del programa, como en instrucciones de bifurcacin tales como decisiones ciclos y saltos de rutina.Diferencias: Local: reemplazan operaciones costosas de la maquina por otras menos costosas. Ciclos: es difcil saber el uso exacto de algunas instrucciones. Mirilla: tener los saltos lo ms cerca de las llamadas, siendo el salto lo ms pequeo posible.

Costos.Los costos son uno de los factores ms importantes al optimizar, la mejora puede a veces no verse reflejada en el programa final. Los costos de ejecucin son aquellos que vienen implcitos al ejecutar el programa. Algunos programas tienen un mnimo 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 ms amplio.Criterios para mejorar el cdigo.La mejor manera de optimizar el cdigo es hacer que los programadores lo optimicen desde el momento de su creacin, el problema sera que se tardara mas en codificar y esto representa tiempo y esfuerzo que representa un costo extra. Los criterios de optimizacin siempre estn definidos por el compilador.

Anlisis del flujo de datosLas principales herramientas para el anlisis de flujo de datos son los depuradores y desambladores. Las principales ventajas del anlisis es que se puede compartir tanto con usuarios finales como con analistas. A medida que los analistas renen hechos y detalles, comprenden mejor el proceso y se puede transmitir mejor los datos.

Conclusin:La optimizacin no solo la desarrollan los programas y/o programadores, todos pueden participar dentro de una empresa desde el usuario final hasta los propios ejecutivos.