summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeon
Commit message (Collapse)AuthorAgeFilesLines
* radeonsi: implement mechanism for IBs without partial flushes at the end (v6)Marek Olšák2018-04-161-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (This patch doesn't enable the behavior. It will be enabled in a later commit.) Draw calls from multiple IBs can be executed in parallel. v2: do emit partial flushes on SI v3: invalidate all shader caches at the beginning of IBs v4: don't call si_emit_cache_flush in si_flush_gfx_cs if not needed, only do this for flushes invoked internally v5: empty IBs should wait for idle if the flush requires it v6: split the commit If we artificially limit the number of draw calls per IB to 5, we'll get a lot more IBs, leading to a lot more partial flushes. Let's see how the removal of partial flushes changes GPU utilization in that scenario: With partial flushes (time busy): CP: 99% SPI: 86% CB: 73: Without partial flushes (time busy): CP: 99% SPI: 93% CB: 81% Tested-by: Benedikt Schemmer <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* radeon/vcn: add VP9 profile2 supportLeo Liu2018-04-121-0/+16
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: add VP9 context bufferLeo Liu2018-04-121-0/+26
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: get VP9 msg bufferLeo Liu2018-04-122-1/+176
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: fill probability table to prob buffersLeo Liu2018-04-121-0/+38
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: add VP9 message buffer interfaceLeo Liu2018-04-121-0/+134
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: add VP9 prob table bufferLeo Liu2018-04-122-18/+37
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: add VP9 dpb buffer sizeLeo Liu2018-04-121-0/+6
| | | | | | | | | The current FW has restricted the size to the worse case, and the new dynamic dpb buffer support is on the way from firmware side, we will change accordingly. Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeon/vcn: add VP9 stream type for decoderLeo Liu2018-04-122-0/+4
| | | | | Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
* radeonsi: try to fix androidMarek Olšák2018-04-051-48/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: try to fix mesonMarek Olšák2018-04-051-59/+0
| | | | | | | | | | | | | | | This is not fully tested. Meson can't link LLVM even though automake can. PATH=/usr/llvm/x86_64-linux-gnu/bin:$PATH meson build/ -Dgallium-va=false \ -Dplatforms=x11,drm -Dgallium-drivers=radeonsi -Ddri-drivers= \ -Dgallium-omx=disabled -Dgallium-xvmc=false -Dgles1=false \ -Dtexture-float=true -Dvulkan-drivers= src/gallium/auxiliary/libgallium.a(gallivm_lp_bld_misc.cpp.o): (.data.rel.ro._ZTI26DelegatingJITMemoryManager[_ZTI26DelegatingJITMemoryManager]+0x10): undefined reference to `typeinfo for llvm::RTDyldMemoryManager' Acked-by: Timothy Arceri <[email protected]>
* radeonsi: don't build libradeon.la separatelyMarek Olšák2018-04-052-50/+0
| | | | | | for better parallelism Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_common_contextMarek Olšák2018-04-057-122/+19
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_pipe_common::screenMarek Olšák2018-04-051-1/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move r600_buffer_common.c and r600_texture.c into radeonsiMarek Olšák2018-04-054-3340/+1
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move r600_gpu_load.c to si_gpu_load.cMarek Olšák2018-04-054-291/+1
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move r600_query.c/h files to si_query.c/hMarek Olšák2018-04-057-2396/+3
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move r600_cs.h contents into si_pipe.h, si_build_pm4.hMarek Olšák2018-04-055-196/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: rename query definitions R600_ -> SI_Marek Olšák2018-04-055-332/+332
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move and rename R600_ERR out of r600_pipe_common.hMarek Olšák2018-04-052-10/+7
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move definitions out of r600_pipe_common.hMarek Olšák2018-04-053-103/+24
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move functions out of and remove r600_pipe_common.cMarek Olšák2018-04-054-237/+35
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: rename r600 -> si in some placesMarek Olšák2018-04-059-567/+567
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use si_context instead of pipe_context in parameters pt3Marek Olšák2018-04-051-2/+2
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use si_context instead of pipe_context in parameters pt2Marek Olšák2018-04-053-18/+16
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use si_context instead of pipe_context in parameters pt1Marek Olšák2018-04-051-2/+2
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: pass sctx to si_rebind_buffer and clean upMarek Olšák2018-04-051-2/+3
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt7Marek Olšák2018-04-056-24/+21
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt6Marek Olšák2018-04-052-89/+88
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: update copyrightsMarek Olšák2018-04-0510-0/+13
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: switch radeon_add_to_buffer_list parameter to si_contextMarek Olšák2018-04-052-6/+6
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt5Marek Olšák2018-04-056-227/+223
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt4Marek Olšák2018-04-053-120/+120
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt3Marek Olšák2018-04-054-47/+49
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt2Marek Olšák2018-04-054-13/+16
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: use r600_common_context less pt1Marek Olšák2018-04-052-13/+14
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: switch r600_atom::emit parameter to si_contextMarek Olšák2018-04-052-10/+10
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: flatten / remove struct r600_ringMarek Olšák2018-04-056-38/+34
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_ring::flush callbackMarek Olšák2018-04-052-3/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: make radeon_add_to_buffer_list_check_mem be gfx-onlyMarek Olšák2018-04-051-11/+10
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: add_to_buffer_list functions can return voidMarek Olšák2018-04-051-9/+9
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move saved_cs functions from r600_pipe_common.c to si_debug.cMarek Olšák2018-04-052-54/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move DMA CS functions from r600_pipe_common.c to si_dma_cs.cMarek Olšák2018-04-052-130/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: move EOP event code from r600_pipe_common.c to si_fence.cMarek Olšák2018-04-052-129/+0
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: rename si_need_cs_space -> si_need_gfx_cs_spaceMarek Olšák2018-04-051-3/+3
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_pipe_common::blit_decompress_depthMarek Olšák2018-04-052-13/+6
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_pipe_common::decompress_dccMarek Olšák2018-04-052-5/+2
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_pipe_common::invalidate_bufferMarek Olšák2018-04-052-5/+11
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_pipe_common::rebind_bufferMarek Olšák2018-04-052-8/+1
| | | | Acked-by: Timothy Arceri <[email protected]>
* radeonsi: remove r600_common_context::set_occlusion_query_stateMarek Olšák2018-04-052-7/+1
| | | | | | and remove unused old_enable parameter. Acked-by: Timothy Arceri <[email protected]>