aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/gpu.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update src/video_core/gpu.cppbunnei2020-05-051-1/+1
| | | Co-authored-by: David <25727384+ogniK5377@users.noreply.github.com>
* Update src/video_core/gpu.cppbunnei2020-05-051-1/+1
| | | Co-authored-by: David <25727384+ogniK5377@users.noreply.github.com>
* Clang Format and Documentation.Fernando Sahmkow2020-04-281-2/+4
|
* VideoCore/GPU: Delegate subchannel engines to the dma pusher.Fernando Sahmkow2020-04-271-1/+21
|
* VideoCore/Engines: Refactor Engines CallMethod.Fernando Sahmkow2020-04-271-5/+5
|
* Clang Format.Fernando Sahmkow2020-04-231-5/+7
|
* GPU: Add Fast GPU Time Option.Fernando Sahmkow2020-04-231-1/+5
|
* DMAPusher: Propagate multimethod writes into the engines.Fernando Sahmkow2020-04-231-4/+43
|
* Address Feedback.Fernando Sahmkow2020-04-221-2/+2
|
* GPU: Implement Flush Requests for Async mode.Fernando Sahmkow2020-04-221-0/+22
|
* ThreadManager: Sync async reads on accurate gpu.Fernando Sahmkow2020-04-221-1/+1
|
* OpenGL: Implement Fencing backend.Fernando Sahmkow2020-04-221-1/+1
|
* GPU: Delay Fences.Fernando Sahmkow2020-04-221-0/+4
|
* GPU: Refactor synchronization on Async GPUFernando Sahmkow2020-04-221-0/+3
|
* dma_pusher: Remove reliance on the global system instanceLioncash2020-04-191-1/+1
| | | | | With this, the video core is now has no calls to the global system instance at all.
* Frontend/GPU: Refactor context managementJames Rowe2020-03-241-4/+6
| | | | | | | | | | | | | | | | | | | | Changes the GraphicsContext to be managed by the GPU core. This eliminates the need for the frontends to fool around with tricky MakeCurrent/DoneCurrent calls that are dependent on the settings (such as async gpu option). This also refactors out the need to use QWidget::fromWindowContainer as that caused issues with focus and input handling. Now we use a regular QWidget and just access the native windowHandle() directly. Another change is removing the debug tool setting in FrameMailbox. Instead of trying to block the frontend until a new frame is ready, the core will now take over presentation and draw directly to the window if the renderer detects that its hooked by NSight or RenderDoc Lastly, since it was in the way, I removed ScopeAcquireWindowContext and replaced it with a simple subclass in GraphicsContext that achieves the same result
* video_core/gpu: Remove unused functionsReinUsesLisp2020-02-251-65/+0
|
* Revert "video_core: memory_manager: Use GPU interface for cache functions."bunnei2020-02-151-1/+1
|
* GPU: Address Feedback.Fernando Sahmkow2020-02-131-6/+8
|
* GPU: Implement GPU Clock correctly.Fernando Sahmkow2020-02-101-1/+13
|
* video_core: memory_manager: Use GPU interface for cache functions.bunnei2020-02-071-1/+1
|
* video_core: Block in WaitFence.Markus Wick2019-12-301-3/+4
| | | | | | | This function is called rarely and blocks quite often for a long time. So don't waste power and let the CPU sleep. This might also increase the performance as the other cores might be allowed to clock higher.
* Merge pull request #2912 from FernandoS27/async-fixesbunnei2019-10-161-0/+13
|\ | | | | General fixes to Async GPU
| * AsyncGpu: Address FeedbackFernando Sahmkow2019-10-111-1/+1
| |
| * GPU_Async: Correct fences, display events and more.Fernando Sahmkow2019-10-041-0/+13
| | | | | | | | | | | | | | This commit uses guest fences on vSync event instead of an articial fake fence we had. It also corrects to keep signaling display events while loading the game as the OS is suppose to send buffers to vSync during that time.
* | video_core/gpu: Remove use of the global system accessorLioncash2019-10-151-1/+1
|/ | | | | We can just make use of the reference member variable instead of accessing the global system instance.
* video_core: Implement RGBX16F PixelFormatFearlessTobi2019-09-221-0/+1
|
* Merge pull request #2793 from ReinUsesLisp/bgr565bunnei2019-09-031-12/+0
|\ | | | | renderer_opengl: Implement RGB565 framebuffer format
| * renderer_opengl: Use VideoCore pixel formatReinUsesLisp2019-08-211-12/+0
| |
* | video_core: Silent miscellaneous warnings (#2820)Rodrigo Locatti2019-08-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * texture_cache/surface_params: Remove unused local variable * rasterizer_interface: Add missing documentation commentary * maxwell_dma: Remove unused rasterizer reference * video_core/gpu: Sort member declaration order to silent -Wreorder warning * fermi_2d: Remove unused MemoryManager reference * video_core: Silent unused variable warnings * buffer_cache: Silent -Wreorder warnings * kepler_memory: Remove unused MemoryManager reference * gl_texture_cache: Add missing override * buffer_cache: Add missing include * shader/decode: Remove unused variables
* | GPU: Flush commands on every dma pusher step.Fernando Sahmkow2019-07-261-0/+4
|/ | | | | | This commit ensures that the host gpu is constantly fed with commands to work with, while the guest gpu keeps producing the rest of the commands. This reduces syncing time between host and guest gpu.
* Merge pull request #2592 from FernandoS27/sync1bunnei2019-07-261-1/+47
|\ | | | | Implement GPU Synchronization Mechanisms & Correct NVFlinger
| * NVServices: Styling, define constructors as explicit and correctionsFernando Sahmkow2019-07-051-11/+14
| |
| * NVFlinger: Correct GCC compile errorFernando Sahmkow2019-07-051-4/+2
| |
| * NVServices: Make NVEvents Automatic according to documentation.Fernando Sahmkow2019-07-051-2/+5
| |
| * GPU: Correct Interrupts to interrupt on syncpt/value instead of event, ↵Fernando Sahmkow2019-07-051-15/+15
| | | | | | | | mirroring hardware
| * nv_host_ctrl: Make Sync GPU variant always return synced result.Fernando Sahmkow2019-07-051-2/+2
| |
| * Gpu: use an std mutex instead of a spin_lock to guard syncpointsFernando Sahmkow2019-07-051-2/+2
| |
| * Gpu: Mark areas as protected.Fernando Sahmkow2019-07-051-0/+2
| |
| * nv_services: Stub CtrlEventSignalFernando Sahmkow2019-07-051-0/+11
| |
| * Gpu: Implement Hardware Interrupt Manager and manage GPU interruptsFernando Sahmkow2019-07-051-1/+6
| |
| * video_core: Implement GPU side SyncpointsFernando Sahmkow2019-07-051-0/+24
| |
* | Merge pull request #2743 from FernandoS27/surpress-assertbunnei2019-07-251-13/+7
|\ \ | | | | | | Downgrade and suppress a series of GPU asserts and debug messages.
| * | GPU: Add missing puller methods.Fernando Sahmkow2019-07-181-13/+7
| | | | | | | | | | | | | | | This adds some missing puller methods. We don't assert them as these are nop operations for us.
* | | gl_rasterizer: Implement compute shadersReinUsesLisp2019-07-151-0/+8
|/ /
* / prefer system reference over global accessorMichael Scire2019-07-091-1/+1
|/
* Introduce skeleton of the GPU Compute Engine.Fernando Sahmkow2019-04-221-1/+1
|
* Revamp Kepler Memory to use a subegine to manage uploadsFernando Sahmkow2019-04-221-1/+1
|
* memory_manager: Improved implementation of read/write/copy block.bunnei2019-04-051-1/+1
| | | | | - Fixes graphical issues with Chocobo's Mystery Dungeon EVERY BUDDY! - Fixes a crash with Mario Tennis Aces
* video_core/gpu: Amend typo in GPU member variable nameLioncash2019-03-271-4/+5
| | | | smaphore -> semaphore