[{"data":1,"prerenderedAt":591},["ShallowReactive",2],{"pCNj7Mz1XU":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":590,"_id":4},"VkPhysicalDeviceMemoryBudgetPropertiesEXT","Structure specifying physical device memory budget and usage","VK_EXT_memory_budget","structs",[],{"type":10,"children":11,"toc":588},"root",[12,45,57,356,462,551,582],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26,28,34,36,43],{"type":18,"value":19},"text","If the ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," structure is included\nin the ",{"type":13,"tag":21,"props":29,"children":31},{"className":30},[],[32],{"type":18,"value":33},"pNext",{"type":18,"value":35}," chain of ",{"type":13,"tag":37,"props":38,"children":40},"a",{"href":39},"/man/VkPhysicalDeviceMemoryProperties2",[41],{"type":18,"value":42},"VkPhysicalDeviceMemoryProperties2",{"type":18,"value":44},", it is\nfilled with the current memory budgets and usages.",{"type":13,"tag":14,"props":46,"children":47},{},[48,50,55],{"type":18,"value":49},"The ",{"type":13,"tag":21,"props":51,"children":53},{"className":52},[],[54],{"type":18,"value":4},{"type":18,"value":56}," structure is defined as:",{"type":13,"tag":58,"props":59,"children":60},"code-group",{},[61,165],{"type":13,"tag":62,"props":63,"children":69},"pre",{"className":64,"code":65,"filename":66,"language":67,"meta":68,"style":68},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT {\n VkStructureType sType;\n void* pNext;\n VkDeviceSize heapBudget[VK_MAX_MEMORY_HEAPS];\n VkDeviceSize heapUsage[VK_MAX_MEMORY_HEAPS];\n} VkPhysicalDeviceMemoryBudgetPropertiesEXT;\n","C","c","",[70],{"type":13,"tag":21,"props":71,"children":72},{"__ignoreMap":68},[73,96,105,119,139,156],{"type":13,"tag":74,"props":75,"children":78},"span",{"class":76,"line":77},"line",1,[79,85,90],{"type":13,"tag":74,"props":80,"children":82},{"style":81},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[83],{"type":18,"value":84},"typedef",{"type":13,"tag":74,"props":86,"children":87},{"style":81},[88],{"type":18,"value":89}," struct",{"type":13,"tag":74,"props":91,"children":93},{"style":92},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[94],{"type":18,"value":95}," VkPhysicalDeviceMemoryBudgetPropertiesEXT {\n",{"type":13,"tag":74,"props":97,"children":99},{"class":76,"line":98},2,[100],{"type":13,"tag":74,"props":101,"children":102},{"style":92},[103],{"type":18,"value":104}," VkStructureType sType;\n",{"type":13,"tag":74,"props":106,"children":108},{"class":76,"line":107},3,[109,114],{"type":13,"tag":74,"props":110,"children":111},{"style":81},[112],{"type":18,"value":113}," void*",{"type":13,"tag":74,"props":115,"children":116},{"style":92},[117],{"type":18,"value":118}," pNext;\n",{"type":13,"tag":74,"props":120,"children":122},{"class":76,"line":121},4,[123,128,134],{"type":13,"tag":74,"props":124,"children":125},{"style":92},[126],{"type":18,"value":127}," VkDeviceSize ",{"type":13,"tag":74,"props":129,"children":131},{"style":130},"--shiki-default:#953800;--shiki-dark:#FFA657",[132],{"type":18,"value":133},"heapBudget",{"type":13,"tag":74,"props":135,"children":136},{"style":92},[137],{"type":18,"value":138},"[VK_MAX_MEMORY_HEAPS];\n",{"type":13,"tag":74,"props":140,"children":142},{"class":76,"line":141},5,[143,147,152],{"type":13,"tag":74,"props":144,"children":145},{"style":92},[146],{"type":18,"value":127},{"type":13,"tag":74,"props":148,"children":149},{"style":130},[150],{"type":18,"value":151},"heapUsage",{"type":13,"tag":74,"props":153,"children":154},{"style":92},[155],{"type":18,"value":138},{"type":13,"tag":74,"props":157,"children":159},{"class":76,"line":158},6,[160],{"type":13,"tag":74,"props":161,"children":162},{"style":92},[163],{"type":18,"value":164},"} VkPhysicalDeviceMemoryBudgetPropertiesEXT;\n",{"type":13,"tag":62,"props":166,"children":171},{"className":167,"code":168,"filename":169,"language":170,"meta":68,"style":68},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PhysicalDeviceMemoryBudgetPropertiesEXT {\n s_type: vk::StructureType,\n p_next: *mut c_void,\n heap_budget: *const [vk::DeviceSize ; MAX_MEMORY_HEAPS],\n heap_usage: *const [vk::DeviceSize ; MAX_MEMORY_HEAPS],\n}\n","Rust","rs",[172],{"type":13,"tag":21,"props":173,"children":174},{"__ignoreMap":68},[175,197,230,252,304,348],{"type":13,"tag":74,"props":176,"children":177},{"class":76,"line":77},[178,183,187,192],{"type":13,"tag":74,"props":179,"children":180},{"style":81},[181],{"type":18,"value":182},"pub",{"type":13,"tag":74,"props":184,"children":185},{"style":81},[186],{"type":18,"value":89},{"type":13,"tag":74,"props":188,"children":189},{"style":130},[190],{"type":18,"value":191}," PhysicalDeviceMemoryBudgetPropertiesEXT",{"type":13,"tag":74,"props":193,"children":194},{"style":92},[195],{"type":18,"value":196}," {\n",{"type":13,"tag":74,"props":198,"children":199},{"class":76,"line":98},[200,205,210,215,220,225],{"type":13,"tag":74,"props":201,"children":202},{"style":92},[203],{"type":18,"value":204}," s_type",{"type":13,"tag":74,"props":206,"children":207},{"style":81},[208],{"type":18,"value":209},":",{"type":13,"tag":74,"props":211,"children":212},{"style":130},[213],{"type":18,"value":214}," vk",{"type":13,"tag":74,"props":216,"children":217},{"style":81},[218],{"type":18,"value":219},"::",{"type":13,"tag":74,"props":221,"children":222},{"style":130},[223],{"type":18,"value":224},"StructureType",{"type":13,"tag":74,"props":226,"children":227},{"style":92},[228],{"type":18,"value":229},",\n",{"type":13,"tag":74,"props":231,"children":232},{"class":76,"line":107},[233,238,242,247],{"type":13,"tag":74,"props":234,"children":235},{"style":92},[236],{"type":18,"value":237}," p_next",{"type":13,"tag":74,"props":239,"children":240},{"style":81},[241],{"type":18,"value":209},{"type":13,"tag":74,"props":243,"children":244},{"style":81},[245],{"type":18,"value":246}," *mut",{"type":13,"tag":74,"props":248,"children":249},{"style":92},[250],{"type":18,"value":251}," c_void,\n",{"type":13,"tag":74,"props":253,"children":254},{"class":76,"line":121},[255,260,264,269,274,279,283,288,293,299],{"type":13,"tag":74,"props":256,"children":257},{"style":92},[258],{"type":18,"value":259}," heap_budget",{"type":13,"tag":74,"props":261,"children":262},{"style":81},[263],{"type":18,"value":209},{"type":13,"tag":74,"props":265,"children":266},{"style":81},[267],{"type":18,"value":268}," *const",{"type":13,"tag":74,"props":270,"children":271},{"style":92},[272],{"type":18,"value":273}," [",{"type":13,"tag":74,"props":275,"children":276},{"style":130},[277],{"type":18,"value":278},"vk",{"type":13,"tag":74,"props":280,"children":281},{"style":81},[282],{"type":18,"value":219},{"type":13,"tag":74,"props":284,"children":285},{"style":130},[286],{"type":18,"value":287},"DeviceSize",{"type":13,"tag":74,"props":289,"children":290},{"style":92},[291],{"type":18,"value":292}," ; ",{"type":13,"tag":74,"props":294,"children":296},{"style":295},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[297],{"type":18,"value":298},"MAX_MEMORY_HEAPS",{"type":13,"tag":74,"props":300,"children":301},{"style":92},[302],{"type":18,"value":303},"],\n",{"type":13,"tag":74,"props":305,"children":306},{"class":76,"line":141},[307,312,316,320,324,328,332,336,340,344],{"type":13,"tag":74,"props":308,"children":309},{"style":92},[310],{"type":18,"value":311}," heap_usage",{"type":13,"tag":74,"props":313,"children":314},{"style":81},[315],{"type":18,"value":209},{"type":13,"tag":74,"props":317,"children":318},{"style":81},[319],{"type":18,"value":268},{"type":13,"tag":74,"props":321,"children":322},{"style":92},[323],{"type":18,"value":273},{"type":13,"tag":74,"props":325,"children":326},{"style":130},[327],{"type":18,"value":278},{"type":13,"tag":74,"props":329,"children":330},{"style":81},[331],{"type":18,"value":219},{"type":13,"tag":74,"props":333,"children":334},{"style":130},[335],{"type":18,"value":287},{"type":13,"tag":74,"props":337,"children":338},{"style":92},[339],{"type":18,"value":292},{"type":13,"tag":74,"props":341,"children":342},{"style":295},[343],{"type":18,"value":298},{"type":13,"tag":74,"props":345,"children":346},{"style":92},[347],{"type":18,"value":303},{"type":13,"tag":74,"props":349,"children":350},{"class":76,"line":158},[351],{"type":13,"tag":74,"props":352,"children":353},{"style":92},[354],{"type":18,"value":355},"}\n",{"type":13,"tag":357,"props":358,"children":359},"ul",{},[360,380,398,439],{"type":13,"tag":361,"props":362,"children":363},"li",{},[364,370,372,378],{"type":13,"tag":21,"props":365,"children":367},{"className":366},[],[368],{"type":18,"value":369},"sType",{"type":18,"value":371}," is a ",{"type":13,"tag":37,"props":373,"children":375},{"href":374},"/man/VkStructureType",[376],{"type":18,"value":377},"VkStructureType",{"type":18,"value":379}," value identifying this structure.",{"type":13,"tag":361,"props":381,"children":382},{},[383,388,390,396],{"type":13,"tag":21,"props":384,"children":386},{"className":385},[],[387],{"type":18,"value":33},{"type":18,"value":389}," is ",{"type":13,"tag":21,"props":391,"children":393},{"className":392},[],[394],{"type":18,"value":395},"NULL",{"type":18,"value":397}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":361,"props":399,"children":400},{},[401,406,408,414,418,424,426,431,433,437],{"type":13,"tag":21,"props":402,"children":404},{"className":403},[],[405],{"type":18,"value":133},{"type":18,"value":407}," is an array of ",{"type":13,"tag":21,"props":409,"children":411},{"className":410},[],[412],{"type":18,"value":413},"VK_MAX_MEMORY_HEAPS",{"type":13,"tag":415,"props":416,"children":417},"br",{},[],{"type":13,"tag":37,"props":419,"children":421},{"href":420},"/man/VkDeviceSize",[422],{"type":18,"value":423},"VkDeviceSize",{"type":18,"value":425}," values in which memory budgets are returned, with\none element for each memory heap.\nA heap’s budget is a rough estimate of how much memory the process ",{"type":13,"tag":427,"props":428,"children":430},"normative",{"type":429},"can",[],{"type":18,"value":432},"\nallocate from that heap before allocations ",{"type":13,"tag":427,"props":434,"children":436},{"type":435},"may",[],{"type":18,"value":438}," fail or cause\nperformance degradation.\nThe budget includes any currently allocated device memory.",{"type":13,"tag":361,"props":440,"children":441},{},[442,447,448,453,456,460],{"type":13,"tag":21,"props":443,"children":445},{"className":444},[],[446],{"type":18,"value":151},{"type":18,"value":407},{"type":13,"tag":21,"props":449,"children":451},{"className":450},[],[452],{"type":18,"value":413},{"type":13,"tag":415,"props":454,"children":455},{},[],{"type":13,"tag":37,"props":457,"children":458},{"href":420},[459],{"type":18,"value":423},{"type":18,"value":461}," values in which memory usages are returned, with\none element for each memory heap.\nA heap’s usage is an estimate of how much memory the process is\ncurrently using in that heap.",{"type":13,"tag":14,"props":463,"children":464},{},[465,467,472,474,479,481,485,487,493,494,500,502,507,509,512,514,518,519,524,525,530,531,534,536,542,543,549],{"type":18,"value":466},"The values returned in this structure are not invariant.\nThe ",{"type":13,"tag":21,"props":468,"children":470},{"className":469},[],[471],{"type":18,"value":133},{"type":18,"value":473}," and ",{"type":13,"tag":21,"props":475,"children":477},{"className":476},[],[478],{"type":18,"value":151},{"type":18,"value":480}," values ",{"type":13,"tag":427,"props":482,"children":484},{"type":483},"must",[],{"type":18,"value":486}," be zero for array\nelements greater than or equal to\n",{"type":13,"tag":37,"props":488,"children":490},{"href":489},"/man/VkPhysicalDeviceMemoryProperties",[491],{"type":18,"value":492},"VkPhysicalDeviceMemoryProperties",{"type":18,"value":219},{"type":13,"tag":21,"props":495,"children":497},{"className":496},[],[498],{"type":18,"value":499},"memoryHeapCount",{"type":18,"value":501},".\nThe ",{"type":13,"tag":21,"props":503,"children":505},{"className":504},[],[506],{"type":18,"value":133},{"type":18,"value":508}," value ",{"type":13,"tag":427,"props":510,"children":511},{"type":483},[],{"type":18,"value":513}," be non-zero for array elements less than\n",{"type":13,"tag":37,"props":515,"children":516},{"href":489},[517],{"type":18,"value":492},{"type":18,"value":219},{"type":13,"tag":21,"props":520,"children":522},{"className":521},[],[523],{"type":18,"value":499},{"type":18,"value":501},{"type":13,"tag":21,"props":526,"children":528},{"className":527},[],[529],{"type":18,"value":133},{"type":18,"value":508},{"type":13,"tag":427,"props":532,"children":533},{"type":483},[],{"type":18,"value":535}," be less than or equal to\n",{"type":13,"tag":37,"props":537,"children":539},{"href":538},"/man/VkMemoryHeap",[540],{"type":18,"value":541},"VkMemoryHeap",{"type":18,"value":219},{"type":13,"tag":21,"props":544,"children":546},{"className":545},[],[547],{"type":18,"value":548},"size",{"type":18,"value":550}," for each heap.",{"type":13,"tag":552,"props":553,"children":555},"validity-group",{"name":554},"Valid Usage (Implicit)",[556],{"type":13,"tag":557,"props":558,"children":560},"validity-field",{"name":559},"VUID-VkPhysicalDeviceMemoryBudgetPropertiesEXT-sType-sType",[561],{"type":13,"tag":14,"props":562,"children":563},{},[564,569,571,574,576],{"type":13,"tag":21,"props":565,"children":567},{"className":566},[],[568],{"type":18,"value":369},{"type":18,"value":570}," ",{"type":13,"tag":427,"props":572,"children":573},{"type":483},[],{"type":18,"value":575}," be ",{"type":13,"tag":21,"props":577,"children":579},{"className":578},[],[580],{"type":18,"value":581},"VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT",{"type":13,"tag":583,"props":584,"children":585},"style",{},[586],{"type":18,"value":587},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":68,"searchDepth":98,"depth":98,"links":589},[],"markdown",1725732570728]