Commit Graph

59 Commits

Author SHA1 Message Date
Wojtek Figat
1e262b69cc Add Task::WaitAll with a span of tasks and wrap around profiler macro 2025-01-03 01:05:56 +01:00
Wojtek Figat
fee0ab74ff Update old doc comments 2024-12-28 21:31:21 +01:00
Wojtek Figat
da203352fd Refactor old code documentation 2024-09-24 18:20:12 +02:00
Wojtek Figat
b545d8800c Optimize job system memory allocations 2024-06-24 23:19:01 +02:00
Wojtek Figat
3bbaa8dad0 Remove unused job system stats and concurrent queue code 2024-06-24 19:02:38 +02:00
Wojtek Figat
861d8a683f Add JobSystem::Dispatch that accepts dependent jobs that needs to be completed before 2024-06-24 13:12:48 +02:00
Wojtek Figat
2773949197 Optimize wait signal in Job System to wake waiting threads only when job batch ends 2024-06-22 09:58:20 +02:00
Wojtek Figat
515ee96a31 Fix compilation regression 2024-04-22 19:10:06 +02:00
Wojtek Figat
32b15f90ab Minor improvements 2024-04-22 18:10:58 +02:00
Wojtek Figat
9c2c02c1cf Fix various issues found with thread sanitizer on macOS 2024-04-13 19:20:49 +02:00
Wojtek Figat
859c420d76 Update year in copyright note 2024-02-26 19:00:48 +01:00
Wojtek Figat
e255778c07 Add profiler event to task wait method 2024-02-20 12:59:00 +01:00
Wojtek Figat
f9ca69d8a9 Disable dynamic buckets in ThreadLocal on non-Desktop platforms that use fixed set of thread count 2024-02-08 10:47:55 +01:00
Wojtek Figat
082768d08c Refactor ThreadLocal when running on hardware with more cores than PLATFORM_THREADS_LIMIT 2024-02-07 23:39:02 +01:00
Wojtek Figat
d6dc1f9998 Various minor tweaks 2023-12-03 14:09:23 +01:00
Wojtek Figat
7f87e9794b Fix job system buffer allocation data 2023-11-29 19:12:58 +01:00
Wojtek Figat
b960600102 Optimize scenes loading with Job System 2023-10-01 10:55:01 +02:00
Wojtek Figat
91c017713c Merge remote-tracking branch 'origin/master' into 1.6 2023-04-13 12:12:33 +02:00
Wojtek Figat
0c167f38b7 Add TaskGraphSystem.RemoveDependency and automatically cleanup dependencies on system destroy 2023-04-05 22:43:05 +02:00
Wojtek Figat
510fc443e8 Refactor CoreCLR runtime into explicit dotnet api instead of mocking mono api
Required by platforms that will use mono under the hood for .Net 7
New `USE_CSHARP` define for C# ability
Engine doesn't use `mono_*` apis directly but via MCore/MClass/MMethod/ apis
2023-03-27 17:29:42 +02:00
Wojtek Figat
eed2cdfe04 Progress on dotnet7 runtime hosting with mono 2023-03-22 17:59:46 +01:00
b0bc1fa310 Fix error when joining exited threads
The internal thread handles were cleared prematurely when attempting to join them. The handles should be also cleared when trying to kill already exited threads.
2023-01-29 21:30:01 +02:00
Wojciech Figat
a7e428a21c Merge branch 'master' into 1.5
# Conflicts:
#	Content/Shaders/GI/DDGI.flax
#	Content/Shaders/GI/GlobalSurfaceAtlas.flax
#	Content/Shaders/TAA.flax
#	Content/Shaders/VolumetricFog.flax
#	Source/Editor/CustomEditors/Editors/ActorTagEditor.cs
#	Source/Engine/Core/Config/GraphicsSettings.cpp
#	Source/Engine/Engine/PostProcessEffect.cs
#	Source/Engine/Graphics/GPUResourcesCollection.cpp
#	Source/Engine/Graphics/GPUResourcesCollection.h
#	Source/Engine/Graphics/PostProcessBase.h
#	Source/FlaxEngine.Gen.cs
2023-01-10 15:37:55 +01:00
Wojciech Figat
9626e9bbb6 Update copyright year 2023-01-10 15:29:37 +01:00
Wojtek Figat
7184566b4b Merge branch 'master' into 1.5 2022-12-29 23:04:18 +01:00
Wojciech Figat
6ef49349ff Fix assertion on thread double-free from registry (not harmful) 2022-12-29 18:30:51 +01:00
Wojciech Figat
df82a0f5d0 Add **GPU Memory profiler** to Editor 2022-12-08 16:30:37 +01:00
Wojtek Figat
eb281a7574 Additional improvements to scene rendering 2022-11-15 22:39:03 +01:00
Wojtek Figat
9c7da16c1a Add multi-threaded scene rendering with Job System 2022-11-06 20:44:43 +01:00
Wojtek Figat
bb7d4f7812 Fix console builds 2022-08-07 21:06:17 +02:00
Wojciech Figat
9d8f75d957 Fix rare issues with Task Graph not waiting for system due to recent job system changes #721 2022-08-05 11:05:11 +02:00
Wojciech Figat
ec7aece135 Improve Job System changes to prevent dynamic memory allocation and ref counting (#721) 2022-07-05 08:52:53 +02:00
Wojciech Figat
64b2b23201 Merge branch 'jobsystem_changes' of https://github.com/GoaLitiuM/FlaxEngine into GoaLitiuM-jobsystem_changes 2022-07-04 15:45:49 +02:00
1978949b22 Allocate job context dynamically to prevent deadlocks 2022-06-12 13:56:13 +03:00
dc2a9c0702 Support dispatching jobs within jobs in JobSystem 2022-06-06 17:17:15 +03:00
Wojciech Figat
7979831f5c Add JobSystem.Execute utility for quick jobs running 2022-02-14 14:34:43 +01:00
Wojciech Figat
8c2241c6dc Update copyright year 2022-01-14 13:31:12 +01:00
Wojtek Figat
dfa5e91322 Fix conditional variables usage on broadcast by using a shared mutex 2022-01-12 17:36:06 +01:00
Wojtek Figat
192af7ec14 Refactor native core objects to simplify usage for newcomers 2022-01-08 15:06:23 +01:00
Wojciech Figat
2192852510 Fix crash when passing function with lambda to the Job System 2021-12-09 17:09:07 +01:00
intolerantape
25deea220c Added overload of Task::StartNew() to support void-returning member functions. 2021-12-03 07:54:08 -08:00
Wojtek Figat
8938f13a0b Add support for compiling and running engine without C# scripting
(configurable via `EngineConfiguration.UseCSharp` in Flax.Build)
2021-10-23 16:43:15 +02:00
Wojtek Figat
074aa8c3fb Optimize ThreadLocal by removing size check 2021-08-30 20:29:58 +02:00
Wojtek Figat
7fc144b07b Fix some memory leaks 2021-08-13 13:13:12 +02:00
Wojtek Figat
f5e5686853 Optimize includes in ThreadLocal.h 2021-07-08 00:34:49 +02:00
Wojtek Figat
446458d20c Add PLATFORM_THREADS_LIMIT for maximum concurrency limiting 2021-07-08 00:34:48 +02:00
Wojtek Figat
29be6b0068 Fix ThreadLocal to use atomic operations and prevent rare race conditions 2021-07-08 00:34:48 +02:00
Wojtek Figat
c2590fc0d9 Optimize multiple dispatches on JobSystem done via TaskGraph 2021-06-16 19:02:02 +02:00
Wojtek Figat
bf70a42d86 Change TaskGraphSystem ordering 2021-06-15 23:49:43 +02:00
Wojtek Figat
f5cdb0abfd Add Delay node to Visual Scripting 2021-06-14 16:10:08 +02:00