Commit graph

5144 commits

Author SHA1 Message Date
Elad Ashkenazi bc22df8ba8 SPU: Optimize cellSpurs reservations 2024-11-03 11:13:54 +02:00
Elad 85d1649696 utils/atomic.hpp: Make atomic_op reject non-non-const lvalue 2024-11-02 21:43:35 +02:00
oltolm 42751cc8fb SPULLVMRecompiler: remove unnecessary bitcast 2024-11-01 16:31:14 +02:00
Elad e67d090c35 Fixup sys_event_port_send 2024-11-01 10:43:46 +02:00
Elad ddd0494cf4 Silence sys_ss_access_control_engine 2024-11-01 10:43:46 +02:00
Elad b87c891ec4 Fixup sys_event to check EBUSY only for PPU->PPU signals 2024-11-01 07:37:57 +02:00
Elad 5c5edb4785 sys_event: Implement EBUSY for disconnection 2024-10-30 21:15:16 +02:00
elad335 97f2b6b701 Fix get_system_time() 2024-10-29 19:26:33 +02:00
elad335 29c1c3df1f sys_event_flag_set: Minor improvement 2024-10-29 19:26:33 +02:00
Megamouse 431221f172 Don't log "always" messages in fatal_error_listener until enabled
Opening the console breaks Qt cli popups
2024-10-25 20:10:46 +02:00
elad335 3ecb14dcda sys_event_flag_set: Break atomic operation dependencies 2024-10-25 15:53:53 +03:00
elad335 a325eb52bd Compilation hotfix 2024-10-25 13:21:49 +03:00
elad335 af052b0627 RawSpu: Optimize START register/commands
START MFC proxy commands can be common even after their need, optimize their usage.
2024-10-24 21:03:06 +03:00
elad335 2e8029a45b get_system_time(): Add fast TSC-based path 2024-10-24 21:03:06 +03:00
Elad 3378b03c1f Optimize get_system_time using 128 bit math 2024-10-24 21:03:06 +03:00
Elad Ashkenazi 3e516df214 SPU: Reimplement SPURS limiter 2024-10-17 13:59:56 +03:00
Elad Ashkenazi e58a3ab7e0 sys_spu: Fix order of some checks 2024-10-15 10:42:22 +03:00
Elad Ashkenazi e0e1c729cd Fix sys_spu_thread_group_disconnect_event 2024-10-15 10:42:22 +03:00
Elad Ashkenazi 7c6b558647 Improve sys_spu_thread_initialize 2024-10-15 09:36:36 +03:00
Elad Ashkenazi 217c924d42 Fix sys_vm_memory_map 2024-10-15 09:36:36 +03:00
Megamouse 16c1b9ed73 Fix some narrowing warnings 2024-10-14 21:29:51 +02:00
Elad Ashkenazi 42ee2463c7 Initialize some spu_thread members 2024-10-14 20:15:14 +03:00
Elad Ashkenazi 2fc9ae5d28 sys_vm: Argument checking fixes 2024-10-14 20:15:14 +03:00
Elad Ashkenazi 28dc7356a8 sys_memory: Fix argument size type 2024-10-14 20:15:14 +03:00
Elad Ashkenazi f6c585902a sys_spu: Fix SPU queue index type 2024-10-14 20:15:14 +03:00
Elad Ashkenazi 693cf9950f sys_spu: Minor fixes 2024-10-14 20:15:14 +03:00
Elad Ashkenazi cef3ee2d80 SPU: More SPURS limiter fixes 2024-10-14 06:30:05 +03:00
Elad Ashkenazi 8fac136056 SPU: SPURS pause based average task order duration 2024-10-11 17:41:34 +03:00
Elad c009215983 SPU: Fix "Max SPURS Threads" performance 2024-10-11 07:28:28 +03:00
Elad Ashkenazi d51d5ce86d SPURS limiter tweaks 2024-10-07 15:02:23 +03:00
Malcolm Jestadt 967adaf9db SPU LLVM: Compute frest exponent at runtime rather than using the lookup table
- Provides a small speedup and smaller codesize
2024-10-05 20:44:23 +03:00
Malcolm Jestadt 8ca60df1ab SPU LLVM: Add optimized path for spu_re_acc special cases
- Uses vfixupimmps (AVX-512), 5 instructions down to 1
2024-10-05 20:44:23 +03:00
RipleyTom 4832267307 Fixes audio buffering on non-windows platforms 2024-10-05 11:44:15 +03:00
RipleyTom c49ff490bc Fix scenp_score_record_score param check 2024-09-29 12:09:11 +03:00
Elad f0c60b42c2
SPURS Task limit hotfix (#16140) 2024-09-27 22:15:06 +03:00
RipleyTom 88adaa9d2d Add some extra param handling for cellNetCtlGetInfo 2024-09-27 19:14:09 +02:00
Elad 10dece1c80 SPU: Improve SPURS Task limit algorithm 2024-09-27 12:43:44 +03:00
RipleyTom 9dd0b055d0 Fake sceNpMatching2GetLobbyInfoList 2024-09-26 21:12:10 +02:00
Elad Ashkenazi 60b5adab63 SPU: SPURS limit update 2024-09-26 06:59:20 +03:00
Elad Ashkenazi 8b79fd3da1 SPU: Make SPURS limit a dynamic setting 2024-09-26 06:59:20 +03:00
Elad Ashkenazi 4b0a5bd1b8 SPU: Fix callback leak 2024-09-24 10:31:37 +03:00
Elad Ashkenazi 6995467ff6 SPU: SPURS limiter algorithm update 2024-09-24 10:31:37 +03:00
Elad Ashkenazi ad42a2b89a SPU: Task-based SPURS limiter 2024-09-24 10:31:37 +03:00
Ani 02362a4807 spu: Do not apply a Max SPURS Threads limit to libSail
On all the tested games (e.g. Naruto Ultimate Ninja Storm, Catherine),
limiting SPURS threads for "_libsailCellSpursKernelGroup" causes video
playback to hang and the game to permanently freeze. These games still
function properly while limiting the other CellSpursKernelGroup groups,
as I've confirmed through manual thread pausing.

I have not found a single example that shows that 
_libsailCellSpursKernelGroup threads can be limited without the game 
freezing.

This allows the Max SPURS Threads setting to work with more games, or to 
work with a lower thread limit count for games where it already works.
2024-09-21 15:02:41 +02:00
Megamouse c89e30b3d9 cellMsgDialog: only abort dialogs that were actually spawned by cellMsgDialog 2024-09-20 20:43:57 +02:00
RipleyTom 3d9c8a670e Implement old matching API 2024-09-19 20:34:56 +02:00
Elad Ashkenazi cf65571be7 SPU Analyzer Hotfix 2024-09-19 10:00:18 +03:00
capriots 66eae05e75 cellAtracXdec: fix FFmpeg warning 2024-09-18 07:57:10 +02:00
capriots 7f2534819e cellAtracXdec: review fixes 2024-09-14 19:37:21 +02:00
capriots e678931cee cellAtracXdec: review fixes 2024-09-14 19:37:21 +02:00