Commit Graph

  • e6741642ba Split out megabuffer allocation from pushing data lynxnb 2022-08-08 14:47:53 +01:00
  • cdc6a4628a Enable VK uint8 indices feature when supported Billy Laws 2022-08-04 19:58:28 +01:00
  • dccc86ea97 Implement transform feedback with VK_EXT_transform_feedback Billy Laws 2022-07-31 14:58:24 +01:00
  • 06053d3caf Rewrite Fermi 2D engine to use the blit helper shader Billy Laws 2022-07-31 15:05:51 +01:00
  • 395f665a13 Implement a system for helper shaders together with a simple blit shader Billy Laws 2022-07-31 15:05:20 +01:00
  • 1da1698f90 Disable unused Vulkan HPP setters and smart handles Billy Laws 2022-07-31 15:01:42 +01:00
  • f4e58a9238 Remove redundant synchost creating a new buffer Billy Laws 2022-07-31 14:58:47 +01:00
  • 11a8feb037 Correct nvdrv DMA copy class ID Billy Laws 2022-07-31 14:45:29 +01:00
  • 13e7b54c61 Ensure failed IOCTLs are logged as a warning log Billy Laws 2022-07-31 14:44:50 +01:00
  • eeb86a4f8a Calculate renderArea from min(attachments.dimensions...) Billy Laws 2022-07-31 14:29:44 +01:00
  • 9ea658d0ed Don't throw on unsupported TIC formats Billy Laws 2022-07-31 14:20:37 +01:00
  • 856818c8eb Emulate the 'None' mipfilter by adjusting LOD Billy Laws 2022-07-31 14:18:16 +01:00
  • 9d50b6d0f7 Avoid locking presentation mutex in GetTransformHint Billy Laws 2022-07-31 13:59:25 +01:00
  • 460e6c9c84 Use raw pointers to hold constant buffer views Billy Laws 2022-07-31 13:57:11 +01:00
  • 6b2e84712b Avoid race in nvdrv debug prints Billy Laws 2022-07-31 13:46:13 +01:00
  • 683cd594ad Use a linear allocator for most per-execution GPU allocations Billy Laws 2022-07-31 13:41:28 +01:00
  • 70eec5a414 Store delegate attached state within the delegate itself Billy Laws 2022-07-31 13:24:31 +01:00
  • 0268e1d5a0 Force a submit before any i2m engine writes Billy Laws 2022-07-31 13:21:26 +01:00
  • cb0b132486 Allow supplying push constants to GetPipeline Billy Laws 2022-07-31 13:17:57 +01:00
  • 1c8863ec3b Use const references for holding pipeline state in pipeline cache Billy Laws 2022-07-31 13:14:13 +01:00
  • b6b04fa6c5 Use small_vector for VMM TranslateRange results Billy Laws 2022-07-31 13:11:57 +01:00
  • 1fe6d92970 Wait on Swapchain Image copy to complete Billy Laws 2022-08-06 19:11:37 +01:00
  • 5b7572a8b3 Introduce chunked MegaBuffer allocation PixelyIon 2022-08-07 02:59:33 +05:30
  • 99b5fc35c6 Change SegmentTable semantics to respect unset entries Billy Laws 2022-08-06 14:37:37 +01:00
  • 36b8d3c445 Account for SegmentTable insertions entirely within an L2 entry PixelyIon 2022-08-06 16:20:40 +05:30
  • c72316d9f6 Rename RangeTable to SegmentTable PixelyIon 2022-08-06 16:02:05 +05:30
  • 5398eff045 Fix KProcess::MutexUnlock PI CAS Billy Laws 2022-08-06 15:54:57 +05:30
  • 850c0f4092 Make Texture::SynchronizeGuest Blocking PixelyIon 2022-08-06 15:47:11 +05:30
  • 77d15b02a3 Ensure backing continuity when recreating GPU dirty buffers Billy Laws 2022-08-04 23:40:20 +01:00
  • c1bf5a804a Extend stateMutex scope inside Buffer::SynchronizeHost Billy Laws 2022-08-04 23:22:56 +01:00
  • c3cf79cb39 Rework KThread::waiterMutex Locking PixelyIon 2022-08-04 17:15:13 +05:30
  • 68615703c1 Fix KProcess/SetThreadPriority PI CAS PixelyIon 2022-08-04 15:54:37 +05:30
  • 8fc3cc7a16 Rework Descriptor Set Allocation/Updates PixelyIon 2022-08-03 04:38:27 +05:30
  • e1a4325137 Introduce FenceCycle Waiter Thread PixelyIon 2022-08-01 22:08:32 +05:30
  • 5f8619f791 Optimize Buffer Lookups using Range Tables PixelyIon 2022-08-01 21:50:09 +05:30
  • 578ae86cca Implement Multi-Level Range Table PixelyIon 2022-08-01 21:44:07 +05:30
  • 38eab80ed8 Disable Vulkan Push Descriptors on Adreno Billy Laws 2022-07-29 03:43:28 +05:30
  • 88fd491ed5 Submit after Maxwell3D Semaphore Release Billy Laws 2022-07-29 03:37:56 +05:30
  • b77da1182f Don't flush submission on DMA Copies Billy Laws 2022-07-29 03:36:38 +05:30
  • 0992fde028 Don't block on surface creation in GetTransformHint PixelyIon 2022-07-29 03:32:20 +05:30
  • 35133381b6 Fix V-Sync KEvent construction order Billy Laws 2022-07-29 03:16:06 +05:30
  • ffad246d67 Split NCE Trap page-out functionality from TrapRegions PixelyIon 2022-08-04 23:46:44 +01:00
  • da464d84bc Consolidate NCE::TrapRegions functionality into CreateTrap PixelyIon 2022-07-29 02:29:18 +05:30
  • 8a62f8d37b Rework Texture Synchronization API + Locking PixelyIon 2022-07-29 02:34:58 +05:30
  • 04bcd7e580 Rework Buffer DirtyState with BackingImmutability Billy Laws 2022-08-04 15:47:17 +05:30
  • 1af781c0a5 Add Perfetto Tracing to NCE Trapping API PixelyIon 2022-07-26 19:35:47 +05:30
  • 9d294b9ccc Use weak_ptr for TrapHandler Callbacks PixelyIon 2022-07-25 22:52:45 +05:30
  • 96d8676d5b Fix SubmitWithFlush not updating MegaBuffer cycle Billy Laws 2022-07-25 20:43:35 +05:30
  • 3e9d84b0c3 Split FindOrCreate functionality across BufferManager PixelyIon 2022-07-19 22:42:43 +05:30
  • d2a34b5f7a Implement ContextLock Move-assignment operator PixelyIon 2022-07-19 22:39:14 +05:30
  • 38d3ff4300 Fix BufferManager::FindOrCreate Recreation Bugs PixelyIon 2022-07-17 18:18:33 +05:30
  • d1a682eace Fix setDirty behavior in Buffer::SynchronizeGuest Billy Laws 2022-07-17 18:08:17 +05:30
  • 00d434efdc Remove Texture::CopyFrom format check Billy Laws 2022-07-17 12:35:53 +05:30
  • 58174f255f Improve ContextLock semantics Billy Laws 2022-07-16 22:30:57 +05:30
  • 561103d3da Submit GPFIFO work prior to CircularQueue waiting Billy Laws 2022-07-16 21:55:31 +05:30
  • 3ac5ed8c06 Attach coalesced Buffer if any source Buffer is attached PixelyIon 2022-07-16 20:12:09 +05:30
  • 284ac53d88 Fix KThread Priority Inheritance CAS PixelyIon 2022-07-14 20:30:04 +05:30
  • 45cb8388cc Fix NCE Trap API Lock Callback PixelyIon 2022-07-13 22:23:33 +05:30
  • 745d809e07 Fix Buffer::SynchronizeGuest Non-Blocking Behavior PixelyIon 2022-07-13 22:19:37 +05:30
  • c1f2445772 Set state to CpuDirty directly in SynchronizeGuest PixelyIon 2022-07-13 22:09:09 +05:30
  • 4f6a67af36 Fix Texture Trap Data Race PixelyIon 2022-07-13 21:40:41 +05:30
  • cb7c3602e7 Attach TextureView to FenceCycle PixelyIon 2022-07-09 19:49:09 +05:30
  • ffaefc82d3 Call all flush callbacks prior to CommandExecutor submission PixelyIon 2022-07-07 17:52:57 +05:30
  • e65707cd9d Handle CommandExecutor submission at end of ChannelGpfifo PB PixelyIon 2022-07-07 01:17:26 +05:30
  • 7b209c54a2 Only reallocate MegaBuffer on usage PixelyIon 2022-07-07 17:21:09 +05:30
  • 2366f81443 Fix Buffer::PollFence incorrectly handling null-FenceCycle PixelyIon 2022-07-07 00:54:43 +05:30
  • 34e1e39d1c Always reset all attached resources on Submit PixelyIon 2022-07-07 00:53:00 +05:30
  • 47db8e8cbc Fix GPU inline copy callback for Buffer::Write PixelyIon 2022-07-07 00:31:58 +05:30
  • cd969316e9 Don't delete build folder in CI runs PixelyIon 2022-07-03 11:29:11 +05:30
  • 2636a37b31 Introduce alternative FPS measurement for disabled frame throttling PixelyIon 2022-07-03 11:17:41 +05:30
  • 0f56d01e58 Fix Packed format component ordering in IsAdrenoAliasCompatible PixelyIon 2022-07-02 22:07:48 +05:30
  • 3ca56ef578 Fix NCE Trapping API Deadlock PixelyIon 2022-07-02 21:45:50 +05:30
  • a6599c30b4 Correct IntervalMap insertion end calculation PixelyIon 2022-07-01 19:49:10 +05:30
  • b0910e7b1a Avoid locking Texture/Buffer in trap handler PixelyIon 2022-07-02 19:42:26 +05:30
  • a60d6ec58f Replace host immutability FenceCycle with GPU usage tracking PixelyIon 2022-06-29 22:02:09 +05:30
  • 217d484cba Abstract TextureView/BufferDelegate locking into LockableSharedPtr PixelyIon 2022-06-27 21:17:49 +05:30
  • 2d08886e4e Utilize TextureView rather than Texture for presentation PixelyIon 2022-06-27 20:46:21 +05:30
  • c25ad6e71a Update Project Inspection Profile PixelyIon 2022-06-26 15:26:56 +05:30
  • d7399e33c1 Avoid waiting on mutex in PresentationEngine::Present PixelyIon 2022-06-26 15:26:18 +05:30
  • 30475ffc43 Fix queueBuffer GraphicBuffer Compatibility Check PixelyIon 2022-06-26 15:21:20 +05:30
  • c2685d5f5c Fix consistency issues with external project copyright headers PixelyIon 2022-06-26 15:17:46 +05:30
  • 0ac5f4ce27 Lock TextureManager/BufferManager during submission PixelyIon 2022-06-26 14:58:58 +05:30
  • 1239907ce8 Rework Texture & Buffer for Context and FenceCycle Chaining PixelyIon 2022-06-26 14:40:46 +05:30
  • 07d45ee504 Introduce FenceCycle Chaining PixelyIon 2022-06-26 12:26:18 +05:30
  • cf9e31c1eb Implement Atomic Forward List PixelyIon 2022-06-25 19:00:46 +05:30
  • 6b9269b88e Introduce Context semantics to GPU resource locking PixelyIon 2022-06-26 14:32:34 +05:30
  • d913f29662 Only set hasFragileUserData for signed builds PixelyIon 2022-06-17 12:26:18 +05:30
  • 3139889a09 Implement Asynchronous Presentation PixelyIon 2022-06-09 22:16:15 +05:30
  • 6e09dc5204 Fix thread name setting PixelyIon 2022-06-09 22:10:44 +05:30
  • 7a0cfb484c Add NPOT AlignUp utility PixelyIon 2022-06-09 21:55:12 +05:30
  • 662ea532d8 Skip waiting on host GPU after command buffer submission PixelyIon 2022-06-05 18:22:56 +05:30
  • 5129d2ae78 Add move-assignment semantics to ActiveCommandBuffer/MegaBuffer PixelyIon 2022-06-05 15:50:49 +05:30
  • 8991ccac65 Pass ViewHolder on bind to RecyclerView items instead of ViewBinding lynxnb 2022-07-31 01:56:34 +02:00
  • bb922100cb Improve rendering for Right-To-Left layouts lynxnb 2022-07-30 13:22:01 +02:00
  • 240e7033d7 Support loading a user-selected driver during vulkan initialization lynxnb 2022-07-30 17:29:40 +02:00
  • c812de48ea Show an undo button after deleting a gpu driver lynxnb 2022-07-31 01:56:44 +02:00
  • 59c60df993 Add GPU Driver Configuration preference lynxnb 2022-07-14 02:06:51 +02:00
  • 48cf1263bc Add a custom GPU driver configuration activity lynxnb 2022-07-30 12:46:54 +02:00
  • e9f609b923 Add a gpuDriver preference setting lynxnb 2022-07-13 01:28:42 +02:00
  • 1815199d2b Add utilities for reading and installing gpu driver packages lynxnb 2022-07-30 17:29:25 +02:00