1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-22 18:53:28 +01:00
Commit Graph

7024 Commits

Author SHA1 Message Date
Nekotekina
bebb1bdeda Extend ppu_decoder/spu_decoder templates
Automatically dereference pointers
2018-05-30 20:35:35 +03:00
Nekotekina
1193ab0b89 Use memfd_create (Linux) 2018-05-30 20:35:35 +03:00
Nekotekina
944e89058e SPU: improve SHUFB 2018-05-30 20:35:35 +03:00
Megamouse
c5709f71b3 Qt: Add performance overlay options to the emu tab in the settings dialog 2018-05-30 21:31:45 +04:00
Megamouse
cc50d503ef Qt: Add a gui tab to the settings dialog
this is mainly to make place in the emulator tab
2018-05-30 21:31:45 +04:00
kd-11
cf2cb7978b facepalm 2018-05-30 13:30:23 +03:00
kd-11
f543fb0243 vk/gl: Fix flush synchronization to be kinder to weaker CPUs but not harm higher end CPUs 2018-05-30 13:30:23 +03:00
kd-11
6362942928 rsx: Avoid semaphore acquire deadlock 2018-05-30 13:30:23 +03:00
Jan Beich
3d632a3774 CPUStats: add support for macOS and BSDs 2018-05-30 12:35:41 +03:00
VelocityRa
c8d8a81ccd overlays: Performance Overlay 2018-05-30 12:35:41 +03:00
VelocityRa
c2e17d04e1 overlays: Font improvements
* Support for using arbitrary firmware fonts
* Support for specifying font extension in `font` constructor (useful for most firmware fonts that use .TTF)
2018-05-30 12:35:41 +03:00
VelocityRa
33b01d9306 overlays: Allow for non-interactable UI components
* Also fix a few warnings in overlay_controls
2018-05-30 12:35:41 +03:00
VelocityRa
8981227644 util/thread_ctrl: Method for measuring cycles a thread has run for
Also add a getter for the native thread handle.
2018-05-30 12:35:41 +03:00
VelocityRa
5defa9c7b0 util: Class for getting overall CPU usage and thread count 2018-05-30 12:35:41 +03:00
eladash
4576a31f47 fix memory mapping alignment 2018-05-30 00:34:38 +04:00
eladash
8826948c43 cellgcm: implement cellGcmTerminate 2018-05-29 19:57:28 +03:00
eladash
23b380eb41 allow deallocations to unmap rsx mapped memory 2018-05-29 19:57:28 +03:00
eladash
ce98c962f8 cellgcm: use offset table to get the corresponding address to io address 2018-05-29 19:57:28 +03:00
eladash
c2b2dee56d cellgcm/sys_rsx: fix multiple io maps at the same effective address and vice verse
from hw testing, as long as the io address is valid, it returns CELL_OK, even when it doesn't make much sense
2018-05-29 19:57:28 +03:00
eladash
97515a0941 sys_rsx/cellgcm: return EINVAL if the io map requast's size is 0 2018-05-29 19:57:28 +03:00
eladash
0a7902d313 sys_rsx: fix mem_handle id 2018-05-29 19:57:28 +03:00
eladash
8eab9fe36c sys_rsx: fix unused pointer dereferencing 2018-05-29 19:57:28 +03:00
kd-11
824340363d disable thread scheduler on intel 2018-05-29 13:54:30 +03:00
kd-11
d48f391b41 lv2: Ease the pain of lower end CPUs
- Avoid busy waiting in usleep code as much as possible, instead yield
- Also avoid busy_wait for SPU concurrency choker
2018-05-29 13:54:30 +03:00
kd-11
83f9be2524 rsx: Promote FIFO optimizations outside of strict mode
- The benefits of FIFO optimizations are huge in some cases.
  The optimizations also do not break any tested applications so no need to disable with strict mode
- A debug option is provided to disable this behaviour for testing
2018-05-29 13:54:30 +03:00
kd-11
be13a776f4 lv2: Reimplement sys_timer_usleep
- Matches ps3 accuracy for all tested values with few exceptions
- Do not enter the host OS kernel if waiting for less than 500us to avoid scheduler issues
2018-05-29 13:54:30 +03:00
kd-11
2adb2ebb00 overlays: Avoid race condition on remove-on-update views
- Improves cleanup code to consist of 2 parts, remove then dispose. Remove
  does not deallocate the item until dispose is called on it, allowing the
  backends to first deallocate external references.
- Caller is responsible for managing list locking and tracking disposable list
  of items when external references have been cleaned up before using
  dispose method.
