- 03 Nov, 2020 18 commits
-
-
Alejandro Piñeiro authored
It is not used right now, so keeping it adds some noise/confusion. So far configuring Z test are done through the CFG_BITS. See v3dX(emit_state) at v3dx_emit.c for v3d, and pack_cfg_bits at v3dv_pipeline.c for v3dv. There flags like z_updates_enable and others are filled up. That key field seems like a leftover coming from using vc4 as reference, as that driver defines and uses a field with name name. Reviewed-by:
Iago Toral Quiroga <itoral@igalia.com> Part-of: <!7421>
-
Marcin Ślusarz authored
As a result of this patch, compiler chooses SIMD32 shaders more frequently. Current logic is designed to avoid regressions from enabling SIMD32 at all cost, even though the cases where regression can happen are probably for smaller draw calls (far away from the camera and though smaller). In Intel perf CI this patch improves FPS in: - gfxbench5 alu2: 21.92% (gen9), 23.7% (gen11) - synmark OglShMapVsm: 3.26% (gen9), 4.52% (gen11) - gfxbench5 car chase: 1.34% (gen9), 1.32% (gen11) No observed regressions there. In my testing, it also improves FPS in: - The Talos Principle: 2.9% (gen9) The other 16 games I tested had very minor changes in performance (2/3 positive, but not significant enough to list here). Note: this patch harms synmark OglDrvState (which is not in Intel perf CI) by ~2.9%, but this benchmark renders multiple scenes from other workloads (including OglShMapVsm, which is helped in standalone mode) in tiny rectangles. Rendering so small drastically changes branching statistics, which favors smaller SIMD modes. I assume this matters only in micro-benchmarks, as in real workloads more expensive (with more uniform branching behavior) draw calls dominate. Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Acked-by:
Francisco Jerez <currojerez@riseup.net> Part-of: <!7137>
-
Marcin Ślusarz authored
Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Reviewed-by:
Francisco Jerez <currojerez@riseup.net> Acked-by:
Jason Ekstrand <jason@jlekstrand.net> Part-of: <!7382>
-
Lucas Stach authored
It breaks some assumptions in the iris driver, leading to crashes. Signed-off-by:
Lucas Stach <l.stach@pengutronix.de> Tested-by:
Jordan Justen <jordan.l.justen@intel.com> Part-of: <!7391>
-
Connor Abbott authored
Part-of: <!6962>
-
Connor Abbott authored
Part-of: <!6962>
-
Connor Abbott authored
I need this for emitting the SO program for turnip, where we want to skip over unused slots by manually advancing the counter. freedreno will also want to use it when it supports multistream streamout. Reviewed-by:
Rob Clark <robdclark@gmail.com> Part-of: <!6962>
-
Connor Abbott authored
Part-of: <!6962>
-
Connor Abbott authored
These seem to be unchanged from a5xx, so a5xx could probably be updated too. Part-of: <!6962>
-
Iago Toral authored
Since Zink doesn't use swapchains to create presentable images, drivers lose the capacity to identify memory allocations for them, which is a problem when the underlying platform has special requirements for these, such as needing to allocate them on a particular device. Including this struct in the pNext chain, which is the same thing that the Mesa Vulkan WSI code does when allocating memory for swapchain images, gives drivers a chance to identify and handle these memory allocations properly. v2: follow Zink's conventions for pNext chains (Mike) v3: add scanout parameter for VkImage creation (Daniel) v4: don't add a dependency on vulkan util (Erik) v5: include vulkan directory for Zink builds Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> (v2) Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7378>
-
Christian Gmeiner authored
Before this change we had two identical etna_destroy_shader functions - one for tgsi and one for nir. Signed-off-by:
Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by:
Lucas Stach <l.stach@pengutronix.de> Part-of: <!7397>
-
Christian Gmeiner authored
Before this change we had two identical etna_dump_shader functions - one for tgsi and one for nir. Signed-off-by:
Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by:
Lucas Stach <l.stach@pengutronix.de> Part-of: <!7397>
-
Christian Gmeiner authored
Prep work to unify some tgsi and nir compiler functions. No deqp and piglit regressions. Signed-off-by:
Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by:
Lucas Stach <l.stach@pengutronix.de> Part-of: <!7397>
-
Christian Gmeiner authored
I want to use this function for etnaviv's TGSI compiler. Signed-off-by:
Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by:
Eric Anholt <eric@anholt.net> Part-of: <!7397>
-
James Park authored
MSVC will never support VLA, so use alloca instead. Reviewed-by:
Tony Wasserka <tony.wasserka@gmx.de> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!7157>
-
Iago Toral authored
Reviewed-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <mesa/mesa!7374>
-
Vinson Lee authored
Silence this Coverity defect. Uninitialized scalar variable (UNINIT) uninit_use: Using uninitialized value dim. Field dim.Padding is uninitialized. Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!7300>
-
Vinson Lee authored
Fix defect reported by Coverity Scan. Evaluation order violation (EVALUATION_ORDER) write_write_typo: In resource = resource = ntt_ureg_src_indirect(c, ureg_src_register(TGSI_FILE_IMAGE, 0U), instr->src[0]), resource is written twice with the same value. Fixes: 34cc6a80 ("gallium: Add a nir-to-TGSI pass.") Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Eric Anholt <eric@anholt.net> Part-of: <!7326>
-
- 02 Nov, 2020 22 commits
-
-
Jason Ekstrand authored
Reviewed-by:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Reviewed-by:
Eric Anholt <eric@anholt.net> Reviewed-by:
Rob Clark <robdclark@chromium.org> Part-of: <!7409>
-
Mike Blumenkrantz authored
this ensures we pull in any flushes that are about to happen if we're ending the query during a batch flush, which helps us roll over our pending results Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
we're going to be seeing some overlap here Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
this adds a query field to denote the last point at which a query was api started, which is then used every time we call in to get_query_result as the starting point this is important when we want to be able to return the same result set multiple times Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
need to index by query id here to ensure correct usage Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
this is useful for knowing immediately whether a query has results available for time queries, this ends up being end_query() since that's when the timestamp is written Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
this query behaves differently when xfb is activated, specifically with regard to vertex streams. it's super clunky, but we need to actually run both queries and use results based on whether xfb was active during the query Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
in normal operation we want to be using INPUT_ASSEMBLY_PRIMITIVES_BIT, but then when we break out the geometry shaders we actually want to be using GEOMETRY_SHADER_PRIMITIVES_BIT, which means we need to track whether a query has a gs active for draws to do this, we keep a list of all these queries with this type and iterate over it every draw to flag the gs state of the query that's being drawn to. this works because our ring buffer of batches will always wait on a fence after a full cycle, meaning there can only ever be 4 queries with outstanding results Fixes: e40a77ea ("zink: use right vulkan type for GL_PRIMITIVES_GENERATED queries") Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Mike Blumenkrantz authored
no functional changes, just a small simplification Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!7195>
-
Dave Airlie authored
This uses the resource get param to get proper values for image subresource layouts. Fixes: dEQP-VK.image.subresource_layout* Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!6639>
-
Dave Airlie authored
This implements this resource get param callback and uses it to return image information for lavapipe. Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!6639>
-
Dave Airlie authored
This will be used by llvmpipe and lavapipe Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!6639>
-
Dave Airlie authored
For lavapipe interface to llvmpipe there is a need to retrieve per-level info, so this seems like the best interface to use for it. Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!6639>
-
He Haocheng authored
Fixes: 95b9fc41 ("zink: implement pipe_device_reset_callback") Reviewed-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <!7404>
-
Marcin Ślusarz authored
Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Acked-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!7353>
-
Marcin Ślusarz authored
Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Acked-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!7353>
-
Marcin Ślusarz authored
anv_bo_pool_alloc expects that the memory returned by and_gem_mmap was annotated using VALGRIND_MALLOCLIKE_BLOCK, but anv_gem_mmap_offset didn't do that. Move annotation from anv_gem_mmap_legacy to common code. Fixes: 4abf0837 ("anv: Add support for new MMAP_OFFSET ioctl.") Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!7381>
-
Jonathan Marek authored
Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!7406>
-
Vinson Lee authored
Fix defect reported by Coverity Scan. Argument cannot be negative (NEGATIVE_RETURNS) negative_returns: f is passed to a parameter that cannot be negative. CID: 1364709 Fixes: 13fa0513 ("auxiliary/os: add new os_get_command_line() function") Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <!7344>
-
Michel Dänzer authored
iris_bufmgr_create can return NULL, in which case we'd crash in list_addtail. Reported by Coverity/clang (for i965, but iris code looks the same). Fixes: 7557f160 ("iris: share buffer managers accross screens") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!7335>
-
Michel Dänzer authored
brw_bufmgr_create can return NULL, in which case we'd crash in list_addtail. Reported by Coverity/clang. Fixes: 4094558e ("i965: share buffer managers across screens") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!7335>
-
Connor Abbott authored
Part-of: <!7385>
-