79b66ec05e2745e5d19838dcfd83f905afa82b6c |
|
13-Dec-2016 |
Bruce Cherniak <bruce.cherniak@intel.com> |
swr: Implement fence attached work queues for deferred deletion. Work can now be added to fences and triggered by fence completion. This allows for deferred resource deletion, and other asynchronous tasks. Reviewed-by: George Kyriazis <george.kyriazis@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
ab3bbe06edbf459b24cb6908393679d29adf3a2c |
|
26-Nov-2016 |
Ilia Mirkin <imirkin@alum.mit.edu> |
swr: turn off queries around blits Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
763c015ce52fe84e669b4fba722da06b72267d8f |
|
20-Nov-2016 |
Ilia Mirkin <imirkin@alum.mit.edu> |
swr: remove warning about multi-layer surfaces We now support clearing these, and actually rendering to multiple layers would require GS support, which will fail in much more spectacular ways for now. Once that is hooked up, there won't be anything else to do here. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
7cfb364b1a373bce6b0b273556953fbb78c139e9 |
|
09-Nov-2016 |
Ilia Mirkin <imirkin@alum.mit.edu> |
swr: rework resource layout and surface setup This is a bit of a mega-commit, but unfortunately there's no great way to break this up since a lot of different pieces have to match up. Here we do the following: - change surface layout to match swr's Load/StoreTile expectations - fix sampler settings to respect all sampler view parameters - fix stencil sampling to read from secondary resource - respect pipe surface format, level, and layer settings - fix resource map/unmap based on the new layout logic - fix resource map/unmap to copy proper parts of stencil values in and out of the matching depth texture These fix a massive quantity of piglits, including all the tex-miplevel-selection ones. Note that the swr native miptree layout isn't extremely space-efficient, and we end up using it for all textures, not just the renderable ones. A back-of-the-envelope calculation suggests about 10%-25% increased memory usage for miptrees, depending on the number of LODs. Single-LOD textures should be unaffected. There are a handful of regressions as a result of this change: - Some textureGrad tests, these failures match llvmpipe. (There are debug settings allowing improved gallivm sampling accurancy.) - Some layered clearing tests as swr doesn't currently support that. It was getting lucky before because enough other things were broken. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
974d280e815727f84e799cf69058630b954dec7e |
|
11-Nov-2016 |
George Kyriazis <george.kyriazis@intel.com> |
swr: Handle windows.h and NOMINMAX Reorder header files so that we have a chance to defined NOMINMAX before mesa include files include windows.h v3: split from bigger patch Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
8c0f76e961ae023bbe7c8deed1abd04496e9691b |
|
09-Nov-2016 |
Ilia Mirkin <imirkin@alum.mit.edu> |
swr: fix texture layout for compressed formats Fixes the texsubimage piglit and lets the copyteximage one get further. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
c8a51fa75d2642d71ac23a04f37f570613ac9a87 |
|
10-Nov-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: [rasterizer core] remove driverType Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
903d00cd32137161c0b57bcba95af51e47d91fa5 |
|
27-Sep-2016 |
Bruce Cherniak <bruce.cherniak@intel.com> |
swr: Removed stalling SwrWaitForIdle from queries. Previous fundamental change in stats gathering added a temporary SwrWaitForIdle to begin_query and end_query. Code has been reworked to remove stall. Reviewed-by: George Kyriazis <george.kyriazis@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
4e8763cb0904c30d1962cf5ad52fe3a87be7b4bd |
|
07-Aug-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: [rasterizer core] split FE and BE stats Separated FE stats out into its own structure. There are 17 FE vs 3 BE stat fields. Since there is only one FE thread per DC then we don't have to loop over all threads and sum up FE stats over all the worker threads. This also reduces size of DC since we only need to store one copy of the FE stats and not one per worker. Finally, we can use the new FE callback mechanism to update these. Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
6625fd08db0a24fad54d69ca1eb3935304b3a53e |
|
05-Aug-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: [rasterizer core] fundamentally change how stats work Add a per draw stats callback to update driver stats. Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
7cf187d08ae6a64c959de1cdf9004f5fb2fd097a |
|
02-Aug-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: [rasterizer core] improve implementation for SoWriteOffset 1. SoWriteOffset is no longer treated as a stat 2. Added callback from core to update streamout write offset Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
54272e18a682c8b82d4a86b2c07b51c303d8cead |
|
06-Aug-2016 |
Marek Olšák <marek.olsak@amd.com> |
gallium: add a pipe_context parameter to fence_finish required by glClientWaitSync (GL 4.5 Core spec) that can optionally flush the context Reviewed-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
1ffe77e7bb2486ea74cda077ed2a9622b758395c |
|
16-Jul-2016 |
Marek Olšák <marek.olsak@amd.com> |
gallium: split transfer_inline_write into buffer and texture callbacks to reduce the call indirections with u_resource_vtbl. The worst call tree you could get was: - u_transfer_inline_write_vtbl - u_default_transfer_inline_write - u_transfer_map_vtbl - driver_transfer_map - u_transfer_unmap_vtbl - driver_transfer_unmap That's 6 indirect calls. Some drivers only had 5. The goal is to have 1 indirect call for drivers that care. The resource type can be determined statically at most call sites. The new interface is: pipe_context::buffer_subdata(ctx, resource, usage, offset, size, data) pipe_context::texture_subdata(ctx, resource, level, usage, box, data, stride, layer_stride) v2: fix whitespace, correct ilo's behavior Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Acked-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
6b0ac95c2862b4d464079b2edd9b59b5ef906da3 |
|
17-Jun-2016 |
Bruce Cherniak <bruce.cherniak@intel.com> |
swr: Update screen->context pointer with multiple contexts. A pipe pointer in the screen allows for access to current device context in flush_frontbuffer and resource_destroy. This wasn't tracking current context in multi-context situations. v2: More caffeine. Corrected compare, removed unnecessary set of screen-pipe in create_context, and added a few comments.
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
504df3a1d791d071259d23b4a99b9b46b1f601af |
|
27-Apr-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: s/Elements/ARRAY_SIZE/ Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
3227c10270f8b7e8bb66bb7d50531fec8be75adb |
|
18-Apr-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: dereference cbuf/zbuf/views on context destroy Fixes resource memory leaks. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
61beaa22795d45f3416ecb27de54a9ee8ae1b283 |
|
09-Mar-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
swr: [rasterizer core] subcontext rework
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
dd63fa28f14f8ddeeeca1847eb7d38f4e2bc2234 |
|
14-Mar-2016 |
George Kyriazis <george.kyriazis@intel.com> |
gallium/swr: Cleaned up some context-resource management Removed bound_to_context. We now pick up the context from the screen instead of the resource itself. The resource could be out-of-date and point to a pipe that is already freed. Fixes manywin mesa xdemo. Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
e9d68cc3da07c4b566799bbaec2434bfc21d3e0c |
|
10-Mar-2016 |
Bruce Cherniak <bruce.cherniak@intel.com> |
gallium/swr: Resource management Better tracking of resource state and synchronization. A follow on commit will clean up resource functions into a new swr_resource.cpp file. Reviewed-By: George Kyriazis <george.kyriazis@intel.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|
2b2d3680bf164ec4f8b50436b96c3fc195318ea5 |
|
17-Feb-2016 |
Tim Rowley <timothy.o.rowley@intel.com> |
gallium/swr: add OpenSWR driver OpenSWR is a new software rasterizer for x86 processors designed for high performance and high scalablility on visualization workloads. Acked-by: Roland Scheidegger <sroland@vmware.com> Acked-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/swr_context.cpp
|