Preguntas etiquetadas con compiler-optimization

La optimización del compilador implica adaptar un compilador para reducir el tiempo de ejecución o el tamaño del objeto o ambos. Esto se puede lograr utilizando argumentos del compilador (es decir, CFLAGS, LDFLAGS), complementos del compilador (DEHYDRA, por ejemplo) o modificaciones directas al compilador (como modificar el código fuente).


3
El uso de este puntero provoca una desoptimización extraña en el bucle dinámico
Recientemente me encontré con una desoptimización extraña (o más bien perdí la oportunidad de optimización). Considere esta función para desempaquetar de manera eficiente conjuntos de enteros de 3 bits a enteros de 8 bits. Descomprime 16 ints en cada iteración de bucle: void unpack3bit(uint8_t* target, char* source, int size) { …

11
Eficiencia de retorno prematuro en una función
Esta es una situación con la que me encuentro con frecuencia como programador sin experiencia y me pregunto sobre todo para un proyecto mío ambicioso y de alta velocidad que estoy tratando de optimizar. Para los principales lenguajes similares a C (C, objC, C ++, Java, C #, etc.) y …

3
Niveles de optimización de Clang
En gcc, el manual explica qué -O3, -Osetc. traducir en términos de argumentos de optimización específica ( -funswitch-loops, -fcompare-elim, etc.) Estoy buscando la misma información para clang . Busqué en línea y en el man clangque solo brinda información general ( -O2optimiza más que -O1, -Osoptimiza para la velocidad,…) y …






2
Java 8: Class.getName () ralentiza la cadena de concatenación de cadenas
Recientemente me he encontrado con un problema relacionado con la concatenación de cadenas. Este punto de referencia lo resume: @OutputTimeUnit(TimeUnit.NANOSECONDS) public class BrokenConcatenationBenchmark { @Benchmark public String slow(Data data) { final Class<? extends Data> clazz = data.clazz; return "class " + clazz.getName(); } @Benchmark public String fast(Data data) { final …



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.