- Sep 08, 2022
-
-
Emma Anholt authored
The drivers have a path to notice when a tex output is lowered to 16 bits and then fold the conversions into the tex instr. However, just doing the lowering at spirv time seems to cause a lot of change (including +waves and -instrs on some shaders) that suggests that that wasn't quite doing what we want all the time. PERCENTAGE DELTAS Shaders MaxWaves Instrs CodeSize NOPs MOVs Full (ss) (sy) (ss)-stall (sy)-stall Cat0 Cat1 Cat2 Cat3 Cat5 angle-aliexpress 45 . . . . . . . . . . . . . . . angle-among_us 45 . -0.06% . -2.62% -3.12% +1.07% . -10.00% +100.00% -31.74% -2.30% +14.52% -0.15% . . angle-angry_birds_2_1500 72 . +0.52% +0.07% +1.29% . -0.24% . . . . +1.16% +15.00% . . . angle-angry_birds_2_launch 99 . +0.44% . +2.49% . . . . . . +2.21% . -0.15% . . angle-arena_of_valor 84 . +0.25% -0.33% +2.17% . +0.24% . . . . +1.83% -2.94% . . . angle-asphalt_8 207 . +0.03% -0.15% +0.42% . . . . +0.83% . +0.37% -0.73% . -0.07% -2.27% angle-asphalt_9 909 . -0.00% -0.01% . . . . . +0.02% . . -0.02% . . . angle-avakin_life 87 . +0.49% +0.54% +0.21% . +1.01% +4.55% . . -0.97% +0.18% +21.59% . . . angle-aztec_ruins 167 . -0.06% +0.22% -0.74% +3.40% . +0.60% . +0.62% +1.01% -0.68% +1.77% . . . angle-badland 33 . . . . . . . . . . . . . . . angle-beach_buggy_racing 162 . . . . . . . . . . . . . . . angle-blockman_go 60 . +0.32% -1.88% +7.76% . -1.24% . . . . +6.39% -25.00% . . . angle-brawl_stars 102 . -0.05% . +0.23% . . . . . . +0.18% -12.00% . . . angle-bricks_breaker_quest 18 . . . . . . . . . . . . . . . angle-bubble_shooter 21 . . . . . . . . . . . . . . . angle-bus_simulator_indonesia 156 +0.16% +1.72% +0.52% +2.79% +6.90% +0.08% +2.40% . +3.67% +49.59% +2.48% +18.86% +3.98% -1.97% . angle-call_break_offline_card_game 9 . . . . . . . . . . . . . . . angle-candy_crush_500 21 . . . . . . . . . . . . . . . angle-candy_crush_soda_saga 57 . . . . . . . . . . . . . . . angle-car_parking_multiplayer 312 . +0.37% +0.09% . +3.77% +0.65% -0.17% . -1.71% -3.66% . +14.69% +0.01% -0.08% . angle-clash_of_clans 27 . . . . . . . . . . . . . . . angle-clash_royale 36 . . . . . . . . . . . . . . . angle-cod_mobile 165 . +0.22% -0.05% +1.59% -6.04% -0.18% +0.42% -3.41% -0.19% -3.27% +1.49% -0.15% -0.01% . . angle-coin_master 60 . +0.26% . . . +0.40% . . . . . +45.45% . . . PERCENTAGE DELTAS Shaders MaxWaves Instrs CodeSize NOPs MOVs Full (ss) (sy) (ss)-stall (sy)-stall Cat0 Cat1 Cat2 Cat3 Cat5 angle-command_and_conquer_rivals 183 . +0.32% +0.27% +0.25% -1.89% +0.25% -0.35% -2.35% +1.47% +17.06% +0.18% +5.46% +0.13% -0.15% . angle-cookie_run_kingdom 171 . +1.23% +0.61% +0.43% . +0.71% -18.75% . . -0.54% +0.35% +105.00% -0.82% . . angle-disney_tsum_tsum 42 . +0.24% . +3.33% . . . . . . +2.58% -50.00% . . . angle-dota_underlords 426 . -0.15% -0.01% -0.41% . -0.07% +0.06% . -0.12% +0.00% -0.38% -0.99% -0.08% . . angle-dr_driving 18 . +1.38% . +0.99% . . . -83.33% . +inf% +0.89% +15.38% . . . angle-dragon_ball_legends 69 . +0.81% -0.33% +1.55% -1.20% +1.69% -16.67% . . +9.76% +1.27% +15.38% . . . angle-dragon_raja 225 . -0.01% +0.04% +0.12% -0.64% . -0.68% . +0.75% +0.89% +0.11% -0.59% . . . angle-efootball_pes_2021 84 . . . . . . . . . . . . . . . angle-egypt_1500 165 . +0.07% . +0.43% . . +4.76% . -3.45% . +0.36% . . . . angle-eight_ball_pool 33 . . . . . . . . . . . . . . . angle-extreme_car_driving_simulator 90 +0.28% +0.66% +0.54% +0.21% +11.43% . +5.88% +2.78% -4.59% -1.07% +0.18% +49.32% -0.17% -0.34% . angle-fallout_shelter_online 102 -0.49% -0.16% +5.08% -1.57% . +0.92% . . . . -1.23% . . . . angle-farm_heroes_saga 27 . . . . . . . . . . . . . . . angle-fate_grand_order 45 . +2.23% +0.76% . . +4.65% . . . . . +175.00% +1.62% -0.62% . angle-fifa_mobile 105 +0.99% +2.16% +3.25% -5.13% -1.10% -0.76% -4.02% -1.04% +7.89% -11.23% -4.85% +44.10% . . . angle-final_fantasy 96 . +0.02% -0.02% -3.28% . +1.95% +18.18% . +8.33% . -2.91% +32.00% +0.06% . . angle-free_fire 126 . +0.55% +0.20% +1.34% . -0.13% . . +0.61% . +1.14% +6.52% . . . angle-gardenscapes 27 . . . . . . . . . . . . . . . angle-genshin_impact 1130 +0.28% +0.79% +0.76% +1.77% -0.25% -0.40% -0.39% -0.36% +0.33% -1.32% +1.66% +7.16% -0.17% -0.02% -0.10% angle-google_maps 111 . +6.17% +6.72% -1.73% . . +14.29% . . -2.74% -1.52% +70.26% . . . angle-happy_color 9 . . . . . . . . . . . . . . . angle-hay_day 18 . . . . . . . . . . . . . . . angle-hearthstone 147 . +0.06% +0.39% -2.94% . . +2.27% . . +0.14% -2.46% +9.09% . . . angle-higgs_domino_island 30 . . . . . . . . . . . . . . . PERCENTAGE DELTAS Shaders MaxWaves Instrs CodeSize NOPs MOVs Full (ss) (sy) (ss)-stall (sy)-stall Cat0 Cat1 Cat2 Cat3 Cat5 angle-hill_climb_racing 21 . . . . . . . . . . . . . . . angle-homescapes 24 . . . . . . . . . . . . . . . angle-idle_heroes 27 . . . . . . . . . . . . . . . angle-junes_journey 27 . +0.78% +1.16% -3.23% . +4.00% . . . . -2.50% +32.26% . . . angle-kartrider_rush 165 . +1.16% +0.51% +7.25% . -0.19% . +6.35% -23.15% -34.02% +5.91% +20.75% +0.03% . . angle-klondike_adventures 15 . . . . . . . . . . . . . . . angle-league_of_legends_wild_rift 255 +0.34% +1.53% +0.57% +2.20% -0.99% -0.40% -4.67% -1.38% +16.85% -5.48% +1.89% +15.13% +0.17% -0.21% . angle-lego_legacy 117 . +0.18% +0.08% +0.57% -0.68% . . . . +10.23% +0.52% +1.65% . . . angle-lineage_m 84 . . . . . . . . . . . . . . . angle-ludo_king 21 . +0.79% . . . +1.18% . . . . . +71.43% . . . angle-magic_tiles_3 18 . +1.59% . . . +2.63% . . . . . +inf% . . . angle-manhattan_10 122 . +0.39% +0.36% +0.58% -0.87% . . -2.67% -1.57% -2.63% +0.50% +6.19% . . . angle-manhattan_31 187 . -0.16% +0.04% -0.86% +1.64% . +7.98% -0.77% +1.00% -1.06% -0.77% +0.45% . . . angle-mario_kart_tour 144 . +0.15% +0.10% -0.52% . +0.59% . . . . -0.48% +6.74% . . . angle-marvel_contest_of_champions 168 . +0.59% +0.50% -0.25% . +0.53% . . +0.59% -6.37% -0.22% +26.52% -0.08% . -8.00% angle-messenger_lite 36 . . . . . . . . . . . . . . . angle-minecraft 78 . -0.91% -1.48% -0.49% . -0.51% . . . . -1.39% -7.67% -0.12% +0.90% . angle-mini_world 87 . . . . . . . . . . . . . . . angle-mobile_legends 117 . +1.26% +0.82% +0.28% . +0.84% . +6.52% . -3.76% +0.24% +135.71% -0.05% . . angle-my_talking_tom2 105 . +2.57% +1.35% +1.10% +7.44% +2.45% +4.11% -2.63% -2.03% -62.16% +1.00% +54.51% -0.12% . -12.50% angle-my_talking_tom_friends 120 . +2.51% +5.04% +2.17% -1.75% -0.13% -2.00% -2.22% -6.50% . +1.73% +44.05% . . . angle-nba2k20_800 651 +0.06% +1.96% +2.01% -2.45% -1.09% +0.56% -0.96% -0.72% -1.43% -11.82% -2.25% +50.38% -0.01% . -1.48% angle-nier_reincarnation 165 . -0.11% -0.12% -0.56% -0.58% +0.18% -1.23% +1.82% -0.98% +0.11% -0.53% +0.78% . . . angle-one_punch_man 51 . +0.43% -0.07% +6.28% . . . . . . +4.80% -5.41% +0.29% . . PERCENTAGE DELTAS Shaders MaxWaves Instrs CodeSize NOPs MOVs Full (ss) (sy) (ss)-stall (sy)-stall Cat0 Cat1 Cat2 Cat3 Cat5 angle-plants_vs_zombies_2 15 . . . . . . . . . . . . . . . angle-pokemon_go 198 +0.39% -0.24% +0.04% +0.63% +2.32% +0.14% -1.16% +2.38% -10.78% +0.63% +0.79% -5.11% -0.28% . . angle-pokemon_unite 396 . -0.42% -0.31% +1.36% -3.66% -0.52% +0.90% . -4.68% -1.06% +1.27% -13.06% -0.18% -0.05% . angle-professional_baseball_spirits 129 . . . . . -0.12% . . . . . . . . . angle-pubg_mobile_battle_royale 267 . . . . . . . . . . . . . . . angle-pubg_mobile_launch 24 . . . . . . . . . . . . . . . angle-pubg_mobile_lite 135 . . . . . . . . . . . . . . . angle-pubg_mobile_skydive 99 . . . . . . . . . . . . . . . angle-ragnarok_m_eternal_love 207 . +0.16% -0.82% +3.19% . +0.12% . . -2.88% +16.09% +2.83% -5.56% +0.53% -0.85% . angle-raid_shadow_legends 78 . +1.24% +0.30% +2.89% -16.36% +0.43% -12.50% -3.23% -7.94% -16.83% +2.59% +29.46% -0.05% . . angle-real_commando_secret_mission 66 . +1.23% +1.44% -1.00% . +1.28% . . . . -0.81% +87.50% . . . angle-real_cricket_20 73 . +0.41% -0.23% +4.53% . +0.60% -6.49% . -22.48% +13.87% +4.09% -5.14% -0.04% . . angle-real_gangster_crime 162 . +0.19% +0.36% -1.39% . . . +5.56% -0.73% -25.00% -1.24% +20.35% . . . angle-respawnables 78 . . . . . . . . . . . . . . . angle-rise_of_kingdoms 87 . -0.21% -0.10% +0.27% . . . . . . +0.21% -41.18% . . . angle-romancing_saga 30 . +1.82% +0.32% +8.12% -4.76% +0.55% +9.09% +6.67% -30.43% +14.63% +6.32% +25.00% +0.13% . . angle-rope_hero_vice_town 258 . +0.50% +0.89% +0.29% . +0.35% +0.31% +1.45% -0.08% -2.64% +0.27% +30.49% +0.02% . . angle-saint_seiya_awakening 123 . +0.45% +0.01% +0.72% . +0.15% +1.00% +1.06% -3.41% +0.05% +0.65% +10.99% -0.16% . . angle-sakura_school_simulator 120 . +0.79% -0.02% +7.64% +5.81% +0.89% +0.85% . +17.34% +7.23% +6.79% -5.88% +0.36% -0.18% . angle-scrabble_go 72 . +0.19% +0.15% -2.81% . +1.07% . . . . -2.24% +20.63% . . . angle-shadow_fight_2 24 . +0.70% . . . +1.12% . . . . . +41.67% . . . angle-slingshot_test1 148 +0.26% +4.02% +3.12% +1.79% +1.43% -0.43% +2.43% -3.16% -4.11% -2.17% +1.67% +50.96% . . . angle-slingshot_test2 163 +0.40% +3.80% +4.02% -0.71% -2.62% -0.63% +1.69% +0.90% -7.64% -2.96% -0.67% +41.14% . . . angle-sniper_3d 85 . +0.22% +0.35% . . . . . +0.24% -4.91% . +8.98% . . . PERCENTAGE DELTAS Shaders MaxWaves Instrs CodeSize NOPs MOVs Full (ss) (sy) (ss)-stall (sy)-stall Cat0 Cat1 Cat2 Cat3 Cat5 angle-sonic_the_hedgehog 9 . +1.38% . +0.99% . . . -83.33% . +inf% +0.89% +15.38% . . . angle-standoff_2 51 . -0.58% +0.38% -6.52% . . -5.88% +5.26% +7.92% +23.93% -5.61% +2.99% +0.72% -0.27% . angle-subway_princess_runner 51 . +1.31% . +1.45% . +1.15% . . . . +1.16% +71.43% . . . angle-subway_surfers 48 . -0.38% +0.04% +2.74% . +1.29% . . . +19.64% +2.25% -29.41% +1.49% -1.22% . angle-summoners_war 109 . +1.14% +1.20% +0.37% . . . -81.08% . +5100.00% +0.33% +14.47% . . . angle-talking_tom_hero_dash 120 +0.21% +0.31% +0.21% -1.15% . -0.29% . -3.70% -8.97% -8.91% -1.05% +19.02% +0.20% . . angle-temple_run_2 36 . +2.68% +3.08% . . +3.61% . . . . . +194.12% . . . angle-temple_run_300 21 . -1.25% +2.70% +4.55% . -2.25% . . . . +3.67% -24.00% -2.51% . . angle-toon_blast 24 . +0.85% -0.23% . . +1.87% . . . . . +19.44% . . . angle-township 30 . . . . . . . . . . . . . . . angle-trex_200 189 . +0.28% . +1.37% . +0.24% . . . . +1.18% +2.76% . . . angle-war_planet_online 105 . +0.31% +0.58% -2.28% . . -6.67% -4.65% -11.11% -4.96% -2.10% +6.60% -0.04% . . angle-whatsapp 60 . . . . . . . . . . . . . . . angle-words_with_friends_2 24 . . +1.77% -3.20% . . . . . . -2.65% +5.97% . . . angle-wordscapes 21 . +1.21% . +0.85% . . . -83.33% . +inf% +0.77% +13.33% . . . angle-world_cricket_championship_2 186 . +0.57% -0.30% +3.93% +1.04% +0.75% -2.04% . -1.66% +4.37% +3.47% -5.69% +0.66% -0.35% . angle-world_of_kings 309 +0.49% +1.21% +0.87% +3.65% -4.76% -0.37% -1.15% +0.84% +26.21% +5.57% +3.37% +9.31% +0.19% -0.04% . angle-world_of_tanks_blitz 108 . +3.17% +1.61% +1.13% . +1.60% . . +0.24% . +1.02% +98.21% . . . angle-world_war_doh 127 . +0.16% -0.16% +2.45% -7.10% +1.29% . . -1.34% . +2.14% -5.84% +0.04% . . angle-worms_zone_io 21 . . . . . . . . . . . . . . . angle-zillow 22 . +1.26% . +0.84% . . . -81.40% . +1050.00% +0.77% +14.14% . . . gfxbench-vk-5-high 243 . -0.03% -0.10% . . -0.17% +0.36% . +0.80% . . -0.40% . . . gfxbench-vk-5-normal 186 . -0.04% -0.12% . . -0.23% +0.47% . +0.88% . . -0.47% . . . ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- All affected 1764 +0.53% +3.06% +2.82% +2.26% -1.34% +0.95% -0.07% -8.34% -1.71% +3.43% +2.07% +32.13% +0.10% -0.45% -0.27% ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 14375 +0.06% +0.50% +0.42% +0.41% -0.23% +0.10% -0.02% -3.19% -0.39% +1.10% +0.37% +8.53% +0.02% -0.06% -0.08%
-
Let's be consistent. Also needed for parsing device and traces yml file from logs. Reviewed-by:
Guilherme Gallo <guilherme.gallo@collabora.com> Signed-off-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18422>
-
Let's be consistent. Also needed for parsing device and traces yml file from logs. Reviewed-by:
Guilherme Gallo <guilherme.gallo@collabora.com> Signed-off-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18422>
-
nir_to_spirv can handle it. Cuts instructions in a turnip CS shader on Aztec Ruins from 36k to 3k. Part of #6115 Reviewed-by:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!18374>
-
Trust the host vulkan driver to load it through whatever way it finds to be most efficient. Saves upload on the frontend when other uniforms change. Reviewed-by:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!18374>
-
this ensures types which consume more than 1 slot are effectively tagged so that the next stage inputs are also assigned properly fixes: spec@arb_enhanced_layouts@execution@component-layout@vs-fs-array-dvec3 cc: mesa-stable Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Part-of: <mesa/mesa!18444>
-
Make current check robust to incremental linking. Compare JMP targets if the first byte is opcode 0xE9. Reviewed-by:
Jesse Natalie <jenatali@microsoft.com> Part-of: <mesa/mesa!18400>
-
When loading a TCS or GS input, we generate some code to read the URB handle for a particular input control point (ICP handle), which often involves indirect addressing due to a non-constant vertex. For example: mov(8) vgrf148+0.0:UW, 76543210V shl(8) vgrf149:UD, vgrf148+0.0:UW, 2u shl(8) vgrf150:UD, vgrf145:UD, 5u add(8) vgrf151:UD, vgrf150:UD, vgrf149:UD mov_indirect(8) vgrf147:UD, g2:UD, vgrf151:UD, 96u Unfortunately, the first load with 76543210V is considered a partial write because the 8 channels of 16-bit UW data doesn't fill an entire register, and we can't allocate VGRFs at sub-register granularity. This causes none of the above math to be CSE'd, even though the first two instructions are common to *all* input loads, and the rest may be reused sometimes as well. To work around this, we stop emitting 76543210V to a temporary, and instead use nir_system_values[SYSTEM_VALUE_SUBGROUP_INVOCATION], which already contains this value, and is unconditionally set up for us. With all input loads using the same register for the sequence, our CSE pass is able to eliminate the rest of the common math. shader-db results on Tigerlake: total instructions in shared programs: 20748243 -> 20744844 (-0.02%) instructions in affected programs: 73410 -> 70011 (-4.63%) helped: 242 / HURT: 21 helped stats (abs) min: 1 max: 37 x̄: 14.17 x̃: 15 helped stats (rel) min: 0.17% max: 19.58% x̄: 6.13% x̃: 6.32% HURT stats (abs) min: 1 max: 4 x̄: 1.38 x̃: 1 HURT stats (rel) min: 0.18% max: 1.31% x̄: 0.58% x̃: 0.58% 95% mean confidence interval for instructions value: -13.73 -12.12 95% mean confidence interval for instructions %-change: -6.00% -5.19% Instructions are helped. total cycles in shared programs: 785828951 -> 785788480 (<.01%) cycles in affected programs: 597593 -> 557122 (-6.77%) helped: 227 / HURT: 13 helped stats (abs) min: 6 max: 624 x̄: 182.19 x̃: 185 helped stats (rel) min: 0.24% max: 18.22% x̄: 7.85% x̃: 7.80% HURT stats (abs) min: 2 max: 153 x̄: 68.08 x̃: 36 HURT stats (rel) min: 0.03% max: 7.79% x̄: 2.97% x̃: 1.25% 95% mean confidence interval for cycles value: -182.55 -154.71 95% mean confidence interval for cycles %-change: -7.84% -6.69% Cycles are helped. Reviewed-by:
Caio Oliveira <caio.oliveira@intel.com> Part-of: <mesa/mesa!18455>
-
Foz-DB Navi21: Totals from 7 (0.01% of 134913) affected shaders: CodeSize: 213364 -> 213028 (-0.16%) Instrs: 38347 -> 38319 (-0.07%) Latency: 780148 -> 779776 (-0.05%) InvThroughput: 520098 -> 519851 (-0.05%) Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Emma Anholt <emma@anholt.net> Part-of: <mesa/mesa!18435>
-
ci-templates will now pass all env vars to the command. Reviewed-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18467>
-
As it conflicts now with some packages already installed but not necessary, such as: libpam-systemd packagekit packagekit-tools policykit-1 systemd-sysv Reviewed-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18467>
-
Some packages that are being installed via recommends are conflicting with already installed packages, causing this error: E: Packages need to be removed but remove is disabled. We dont need these packages, so don't install them. Reviewed-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18467>
-
Uprev it to: d5aa3941aa03 ("freebsd: Move from 13.0 to 13.1") Reviewed-by:
David Heidelberg <david.heidelberg@collabora.com> Part-of: <mesa/mesa!18467>
-
Push descriptors are part of VK_KHR_push_descriptor. Not supporting it for now. Signed-off-by:
Karmjit Mahil <Karmjit.Mahil@imgtec.com> Reviewed-by:
Frank Binns <frank.binns@imgtec.com> Part-of: <mesa/mesa!18430>
-
The change didn't make any sense. `s` will always be `NV50_SHADER_STAGE_COMPUTE`, because it's used to loop over all shader stages. And the TSC cache on the compute side is already flushed in `nv50_compute_validate_samplers`. Fixes spurious `CACHE_ERROR` dmesg messages. Fixes: ba6ba8c9 ("nv50: adapt texture and constbuf paths for compute shaders") Signed-off-by:
Karol Herbst <kherbst@redhat.com> Reviewed-by:
M Henning <drawoc@darkrefraction.com> Part-of: <mesa/mesa!18382>
-
When an OP_UNION def takes part in a vector source e.g. for a tex instruction we failed to clean up the OP_UNION instruction as rep() points towards the coalesced value instead. This fixes a regression on nv50 moving to NIR, but also potentially issues with nvc0. The main reason this is common in nv50 is, that we lower OP_SLCT to a set, predicated movs and a union. Closes: mesa/mesa#6406 Closes: mesa/mesa#7117 Cc: mesa-stable Signed-off-by:
Karol Herbst <kherbst@redhat.com> Reviewed-by:
M Henning <drawoc@darkrefraction.com> Part-of: <mesa/mesa!18377>
-
Signed-off-by:
Frank Binns <frank.binns@imgtec.com> Reviewed-by:
Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <mesa/mesa!18437>
-
From clang 16 has_trivial_destructor is deprecated. Use the replacement __is_trivially_destructible if it is available. Fixes new warnings with clang 16 like: ../src/compiler/glsl/list.h:58:4: warning: builtin __has_trivial_destructor is deprecated; use __is_trivially_destructible instead [-Wdeprecated-builtins] ../src/util/ralloc.h:551:4: note: expanded from macro 'DECLARE_RZALLOC_CXX_OPERATORS' DECLARE_ALLOC_CXX_OPERATORS_TEMPLATE(type, rzalloc_size) ^ ../src/util/ralloc.h:542:12: note: expanded from macro 'DECLARE_ALLOC_CXX_OPERATORS_TEMPLATE' if (!HAS_TRIVIAL_DESTRUCTOR(TYPE)) \ ^ ../src/util/macros.h:233:44: note: expanded from macro 'HAS_TRIVIAL_DESTRUCTOR' Reviewed-by:
Eric Engestrom <eric@igalia.com> Part-of: <mesa/mesa!18423>
-
Signed-off-by:
Karmjit Mahil <Karmjit.Mahil@imgtec.com> Reviewed-by:
Frank Binns <frank.binns@imgtec.com> Part-of: <mesa/mesa!18431>
-
Set the flag if the descriptor set is updated. Set the fragment descriptor dirty flag if blend consts are updated. Signed-off-by:
Karmjit Mahil <Karmjit.Mahil@imgtec.com> Reviewed-by:
Frank Binns <frank.binns@imgtec.com> Part-of: <mesa/mesa!18429>
-
Signed-off-by:
Mark Collins <mark@igalia.com> Part-of: <mesa/mesa!18390>
-
The kernel driver has a range of valid priority values that can be supplied to it, submitting any priority value outside these bounds will result in `-EINVAL`. To avoid this, the priority value is now clamped to the range that the kernel supports. Fixes: 0c6fbfca Signed-off-by:
Mark Collins <mark@igalia.com> Part-of: <mesa/mesa!18389>
-
Current code doesn't handle this, however it is easy to make it work by moving the negate to the presubtract source. Minor win in shader-db, mostly with Unigine shaders. Shader-db RV530: total instructions in shared programs: 136382 -> 136236 (-0.11%) instructions in affected programs: 9911 -> 9765 (-1.47%) total temps in shared programs: 18939 -> 18942 (0.02%) temps in affected programs: 37 -> 40 (8.11%) Reviewed-by:
Filip Gawin <filip@gawin.net> Signed-off-by:
Pavel Ondračka <pavel.ondracka@gmail.com> Part-of: <mesa/mesa!18289>
-
Otherwise running the CTS emits lots of warnings about these formats missing in the drivers format table. Signed-off-by:
Gert Wollny <gert.wollny@collabora.com> Part-of: <mesa/mesa!18462>
-
Rob Clark authored
Now that we have the rwlock TerminateLock protecting us against eglTerminate() yanking the rug from under us, drop the BDL across calls to driver (or at least the main ones that can potentially block). Closes: mesa/mesa#7039 Signed-off-by:
Rob Clark <robdclark@chromium.org> Acked-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
Rob Clark authored
eglTerminate() must be serialized against all other EGL calls. But in most cases, other EGL calls do not need to be serialized against each other. Which fits rather well with a rwlock. One would be tempted to simply replace the existing BDL with a rwlock, but several portability and debuggability limitations of the rwlock implementation prevent that, as described in the TerminateLock comment block. Signed-off-by:
Rob Clark <robdclark@chromium.org> Acked-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
Rob Clark authored
Once we relax the locking, we will be doing _eglPutFoo() outside of the big display lock. Signed-off-by:
Rob Clark <robdclark@chromium.org> Acked-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
Rob Clark authored
In preperation of relaxing eglapi to not hold a lock across driver calls, but instead only for protecting it's own state, add our own lock to protect code paths that need locking or have not been audited yet. The blocking calls (ClientWaitSyncKHR) or critical path and/or blocking (MakeCurrent, SwapBuffers*) are lockless, as they have already been audited for thread safety. Signed-off-by:
Rob Clark <robdclark@chromium.org> Acked-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
Rob Clark authored
In particular, MakeCurrent can be called on multiple threads in parallel. Signed-off-by:
Rob Clark <robdclark@chromium.org> Reviewed-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
Rob Clark authored
Looks like wgl doesn't have much display state to protect. But it's ref_count should be atomic before we start removing locking from eglapi to protect against MakeCurrent being called in parallel on multiple threads. Signed-off-by:
Rob Clark <robdclark@chromium.org> Acked-by:
Eric Engestrom <eric@igalia.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!18050>
-
As per 7d85dc4f GLSL IR is not smart enough to handle this correctly for NANs. Shader-db radeonsi (RX 6800): Totals from affected shaders: SGPRS: 26848 -> 26848 (0.00 %) VGPRS: 13552 -> 13552 (0.00 %) Spilled SGPRs: 134 -> 134 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Private memory VGPRs: 0 -> 0 (0.00 %) Scratch size: 0 -> 0 (0.00 %) dwords per thread Code Size: 635000 -> 630988 (-0.63 %) bytes Max Waves: 5474 -> 5474 (0.00 %) Shader-db iris (BDW): total instructions in shared programs: 17538859 -> 17539018 (<.01%) instructions in affected programs: 29369 -> 29528 (0.54%) helped: 3 HURT: 126 helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1 helped stats (rel) min: 0.49% max: 0.49% x̄: 0.49% x̃: 0.49% HURT stats (abs) min: 1 max: 2 x̄: 1.29 x̃: 1 HURT stats (rel) min: 0.27% max: 1.32% x̄: 0.61% x̃: 0.54% 95% mean confidence interval for instructions value: 1.13 1.33 95% mean confidence interval for instructions %-change: 0.54% 0.63% Instructions are HURT. total loops in shared programs: 4866 -> 4866 (0.00%) loops in affected programs: 0 -> 0 helped: 0 HURT: 0 total cycles in shared programs: 858548230 -> 858548915 (<.01%) cycles in affected programs: 1331737 -> 1332422 (0.05%) helped: 0 HURT: 92 HURT stats (abs) min: 2 max: 49 x̄: 7.45 x̃: 6 HURT stats (rel) min: 0.01% max: 1.90% x̄: 0.12% x̃: 0.05% 95% mean confidence interval for cycles value: 5.72 9.17 95% mean confidence interval for cycles %-change: 0.05% 0.19% Cycles are HURT. Note: With the addition of "nir/comparison_pre: See through an inot to apply the optimization", idr's shader-db results are: All Broadwell and newer Intel platforms had similar results. (Ice Lake shown) total instructions in shared programs: 19940805 -> 19940802 (<.01%) instructions in affected programs: 582 -> 579 (-0.52%) helped: 3 / HURT: 0 total cycles in shared programs: 858431633 -> 858431747 (<.01%) cycles in affected programs: 4938 -> 5052 (2.31%) helped: 0 / HURT: 3 All older Intel platforms had similar results. (Haswell shown) total instructions in shared programs: 16715626 -> 16715670 (<.01%) instructions in affected programs: 9496 -> 9540 (0.46%) helped: 0 / HURT: 44 total cycles in shared programs: 881224396 -> 881232314 (<.01%) cycles in affected programs: 600610 -> 608528 (1.32%) helped: 6 / HURT: 44 Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Part-of: <mesa/mesa!18006>
-
This also prevents some small regressions in "glsl: remove GLSL IR inverse comparison optimisations". shader-db results: All Sandy Bridge and newer Intel platforms had similar results. (Ice Lake shown) total instructions in shared programs: 19941025 -> 19940805 (<.01%) instructions in affected programs: 52431 -> 52211 (-0.42%) helped: 188 / HURT: 6 total cycles in shared programs: 858451784 -> 858431633 (<.01%) cycles in affected programs: 2119134 -> 2098983 (-0.95%) helped: 183 / HURT: 12 LOST: 2 GAINED: 0 Iron Lake and GM45 had similar results. (Iron Lake shown) total instructions in shared programs: 8364668 -> 8364670 (<.01%) instructions in affected programs: 753 -> 755 (0.27%) helped: 2 / HURT: 4 total cycles in shared programs: 248752572 -> 248752238 (<.01%) cycles in affected programs: 87290 -> 86956 (-0.38%) helped: 2 / HURT: 4 fossil-db results: Skylake, Ice Lake, and Tiger Lake had similar results. (Ice Lake shown) Instructions in all programs: 144909184 -> 144909130 (-0.0%) Instructions helped: 6 Cycles in all programs: 9138641740 -> 9138640984 (-0.0%) Cycles helped: 8 Reviewed-by:
Timothy Arceri <tarceri@itsqueeze.com> Part-of: <mesa/mesa!18006>
-
Ever since 4246c286 and 7d85dc4f loop unrolling can no longer depend on inot being eliminated from the loop terminator condition so we need to be able to handle it. This change avoids 292 loop unrolling regressions with shader-db once the following patch is applied. Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Part-of: <mesa/mesa!18006>
-
Ever since 4246c286 and 7d85dc4f loop unrolling can no longer depend on inot being eliminated from the loop terminator condition so we need to be able to handle it. Here we simply check to see if the inot contains a simple terminator condition we previously handled. We also update the previous users of this function to use a newly name copy of the previous behaviour nir_is_terminator_condition_with_two_inputs(). Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Part-of: <mesa/mesa!18006>
-
- Sep 07, 2022
-
-
Some claims of corruption, modifier-less Mesa already doesn't do it. Since these modifiers have no purpose besides being displayed lets just disable in Mesa. Cc: mesa-stable Tested-by:
Michel Dänzer <mdaenzer@redhat.com> Acked-by:
Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!18140>
-
Going to be a bad time if they disagree, which is bound to happen sometimes. Not asserting and stuff tends to be a better experience than crashing. Cc: mesa-stable Tested-by:
Michel Dänzer <mdaenzer@redhat.com> Acked-by:
Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!18140>
-
These pci-ids should be included in mesa/mesa!14523, since these pci-ids will only be supported by kernels that support the forked Linux uapi. (Note that !14523 will never be merged into upstream Mesa.) Ref: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/drm/i915_pciids.h?h=v6.0-rc3#n695 Fixes: 398a9be9 ("intel/dev: Enable remaining DG2 and ATS-M device IDs") Signed-off-by:
Jordan Justen <jordan.l.justen@intel.com> Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!18386>
-
To avoid bumping abort timeout too much. This change also doubles the busy wait cycles, which would further reduce unnecessary sleeps for synchronous calls. Ultimately, after we fix the fencing and push all roundtrip waiting to the renderer side as well as we fixing the abort logic, we can live with busy wait alone here. Signed-off-by:
Yiwei Zhang <zzyiwei@chromium.org> Part-of: <mesa/mesa!18472>
-
Ivan Briano authored
Fixes: 6601e5d6 ("anv: implement VK_EXT_pipeline_creation_feedback") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!18451>
-
Foz-DB Navi21: Totals from 66947 (49.62% of 134913) affected shaders: CodeSize: 210383024 -> 210033376 (-0.17%) Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Part-of: <mesa/mesa!18417>
-