Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
使用放置新运算符时我真的需要担心对齐吗?
我读了这个我什么时候应该担心对齐问题 https stackoverflow com questions 6474316 when should i worry about alignment但我仍然不知道是否需要担心放置新运算符返回的未对
c
g
memoryalignment
powerpc
placementnew
这种尺寸对齐是如何工作的
对于所提供的评论 我无法理解以下代码 这段代码的作用是什么 以及等效的代码是什么8 aligned segment size must be 4 aligned attr gt options ssize 3 Here ssize is o
c
struct
BitManipulation
memoryalignment
SSE:跨页边界的未对齐加载和存储
我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
c
Linux
x8664
SSE
memoryalignment
POD 结构或标准布局类型的成员是否保证根据其对齐要求进行对齐?
给定一个 POD 结构 在 C 03 中 或一个标准布局类型 在 C 11 中 所有成员都有基本对齐要求 是否可以保证每个成员都根据其对齐要求进行对齐 换句话说 对于所有成员m k in m0 mn标准布局类型的 S struct S T0
c
C11
languagelawyer
memoryalignment
c03
对于所有对象类型 T 来说,sizeof(T) >=alignof(T) 总是这样吗?
对于任何对象类型T是不是总是这样sizeof T 至少与alignof T 直观上似乎是这样 因为即使您调整对象的对齐方式 例如 struct small char c 高于通常的情况 它们的 大小 也会向上调整 以便数组中的对象之间的关系
c
C11
memoryalignment
alignof
std::aligned_alloc() 的重新分配等效项是什么?
我发觉到std aligned alloc https en cppreference com w cpp memory c aligned alloc进入 C 17 我喜欢它 但是 当我需要重新分配时会发生什么 我可以手动执行此操作 假设
c
C17
memoryalignment
dynamicallocation
memoryreallocation
#pragma pack(16) 和 #pragma pack(8) 的效果总是相同吗?
我正在尝试使用来对齐数据成员 pragma pack n http msdn microsoft com en us library 2e70t5y1 28v vs 100 29 aspx 以下面为例 include
c
cpreprocessor
memoryalignment
pragma
preprocessordirective
__declspec(align) 用于多个声明
抱歉 这个非常简单的问题 无法在谷歌上找到答案 这个声明语法是 declspec align 16 float rF 4 declspec align 16 float gF 4 declspec align 16 float bF 4 相
c
visualstudio2010
syntax
memoryalignment
declspec
编译器优化对 malloc 的调用以返回更多弱对齐内存是否合法?
假设我们有以下代码 include
c
malloc
languagelawyer
memoryalignment
缓存行对齐(需要文章澄清)
我最近在我的应用程序中遇到了我认为是错误共享的问题 我查了一下关于如何将我的数据与缓存行对齐 他建议使用以下 C 代码 C using C 0x alignment syntax template
c
Multithreading
caching
C11
memoryalignment
对齐静态字符串文字
我有一个静态结构数组 struct CommandStruct char data unsigned ans size static const CommandStruct commands Some literal 28 Some oth
c
VisualStudio
memoryalignment
#pragma pack、模板类型定义和结构对齐
使用 Visual Studio 或 gcc 如果有的话 pragma pack push 16 typedef std map
c
templates
visualc
gcc
memoryalignment
如何保证成员4字节对齐?
为了使用 OSAtomicDecrement mac 特定的原子操作 我需要提供一个 4 字节对齐的 SInt32 这样的煮法有用吗 还有其他方法可以解决对齐问题吗 struct SomeClass SomeClass member sto
c
atomic
memoryalignment
为什么无法一步读取未对齐的单词?
鉴于 CPU 的字大小允许它寻址内存中的每个字节 鉴于通过PAE http en wikipedia org wiki Physical address extensionCPU 甚至可以使用比字大小更多的位来进行寻址 CPU 无法一步读取
C 避免对齐问题
请解释一下 下面的示例到底有什么问题 特别是 这可能导致从不是四的倍数的地址加载 32 位无符号长整型 的部分 编译器通常会自然地防止对齐问题 对齐所有数据类型 事实上 对齐问题通常不是 内核开发人员主要关心的问题 gcc 人员必须担心 关
c
Alignment
memoryalignment
malloc + size_t * 3 的地址对于任何类型都是对齐的吗?
我正在构建一种动态数组 向量 但不是嵌入数据 通常是void 变成struct vector 我正在预留空间struct vector 一大块字节 使用数组的示例size t s include
c
malloc
memoryalignment
为什么对齐是2的幂?
有一句话来自参考参数 http en cppreference com w cpp language object Alignment 每个对象类型都具有称为对齐要求的属性 该属性 是一个整数值 std size t 类型 始终是 2 的幂
c
memoryalignment
在文本段中创建具有给定大小的 C 函数
我正在编程一个嵌入式powerpc questions tagged powerpc32位系统具有32 kbyte 8路组相联二级指令缓存 为了避免缓存抖动 我们以某种方式对齐函数 使得高频调用的一组函数的文本 想想中断代码 最终出现在单独
c
gcc
memoryalignment
powerpc
Intel x86 与 AMD x86 CPU 上的访问性能不一致
我已经实现了一个带有结构内存布局数组的简单线性探测哈希图 该结构包含键 值和指示条目是否有效的标志 默认情况下 该结构体由编译器填充 因为键和值是 64 位整数 但该条目仅占用 8 个布尔值 因此 我也尝试以未对齐访问为代价来打包结构 由于
x8664
intel
cpuarchitecture
memoryalignment
amdprocessor
具有虚函数的类的大小
我正在修改 C 概念 但我坚持使用非常简单的代码 include
c
sizeof
virtualfunctions
memoryalignment
1
2
3
4
5
»