2018-05-29 13:54:30 +03:00
Roberto Anić Banić
2bfafe4b0d Add SHA256 hash verification
Amended 3 times because of my stupidity...
2018-05-25 16:56:42 +04:00
Roberto Anić Banić
fed94e3823 Vulkan SDK Mirror
Setup Mirror for Vulkan SDK executable.
Let's not be assholes and append ?Human=True to the link cause we might get ourselves put on a blacklist if we keeep using it after the requirement stops.
If the mirror is down it will fail back to lunar cdn.
2018-05-25 16:56:42 +04:00
Jan Beich
c09c792636 GPUOpen: drop bogus include
GNU libc and musl have aligned_alloc() in <stdlib.h> while on BSDs
<malloc.h> shouldn't be used.

In file included from rpcs3/Emu/RSX/VK/VKMemAlloc.cpp:2:
In file included from rpcs3/../3rdparty/GPUOpen/include/vk_mem_alloc.h:2233:
/usr/include/malloc.h:3:2: error: "<malloc.h> has been replaced by <stdlib.h>"
 #error "<malloc.h> has been replaced by <stdlib.h>"
  ^
2018-05-24 20:00:35 +04:00
kd-11
0fc67aa2f6 gl: fix wcb regression
- Partial framebuffers and blit targets are possible!
2018-05-24 10:36:04 +03:00
kd-11
493d4e8613 fixup - Improve invalidated region checks for performance 2018-05-24 10:36:04 +03:00
kd-11
b030d1900c rsx: Fixup - fix broken memory protection fail caused by region respec
- Some applications will alternate memory between framebuffer and texture data
2018-05-24 10:36:04 +03:00
kd-11
f38f61d110 vk: Clean up memory allocation and fix GPUOpen VMA for Radeon 2018-05-23 19:07:08 +03:00
kd-11
92b5a705d8 fixup - locking 2018-05-23 19:07:08 +03:00
kd-11
b957eac6e8 rsx: Avoid calling any blocking callbacks from threads that are not rsx::thread
- Defers on_notity_memory_unmapped to only run from within rsx context
- Avoids passive_lock + writer_lock deadlock
2018-05-23 19:07:08 +03:00
kd-11
d2bf04796f Optimized cached write-through
- Allows grabbing an unsynchronized memory block if overwriting contents
anyway
- Allows flushing only specified range of memory
2018-05-23 19:07:08 +03:00
kd-11
f8d999b384 fixup - range check 2018-05-23 19:07:08 +03:00
kd-11
fbf6581249 rsx: Fix segmented memory access for rsx::super_ptr 2018-05-23 19:07:08 +03:00
kd-11
d283200e13 vk: Do not do extension test if in a fast context (enum only) 2018-05-23 19:07:08 +03:00
kd-11
3f14bc6961 rsx: Silence some meaningless error 2018-05-23 19:07:08 +03:00
kd-11
f2a3167193 rsx: Lower format compatibility severity since it confuses some people 2018-05-23 19:07:08 +03:00
kd-11
8fcd5c1e5a rsx: Texture cache fixes
1. rsx: Rework section synchronization using the new memory mirrors
2. rsx: Tweaks
    - Simplify peeking into the current rsx::thread instance.
      Use a simple rsx::get_current_renderer instead of asking fxm for the same
    - Fix global rsx super memory shm block management
3. rsx: Improve memory validation. test_framebuffer() and
tag_framebuffer() are simplified due to mirror support
4. rsx: Only write back confirmed memory range to avoid overapproximation errors in blit engine
5. rsx: Explicitly mark clobbered flushable sections as dirty to have them
removed
6. rsx: Cumulative fixes
    - Reimplement rsx::buffered_section management routines
    - blit engine subsections are not hit-tested against confirmed/committed memory range
      Not all applications are 'honest' about region bounds, making the real cpu range useless for blit ops
2018-05-23 19:07:08 +03:00
pauls-gh
f8a0be8c3e Performance enhancement - Vulkan memory allocator (#4635)
* Incorporates the vulkan memory allocator from the AMD GPUOpen project
2018-05-23 17:02:35 +03:00
Nekotekina
00f5335895 Add Human=true in appveyor.yml 2018-05-23 15:36:29 +03:00
Nekotekina
c5d8d50908 Move SPU LLVM log file 2018-05-23 15:36:29 +03:00
Nekotekina
3e580afe21 SPU: remove passive lock (fixup) 2018-05-23 15:36:29 +03:00
scribam
2270b8d15c vulkan: link with vulkan-1.lib instead of VKstatic.1.lib 2018-05-23 13:54:27 +03:00
Megamouse
b230b0df0d Qt: Workaround for yet another hidden column resize 2018-05-22 16:27:33 +01:00
Megamouse
62efe6e5be Qt: set smaller default log frame height 2018-05-22 16:27:33 +01:00