Autor
|
Tema: NekroAyuda: Optimizar aplicaciones II: Modificadores del compilador (Leído 9,530 veces)
|
NekroByte
|
Optimizar Aplicaciones (Segunda Parte) Modificadores del compilador para código nativo Microsoft Visual Basic permite compilar las aplicaciones a código nativo rápido y eficiente mediante la misma tecnología de optimización de compilación que Microsoft Visual C++. La compilación a código nativo proporciona varias opciones de optimización y depuración que no se encuentran disponibles en el p-code. Estas opciones se conocen tradicionalmente como "modificadores", porque cada opción puede estar activada o desactivada. En este apéndice se documentan las opciones del compilador para código nativo, que aparecen en la ficha Compilar del cuadro de diálogo Propiedades del proyecto, disponible en el menú Proyecto. Para obtener más información acerca del código nativo, vea "Compilar proyectos a código nativo" en "Detalles de programación".
|
|
|
En línea
|
|
|
|
NekroByte
|
Optimizar para código rápido Maximiza la velocidad de los archivos ejecutables compilados al indicar al compilador que anteponga la velocidad al tamaño. Cuando el compilador traduce instrucciones de Visual Basic a código máquina, puede haber muchas secuencias de código máquina diferentes que representan correctamente una instrucción o una estructura dada. Algunas veces, estas diferencias ofrecen ventajas en cuanto a velocidad o tamaño. La selección de esta opción asegura que, cuando el compilador reconoce dichas alternativas, siempre generará la secuencia de código más rápida posible, incluso cuando esto aumente el tamaño del programa compilado.
|
|
|
En línea
|
|
|
|
NekroByte
|
Optimizar para código reducido Minimiza el tamaño de los archivos ejecutables compilados al indicar al compilador que anteponga el tamaño a la velocidad. Cuando el compilador traduce instrucciones de Visual Basic a código máquina, puede haber muchas secuencias de código máquina diferentes que representan correctamente una instrucción o una estructura dada. Algunas veces, estas diferencias ofrecen ventajas en cuanto a velocidad o tamaño. La selección de esta opción asegura que, cuando el compilador reconoce dichas alternativas, siempre generará la secuencia de código más pequeña posible, incluso cuando esto disminuya la velocidad de ejecución del programa compilado.
|
|
|
En línea
|
|
|
|
NekroByte
|
Sin optimización Desactiva todas las optimizaciones. Si selecciona esta opción, el compilador genera código notablemente más lento y de mayor tamaño que si selecciona la optimización para velocidad o para código reducido.
|
|
|
En línea
|
|
|
|
NekroByte
|
Optimizar para Pentium Pro Optimiza la generación de código para aprovechar el procesador Pentium Pro (P6). El código generado con esta opción se podrá ejecutar en procesadores anteriores, pero con menor eficiencia. La arquitectura del microprocesador Pentium Pro permite ciertas estrategias de generación de código que pueden incrementar la eficiencia de forma sustancial. Sin embargo, el código creado mediante estas estrategias no tiene el mismo rendimiento en los equipos basados en 80386, 80486 o en los equipos Pentium. Por tanto, sólo debe usar esta opción si todas, o la mayor parte de las máquinas que van a ejecutar su programa tienen un procesador Pentium Pro.
|
|
|
En línea
|
|
|
|
NekroByte
|
Generar información de depuración simbólica Genera información de depuración visible en el código dentro del archivo ejecutable compilado. Los programas compilados a código nativo mediante esta opción se pueden depurar con Visual C++ 5.0, superior u otro depurador compatible. La activación de esta opción genera un archivo .pdb con la información simbólica requerida para usar con depuradores simbólicos compatibles.
|
|
|
En línea
|
|
|
|
NekroByte
|
Sin alias para las variables Indica al compilador que el programa no utiliza alias. Un alias es un nombre que hace referencia a una ubicación de memoria a la que ya se hizo referencia mediante un nombre diferente. Esto ocurre cuando se utilizan argumentos ByRef que hacen referencia a la misma variable de dos maneras. Por ejemplo: Sub Foo(x as Integer, y as Integer) x = 5 ' El código hace referencia a la misma ' variable (la variable local z en Main) y = 6 ' a través de dos nombres distintos, x e y. End Sub Sub Main Dim z as Integer Foo z,z End Sub El uso de esta opción permite al compilador aplicar optimizaciones que no podría aplicar de otra manera, como almacenar variables en registros y realizar optimizaciones por medio de bucles. Sin embargo, debe tener cuidado de no activar esta opción si el programa pasa argumentos ByRef, ya que las optimizaciones pueden hacer que el programa no funcione bien.
|
|
|
En línea
|
|
|
|
NekroByte
|
Quitar comprobaciones de límites en matrices Desactiva la comprobación de errores en los índices válidos y en el número correcto de dimensiones de las matrices. De forma predeterminada, Visual Basic efectúa una comprobación cada vez que se tiene acceso a una matriz para determinar si el índice se encuentra dentro del intervalo de la matriz. Si el índice se encuentra fuera de los límites de la matriz, se produce un error. Seleccionar esta opción desactiva esta comprobación, lo que favorece la velocidad de manipulación de las matrices. Sin embargo, si el programa tiene acceso a una matriz con un índice que está fuera de los límites, es posible que tenga acceso a ubicaciones de memoria no válidas sin obtener ninguna advertencia. Esto puede provocar un comportamiento inesperado o fallos del programa.
|
|
|
En línea
|
|
|
|
NekroByte
|
Quitar comprobaciones de desbordamiento con enteros Desactiva la comprobación de errores de que la asignación de valores numéricos válidos a variables enteras se encuentra dentro del intervalo correcto para el tipo de datos. De forma predeterminada, Visual Basic comprueba en cada cálculo que se efectúa sobre una variable del tipo de datos entero ( Byte, Integer, Long y Currency), si el valor resultante se encuentra dentro del intervalo de ese tipo de datos. Si el valor tiene una magnitud errónea, se produce un error. Seleccionar esta opción desactiva esta comprobación de errores, lo que aumenta la velocidad de los cálculos con números enteros. Sin embargo, si se desborda la capacidad de este tipo de datos, no se devolverán errores y pueden producirse resultados incorrectos.
|
|
|
En línea
|
|
|
|
NekroByte
|
Quitar comprobaciones de errores en aritmética de punto flotante Desactiva la comprobación de que la asignación de valores numéricos a variables se encuentra dentro del intervalo correcto para el tipo de datos y la de que no se realicen divisiones por cero ni otras operaciones no válidas. De forma predeterminada, Visual Basic comprueba en cada cálculo que se efectúa sobre una variable de los tipos de datos con punto flotante (Single y Double), si el valor resultante se encuentra dentro del intervalo del tipo de datos. Si el valor tiene una magnitud errónea, se produce un error. También realiza una comprobación para determinar si se intenta realizar divisiones por cero u otras operaciones no válidas. Seleccionar esta opción desactiva estas comprobaciones, lo que aumenta la velocidad de los cálculos con punto flotante. Sin embargo, si se desbordan las capacidades de estos tipos de datos, no se devuelven errores y pueden producirse resultados incorrectos.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
(SOLUCIONADO) Como implemento switches/modificadores a mi .bat? con %1 %2 %3?
Scripting
|
SuperDraco
|
2
|
3,861
|
30 Marzo 2011, 00:12 am
por SuperDraco
|
|
|
[AYUDA] Modificadores de tipos
Programación C/C++
|
Dipirona
|
4
|
2,808
|
12 Abril 2013, 01:57 am
por 85
|
|
|
modificadores para arduino???
Electrónica
|
submarino_02
|
1
|
4,387
|
5 Noviembre 2015, 01:52 am
por Minusfour_cierralo_o_baneamefull
|
|
|
CrowdTesting para optimizar las aplicaciones
Noticias
|
wolfbcn
|
0
|
1,389
|
15 Diciembre 2017, 01:57 am
por wolfbcn
|
|
|
Duda con modificadores de tipo
Programación C/C++
|
DiegoSD
|
2
|
2,700
|
8 Junio 2020, 09:30 am
por Eternal Idol
|
|