gpt4 book ai didi

visual-c++ - D3D12 CreateHeap 对齐,MSDN 使用 1024 还是 1000 来定义 KB

转载 作者:行者123 更新时间:2023-12-02 15:51:33 29 4
gpt4 key购买 nike

我正在尝试使用 CreateHeapPlacedResources在 DirectX12 中。但是对于 CreateHeap,它需要 D3D12_HEAP_DESC它说“应用程序应该传递 SizeInBytes(D3D12_HEAP_DESC 的一个字段)值,这些值是有效对齐的倍数”。然后他们去显示对齐 D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT #defined as 64KB.,其中表示 64KB 是对齐。

Microsoft DirectX12 是否使用 65536 字节作为其对 64KB 或 64000 字节的定义(因此基本上 1024 或 1000 字节是微软对 KB 的定义)?我不想浪费任何字节,而且我不知道在哪里可以找到这些类型的微软单位的定义。正如维基百科所示 1024 KB作为 KiloByte 的传统单位,微软标准是否与时俱进也是一个问题。

最佳答案

SI 单位的“Kibi”与“Kilo”差异很重要,特别是对于固定存储大小。也就是说,在编程规范中,“KB”几乎总是表示“1024 字节”。

如果您查看 d3d12.h header ,您会看到 D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT 的值为 base-2:

#define D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT      ( 65536 )

关于visual-c++ - D3D12 CreateHeap 对齐,MSDN 使用 1024 还是 1000 来定义 KB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72440562/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com