Tag: COMPILER-OPTIMIZATION
El siguiente ejemplo proviene de “Computer Organization and Design: the Hardware/Software Interface: quinta edición”. En el libro, el autor describe el código MIPS resultante, después de compilar el código C, como un “bloque básico”, que define como: una secuencia de instrucciones sin ramificaciones, excepto posiblemente al final, y sin objetivos . . . Read more
C++17 std::clamp es una función de plantilla que asegura que el valor de entrada no sea menor que el mínimo dado y no sea mayor que el máximo dado, y devuelve el valor de entrada; de lo contrario devuelve el mínimo o el máximo respectivamente. El objetivo es optimizarla, asumiendo . . . Read more
Considere el siguiente código de muestra: struct X { const int n; }; union U { X x; float f; }; void fun() { U u = {{ 1 }}; u.f = 5.f; // OK, crea un nuevo subobjeto de ‘u’ X *p = new (&u.x) X {2}; // OK, . . . Read more
¿Tengo el entendimiento correcto de que en el primer caso (1) la variable i será creada con un valor de 0, y en (2) será creada sin valor y luego se le asignará un valor de 0, por lo que (1) siempre será más rápido que (2)? Pero parece que . . . Read more
Tengo que realizar una gran cantidad de operaciones (sumas) en enteros relativamente pequeños, y empecé a considerar qué tipo de datos daría el mejor rendimiento en una máquina de 64 bits. Estaba convencido de que sumar 4 uint16 tardaría lo mismo que sumar un uint64, ya que la ALU podría . . . Read more