[{"data":1,"prerenderedAt":767},["ShallowReactive",2],{"A3m2Pl2WaL":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":766,"_id":4},"vkGetPipelineExecutableStatisticsKHR","Get compile time statistics associated with a pipeline executable","VK_KHR_pipeline_executable_properties","protos",[],{"type":10,"children":11,"toc":764},"root",[12,37,374,439,522,616,758],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,25,27,30,32,35],{"type":18,"value":19},"text","Each pipeline executable ",{"type":13,"tag":21,"props":22,"children":24},"normative",{"type":23},"may",[],{"type":18,"value":26}," have a set of statistics associated with it\nthat are generated by the pipeline compilation process.\nThese statistics ",{"type":13,"tag":21,"props":28,"children":29},{"type":23},[],{"type":18,"value":31}," include things such as instruction counts, amount of\nspilling (if any), maximum number of simultaneous threads, or anything else\nwhich ",{"type":13,"tag":21,"props":33,"children":34},{"type":23},[],{"type":18,"value":36}," aid developers in evaluating the expected performance of a\nshader.\nTo query the compile time statistics associated with a pipeline executable,\ncall:",{"type":13,"tag":38,"props":39,"children":40},"code-group",{},[41,166],{"type":13,"tag":42,"props":43,"children":49},"pre",{"className":44,"code":45,"filename":46,"language":47,"meta":48,"style":48},"language-c shiki shiki-themes github-light-default github-dark-default","VkResult vkGetPipelineExecutableStatisticsKHR(\n VkDevice device,\n const VkPipelineExecutableInfoKHR* pExecutableInfo,\n uint32_t* pStatisticCount,\n VkPipelineExecutableStatisticKHR* pStatistics);\n","C","c","",[50],{"type":13,"tag":51,"props":52,"children":53},"code",{"__ignoreMap":48},[54,76,96,125,143],{"type":13,"tag":55,"props":56,"children":59},"span",{"class":57,"line":58},"line",1,[60,66,71],{"type":13,"tag":55,"props":61,"children":63},{"style":62},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[64],{"type":18,"value":65},"VkResult ",{"type":13,"tag":55,"props":67,"children":69},{"style":68},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[70],{"type":18,"value":4},{"type":13,"tag":55,"props":72,"children":73},{"style":62},[74],{"type":18,"value":75},"(\n",{"type":13,"tag":55,"props":77,"children":79},{"class":57,"line":78},2,[80,85,91],{"type":13,"tag":55,"props":81,"children":82},{"style":62},[83],{"type":18,"value":84}," VkDevice ",{"type":13,"tag":55,"props":86,"children":88},{"style":87},"--shiki-default:#953800;--shiki-dark:#FFA657",[89],{"type":18,"value":90},"device",{"type":13,"tag":55,"props":92,"children":93},{"style":62},[94],{"type":18,"value":95},",\n",{"type":13,"tag":55,"props":97,"children":99},{"class":57,"line":98},3,[100,106,111,116,121],{"type":13,"tag":55,"props":101,"children":103},{"style":102},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[104],{"type":18,"value":105}," const",{"type":13,"tag":55,"props":107,"children":108},{"style":62},[109],{"type":18,"value":110}," VkPipelineExecutableInfoKHR",{"type":13,"tag":55,"props":112,"children":113},{"style":102},[114],{"type":18,"value":115},"*",{"type":13,"tag":55,"props":117,"children":118},{"style":87},[119],{"type":18,"value":120}," pExecutableInfo",{"type":13,"tag":55,"props":122,"children":123},{"style":62},[124],{"type":18,"value":95},{"type":13,"tag":55,"props":126,"children":128},{"class":57,"line":127},4,[129,134,139],{"type":13,"tag":55,"props":130,"children":131},{"style":102},[132],{"type":18,"value":133}," uint32_t*",{"type":13,"tag":55,"props":135,"children":136},{"style":87},[137],{"type":18,"value":138}," pStatisticCount",{"type":13,"tag":55,"props":140,"children":141},{"style":62},[142],{"type":18,"value":95},{"type":13,"tag":55,"props":144,"children":146},{"class":57,"line":145},5,[147,152,156,161],{"type":13,"tag":55,"props":148,"children":149},{"style":62},[150],{"type":18,"value":151}," VkPipelineExecutableStatisticKHR",{"type":13,"tag":55,"props":153,"children":154},{"style":102},[155],{"type":18,"value":115},{"type":13,"tag":55,"props":157,"children":158},{"style":87},[159],{"type":18,"value":160}," pStatistics",{"type":13,"tag":55,"props":162,"children":163},{"style":62},[164],{"type":18,"value":165},");\n",{"type":13,"tag":42,"props":167,"children":172},{"className":168,"code":169,"filename":170,"language":171,"meta":48,"style":48},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn get_pipeline_executable_statistics_khr(\n device: crate :: vk :: vk::Device,\n p_executable_info: *const vk::PipelineExecutableInfoKHR,\n p_statistic_count: *mut u32,\n p_statistics: *mut vk::PipelineExecutableStatisticKHR,\n) -> vk::Result;\n","Rust","rs",[173],{"type":13,"tag":51,"props":174,"children":175},{"__ignoreMap":48},[176,198,249,283,309,342],{"type":13,"tag":55,"props":177,"children":178},{"class":57,"line":58},[179,184,189,194],{"type":13,"tag":55,"props":180,"children":181},{"style":102},[182],{"type":18,"value":183},"pub",{"type":13,"tag":55,"props":185,"children":186},{"style":102},[187],{"type":18,"value":188}," fn",{"type":13,"tag":55,"props":190,"children":191},{"style":68},[192],{"type":18,"value":193}," get_pipeline_executable_statistics_khr",{"type":13,"tag":55,"props":195,"children":196},{"style":62},[197],{"type":18,"value":75},{"type":13,"tag":55,"props":199,"children":200},{"class":57,"line":78},[201,206,211,216,221,226,231,236,240,245],{"type":13,"tag":55,"props":202,"children":203},{"style":62},[204],{"type":18,"value":205}," device",{"type":13,"tag":55,"props":207,"children":208},{"style":102},[209],{"type":18,"value":210},":",{"type":13,"tag":55,"props":212,"children":213},{"style":102},[214],{"type":18,"value":215}," crate",{"type":13,"tag":55,"props":217,"children":218},{"style":102},[219],{"type":18,"value":220}," ::",{"type":13,"tag":55,"props":222,"children":223},{"style":62},[224],{"type":18,"value":225}," vk ",{"type":13,"tag":55,"props":227,"children":228},{"style":102},[229],{"type":18,"value":230},"::",{"type":13,"tag":55,"props":232,"children":233},{"style":87},[234],{"type":18,"value":235}," vk",{"type":13,"tag":55,"props":237,"children":238},{"style":102},[239],{"type":18,"value":230},{"type":13,"tag":55,"props":241,"children":242},{"style":87},[243],{"type":18,"value":244},"Device",{"type":13,"tag":55,"props":246,"children":247},{"style":62},[248],{"type":18,"value":95},{"type":13,"tag":55,"props":250,"children":251},{"class":57,"line":98},[252,257,261,266,270,274,279],{"type":13,"tag":55,"props":253,"children":254},{"style":62},[255],{"type":18,"value":256}," p_executable_info",{"type":13,"tag":55,"props":258,"children":259},{"style":102},[260],{"type":18,"value":210},{"type":13,"tag":55,"props":262,"children":263},{"style":102},[264],{"type":18,"value":265}," *const",{"type":13,"tag":55,"props":267,"children":268},{"style":87},[269],{"type":18,"value":235},{"type":13,"tag":55,"props":271,"children":272},{"style":102},[273],{"type":18,"value":230},{"type":13,"tag":55,"props":275,"children":276},{"style":87},[277],{"type":18,"value":278},"PipelineExecutableInfoKHR",{"type":13,"tag":55,"props":280,"children":281},{"style":62},[282],{"type":18,"value":95},{"type":13,"tag":55,"props":284,"children":285},{"class":57,"line":127},[286,291,295,300,305],{"type":13,"tag":55,"props":287,"children":288},{"style":62},[289],{"type":18,"value":290}," p_statistic_count",{"type":13,"tag":55,"props":292,"children":293},{"style":102},[294],{"type":18,"value":210},{"type":13,"tag":55,"props":296,"children":297},{"style":102},[298],{"type":18,"value":299}," *mut",{"type":13,"tag":55,"props":301,"children":302},{"style":87},[303],{"type":18,"value":304}," u32",{"type":13,"tag":55,"props":306,"children":307},{"style":62},[308],{"type":18,"value":95},{"type":13,"tag":55,"props":310,"children":311},{"class":57,"line":145},[312,317,321,325,329,333,338],{"type":13,"tag":55,"props":313,"children":314},{"style":62},[315],{"type":18,"value":316}," p_statistics",{"type":13,"tag":55,"props":318,"children":319},{"style":102},[320],{"type":18,"value":210},{"type":13,"tag":55,"props":322,"children":323},{"style":102},[324],{"type":18,"value":299},{"type":13,"tag":55,"props":326,"children":327},{"style":87},[328],{"type":18,"value":235},{"type":13,"tag":55,"props":330,"children":331},{"style":102},[332],{"type":18,"value":230},{"type":13,"tag":55,"props":334,"children":335},{"style":87},[336],{"type":18,"value":337},"PipelineExecutableStatisticKHR",{"type":13,"tag":55,"props":339,"children":340},{"style":62},[341],{"type":18,"value":95},{"type":13,"tag":55,"props":343,"children":345},{"class":57,"line":344},6,[346,351,356,360,364,369],{"type":13,"tag":55,"props":347,"children":348},{"style":62},[349],{"type":18,"value":350},") ",{"type":13,"tag":55,"props":352,"children":353},{"style":102},[354],{"type":18,"value":355},"->",{"type":13,"tag":55,"props":357,"children":358},{"style":87},[359],{"type":18,"value":235},{"type":13,"tag":55,"props":361,"children":362},{"style":102},[363],{"type":18,"value":230},{"type":13,"tag":55,"props":365,"children":366},{"style":87},[367],{"type":18,"value":368},"Result",{"type":13,"tag":55,"props":370,"children":371},{"style":62},[372],{"type":18,"value":373},";\n",{"type":13,"tag":375,"props":376,"children":377},"ul",{},[378,389,400,411],{"type":13,"tag":379,"props":380,"children":381},"li",{},[382,387],{"type":13,"tag":51,"props":383,"children":385},{"className":384},[],[386],{"type":18,"value":90},{"type":18,"value":388}," is the device that created the pipeline.",{"type":13,"tag":379,"props":390,"children":391},{},[392,398],{"type":13,"tag":51,"props":393,"children":395},{"className":394},[],[396],{"type":18,"value":397},"pExecutableInfo",{"type":18,"value":399}," describes the pipeline executable being queried.",{"type":13,"tag":379,"props":401,"children":402},{},[403,409],{"type":13,"tag":51,"props":404,"children":406},{"className":405},[],[407],{"type":18,"value":408},"pStatisticCount",{"type":18,"value":410}," is a pointer to an integer related to the number\nof statistics available or queried, as described below.",{"type":13,"tag":379,"props":412,"children":413},{},[414,420,422,428,430,437],{"type":13,"tag":51,"props":415,"children":417},{"className":416},[],[418],{"type":18,"value":419},"pStatistics",{"type":18,"value":421}," is either ",{"type":13,"tag":51,"props":423,"children":425},{"className":424},[],[426],{"type":18,"value":427},"NULL",{"type":18,"value":429}," or a pointer to an array of\n",{"type":13,"tag":431,"props":432,"children":434},"a",{"href":433},"/man/VkPipelineExecutableStatisticKHR",[435],{"type":18,"value":436},"VkPipelineExecutableStatisticKHR",{"type":18,"value":438}," structures.",{"type":13,"tag":14,"props":440,"children":441},{},[442,444,449,451,456,458,463,465,470,472,476,478,483,485,490,492,497,499,504,506,512,514,520],{"type":18,"value":443},"If ",{"type":13,"tag":51,"props":445,"children":447},{"className":446},[],[448],{"type":18,"value":419},{"type":18,"value":450}," is ",{"type":13,"tag":51,"props":452,"children":454},{"className":453},[],[455],{"type":18,"value":427},{"type":18,"value":457},", then the number of statistics associated\nwith the pipeline executable is returned in ",{"type":13,"tag":51,"props":459,"children":461},{"className":460},[],[462],{"type":18,"value":408},{"type":18,"value":464},".\nOtherwise, ",{"type":13,"tag":51,"props":466,"children":468},{"className":467},[],[469],{"type":18,"value":408},{"type":18,"value":471}," ",{"type":13,"tag":21,"props":473,"children":475},{"type":474},"must",[],{"type":18,"value":477}," point to a variable set by the\napplication to the number of elements in the ",{"type":13,"tag":51,"props":479,"children":481},{"className":480},[],[482],{"type":18,"value":419},{"type":18,"value":484}," array, and on\nreturn the variable is overwritten with the number of structures actually\nwritten to ",{"type":13,"tag":51,"props":486,"children":488},{"className":487},[],[489],{"type":18,"value":419},{"type":18,"value":491},".\nIf ",{"type":13,"tag":51,"props":493,"children":495},{"className":494},[],[496],{"type":18,"value":408},{"type":18,"value":498}," is less than the number of statistics associated\nwith the pipeline executable, at most ",{"type":13,"tag":51,"props":500,"children":502},{"className":501},[],[503],{"type":18,"value":408},{"type":18,"value":505}," structures will\nbe written, and ",{"type":13,"tag":51,"props":507,"children":509},{"className":508},[],[510],{"type":18,"value":511},"VK_INCOMPLETE",{"type":18,"value":513}," will be returned instead of\n",{"type":13,"tag":51,"props":515,"children":517},{"className":516},[],[518],{"type":18,"value":519},"VK_SUCCESS",{"type":18,"value":521},", to indicate that not all the available statistics were\nreturned.",{"type":13,"tag":523,"props":524,"children":526},"validity-group",{"name":525},"Valid Usage",[527,554,586],{"type":13,"tag":528,"props":529,"children":531},"validity-field",{"name":530},"VUID-vkGetPipelineExecutableStatisticsKHR-pipelineExecutableInfo-03272",[532],{"type":13,"tag":14,"props":533,"children":534},{},[535,537,547,549,552],{"type":18,"value":536},"The ",{"type":13,"tag":431,"props":538,"children":540},{"href":539},"/man/VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR#features-pipelineExecutableInfo",[541],{"type":13,"tag":51,"props":542,"children":544},{"className":543},[],[545],{"type":18,"value":546},"pipelineExecutableInfo",{"type":18,"value":548},"\nfeature ",{"type":13,"tag":21,"props":550,"children":551},{"type":474},[],{"type":18,"value":553}," be enabled",{"type":13,"tag":528,"props":555,"children":557},{"name":556},"VUID-vkGetPipelineExecutableStatisticsKHR-pipeline-03273",[558],{"type":13,"tag":14,"props":559,"children":560},{},[561,562,568,570,575,576,579,581],{"type":18,"value":536},{"type":13,"tag":51,"props":563,"children":565},{"className":564},[],[566],{"type":18,"value":567},"pipeline",{"type":18,"value":569}," member of ",{"type":13,"tag":51,"props":571,"children":573},{"className":572},[],[574],{"type":18,"value":397},{"type":18,"value":471},{"type":13,"tag":21,"props":577,"children":578},{"type":474},[],{"type":18,"value":580}," have been\ncreated with ",{"type":13,"tag":51,"props":582,"children":584},{"className":583},[],[585],{"type":18,"value":90},{"type":13,"tag":528,"props":587,"children":589},{"name":588},"VUID-vkGetPipelineExecutableStatisticsKHR-pipeline-03274",[590],{"type":13,"tag":14,"props":591,"children":592},{},[593,594,599,600,605,606,609,610],{"type":18,"value":536},{"type":13,"tag":51,"props":595,"children":597},{"className":596},[],[598],{"type":18,"value":567},{"type":18,"value":569},{"type":13,"tag":51,"props":601,"children":603},{"className":602},[],[604],{"type":18,"value":397},{"type":18,"value":471},{"type":13,"tag":21,"props":607,"children":608},{"type":474},[],{"type":18,"value":580},{"type":13,"tag":51,"props":611,"children":613},{"className":612},[],[614],{"type":18,"value":615},"VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR",{"type":13,"tag":523,"props":617,"children":619},{"name":618},"Valid Usage (Implicit)",[620,646,672,698],{"type":13,"tag":528,"props":621,"children":623},{"name":622},"VUID-vkGetPipelineExecutableStatisticsKHR-device-parameter",[624],{"type":13,"tag":14,"props":625,"children":626},{},[627,632,633,636,638,644],{"type":13,"tag":51,"props":628,"children":630},{"className":629},[],[631],{"type":18,"value":90},{"type":18,"value":471},{"type":13,"tag":21,"props":634,"children":635},{"type":474},[],{"type":18,"value":637}," be a valid ",{"type":13,"tag":431,"props":639,"children":641},{"href":640},"/man/VkDevice",[642],{"type":18,"value":643},"VkDevice",{"type":18,"value":645}," handle",{"type":13,"tag":528,"props":647,"children":649},{"name":648},"VUID-vkGetPipelineExecutableStatisticsKHR-pExecutableInfo-parameter",[650],{"type":13,"tag":14,"props":651,"children":652},{},[653,658,659,662,664,670],{"type":13,"tag":51,"props":654,"children":656},{"className":655},[],[657],{"type":18,"value":397},{"type":18,"value":471},{"type":13,"tag":21,"props":660,"children":661},{"type":474},[],{"type":18,"value":663}," be a valid pointer to a valid ",{"type":13,"tag":431,"props":665,"children":667},{"href":666},"/man/VkPipelineExecutableInfoKHR",[668],{"type":18,"value":669},"VkPipelineExecutableInfoKHR",{"type":18,"value":671}," structure",{"type":13,"tag":528,"props":673,"children":675},{"name":674},"VUID-vkGetPipelineExecutableStatisticsKHR-pStatisticCount-parameter",[676],{"type":13,"tag":14,"props":677,"children":678},{},[679,684,685,688,690,696],{"type":13,"tag":51,"props":680,"children":682},{"className":681},[],[683],{"type":18,"value":408},{"type":18,"value":471},{"type":13,"tag":21,"props":686,"children":687},{"type":474},[],{"type":18,"value":689}," be a valid pointer to a ",{"type":13,"tag":51,"props":691,"children":693},{"className":692},[],[694],{"type":18,"value":695},"uint32_t",{"type":18,"value":697}," value",{"type":13,"tag":528,"props":699,"children":701},{"name":700},"VUID-vkGetPipelineExecutableStatisticsKHR-pStatistics-parameter",[702],{"type":13,"tag":14,"props":703,"children":704},{},[705,707,712,714,720,722,727,728,733,735,740,741,744,746,751,752,756],{"type":18,"value":706},"If the value referenced by ",{"type":13,"tag":51,"props":708,"children":710},{"className":709},[],[711],{"type":18,"value":408},{"type":18,"value":713}," is not ",{"type":13,"tag":51,"props":715,"children":717},{"className":716},[],[718],{"type":18,"value":719},"0",{"type":18,"value":721},", and ",{"type":13,"tag":51,"props":723,"children":725},{"className":724},[],[726],{"type":18,"value":419},{"type":18,"value":713},{"type":13,"tag":51,"props":729,"children":731},{"className":730},[],[732],{"type":18,"value":427},{"type":18,"value":734},", ",{"type":13,"tag":51,"props":736,"children":738},{"className":737},[],[739],{"type":18,"value":419},{"type":18,"value":471},{"type":13,"tag":21,"props":742,"children":743},{"type":474},[],{"type":18,"value":745}," be a valid pointer to an array of ",{"type":13,"tag":51,"props":747,"children":749},{"className":748},[],[750],{"type":18,"value":408},{"type":18,"value":471},{"type":13,"tag":431,"props":753,"children":754},{"href":433},[755],{"type":18,"value":436},{"type":18,"value":757}," structures",{"type":13,"tag":759,"props":760,"children":761},"style",{},[762],{"type":18,"value":763},"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":48,"searchDepth":78,"depth":78,"links":765},[],"markdown",1725732621129]