Resultados de la búsqueda a petición "memory-alignment"

4 la respuesta

Por qué el tamaño de la clase aumenta cuando int64_t cambia a int32_t

En mi primer ejemplo, tengo dos campos de bits usandoint64_t. Cuando compilo y obtengo el tamaño de la clase, obtengo 8. class Test { int64_t first : 40; int64_t second : 24; }; int main() { std::cout << sizeof(Test); // 8 }Pero cuando cambio el ...

3 la respuesta

Lectura de una refundición uint8_t no alineada como una matriz uint32_t, sin obtener todos los valores

Estoy tratando de emitir una matriz uint8_t a la matriz uint32_t. Sin embargo, cuando trato de hacer esto, parece que no puedo acceder a cada 4 bytes consecutivos. Digamos que tengo una matriz uint8_t con 8 bytes. Me gustaría acceder al byte ...

1 la respuesta

Linux en arm64: sendto causa "Error no controlado: error de alineación (0x96000021)" al enviar datos desde el búfer DMA coherente mmapped

Estoy construyendo un sistema de adquisición de datos basado en el UltraScale + FPGA equipado con CPU arm64. Los datos se transmiten a la RAM a través de DMA. Los buffers de DMA en el controlador están reservados de la siguiente ...

4 la respuesta

combinando datos empaquetados con acceso a memoria alineado

Estoy tratando de realizar una optimización de memoria que debería ser teóricamente posible pero que estoy empezando a dudar está dentro de la capacidad de arm-elf-gcc. Por favor muéstrame que estoy equivocado. Tengo un sistema integrado con una ...

4 la respuesta

crear una función C con un tamaño dado en el segmento de texto

Estoy programando un incrustadopowerpc [/questions/tagged/powerpc]Sistema 32 con una memoria caché asociativa de instrucciones L2 de 32 vías de 32 kbytes. Para evitar el intercambio de caché, alineamos las funciones de tal manera que el texto de ...

2 la respuesta

¿Cómo usar alignof para forzar la alineación para una asignación de montón?

Me gustaría forzar una asignación de montón específica para que devuelva una dirección que esté alineada con 64 bytes, porque es un límite de línea de caché. Pensé que podría hacerlo así int *p = new alignas(64) int;pero ninguno de mis ...

3 la respuesta

Alineación de memoria de matrices

Tengo problemas para alinear la memoria para la transferencia de DMA en el procesador Cell. Necesito que los últimos 4 bits de una dirección sean 0. Tengo 4 matrices deunsigned int donde cada elemento debe estaralineado en memoria para que su ...

4 la respuesta

Al extender una estructura acolchada, ¿por qué no se pueden colocar campos adicionales en el relleno de la cola?

Consideremos las estructuras: struct S1 { int a; char b; }; struct S2 { struct S1 s; /* struct needed to make this compile as C without typedef */ char c; }; // For the C++ fans struct S3 : S1 { char c; };El tamaño de S1 es 8, que se espera ...

4 la respuesta

¿Por qué la alineación de estructura depende de si un tipo de campo es primitivo o está definido por el usuario?

EnNoda Time [http://nodatime.org]v2, nos estamos moviendo a una resolución de nanosegundos. Eso significa que ya no podemos usar un número entero de 8 bytes para representar todo el rango de tiempo que nos interesa. Eso me ha llevado a investigar ...

2 la respuesta

¿Cuál es el propósito del campo de bits sin nombre al final de la estructura?

Estoy aprendiendo C. EnC Primer Plus, Vi un ejemplo de campo de bits de la siguiente manera: struct box_props { bool opaque : 1; unsigned int fill_color : 3; unsigned int : 4; bool show_border : 1; unsigned int border_color : 3; unsigned ...