#fyi david.harvey
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL25233036
tbbmmalloc.pdb seems to also be generated by the build process & there's a weird timestamp issue.
Original CL Desc
-----------------------------------------------------------------
Make sure TBB DLLs use /DYNAMICBASE
(on behalf of Refik Karic)
#rb Refik.Karic, David.Harvey
#jira UE-183060
#rnx
#preflight 644bdfca09453df54842c103
[CL 25287927 by Ryan Hummer in ue5-main branch]
tbbmmalloc.pdb seems to also be generated by the build process & there's a weird timestamp issue.
Original CL Desc
-----------------------------------------------------------------
Make sure TBB DLLs use /DYNAMICBASE
(on behalf of Refik Karic)
#rb Refik.Karic, David.Harvey
#jira UE-183060
#rnx
#preflight 644bdfca09453df54842c103
[CL 25234782 by david harvey in ue5-main branch]
(on behalf of Refik Karic)
#rb Refik.Karic, David.Harvey
#jira UE-183060
#rnx
#preflight 644bdfca09453df54842c103
[CL 25233036 by David Harvey in ue5-main branch]
Re-use memory allocations for CPU buffers in OpenImageDenoise plugin. Instead of creating a new array every time we run the denoiser, try to keep the old one around, assuming that the resolution is rarely changing. Also try to re-use the oidn filter as long as the pixel array and resolution has not changed.
Change from ReadSurfaceData method which does its own memory allocations to directly using LockTexture2D which lets us read the GPU texture data directly.
This saves up to 50ms of denoising time for typical editor resolutions.
Upgrade from OpenImageDenoise 1.4.0 to 1.4.1 as this fixes a crash with in-place denoising which we are now using. I did not update to the latest 1.4.3 to avoid changing the tbb dependency.
#jira none
#rb Tiantian.Xie
#preflight 642f6928ce7fbea1eebed616
[CL 24969720 by chris kulla in ue5-main branch]
//UE5/Main/Engine/Source/ThirdParty/Intel/ISPC/ispc-1.18.0/...
to //UE5/Main/Engine/Source/ThirdParty/Intel/ISPC/ispc-1.19.0/...
#jira none
#rb none
#preflight none
#rnx
[CL 24600126 by Wojciech Krywult in ue5-main branch]
- Creates the UnrealArchitectures class, which wraps a list of UnrealArch objects
- UnrealArch is a single architecture, expandable enum-like struct
- There is no more concept of "no/default architecture", there is always a valid active architecture when building
- Most uses of "string Architecture" are replaced with one of the two above, depending if multiple architectures are supported or not
- UnrealArch has some platform-extensions for platform-specific naming (like Linux adds in LinuxName that turns, for instance, Arm64 -> aarch64-unknown-linux-gnueabi, which is used in folder names, etc)
- UnrealArch has bIsX64 which can be used determine intel instruction set (as opposed to arm)
- TargetRules class has an "Architecture" accessor that will return a single architecture if the active architectures is a single architecture, or throw an exception if multiple. This is useful in a majority of the cases where a paltform can only have a single architecture active in TargetRules (microsoft platforms, for instance, will create separate targets when compiling multiple architectures at once)
- Added UnrealArchitectureConfig class, which contains all the architecture information for a platform (what architectures are supported, what ones are currently active for given project, etc)
#preflight 63c81fb5b065224750a1759e
#rb mike.fricker,roman.dzieciol,joe.kirchoff,dmytro.vovk,brandon.schaefer [various parts]
#p4v-preflight-copy 23562471
[CL 23829977 by josh adams in ue5-main branch]
- Rework some misleading platform checks.
- Always include the ThirdParty modules, those modules can control whether they're supported or not based on the TargetRules.
#jira none
#rb elizabeth.baumel, bryan.sefcik, robert.srinivasiah
#preflight 63b4913d1c35d1cbdb50aa04
[CL 23569739 by christopher waters in ue5-main branch]
- Mac changes to compile separately, but link together (with lipo) after making two .dylibs/executables
- Removed FixDylibDependencies on Mac by making "stub dylibs" to mimic what Windows does with import libs, to solve circular dependencies
- Added DependenciesToSkipByArchitecture to ModuleRules that is used, when making a new single-arch LinkEnvironment from a multi-arch LinkEnvironment, to strip out libraries, etc, that should not be included with that single architecture
#preflight 6387891b4004f73f623c85a0
#rb zack.neyland
[CL 23336522 by Josh Adams in ue5-main branch]
Using INTC_D3D12_GetResourceAllocationInfo to get correct resource sizes when using 64bit atomics on Intel.
#jira UE-167783
#rb mihnea.balta
#preflight 63505afbb7420ffb4a8c6366
#rnx
#lockdown Mihnea.Balta
[CL 22662558 by christopher waters in ue5-main branch]
Adding Intel runtime support for atomic 64.
Based on changes provided by Robert.Kawiak at Intel.
#jira none
#rb mihnea.balta
#preflight 6308e6725a79fe735696e06f
[CL 21592544 by christopher waters in ue5-main branch]
Build - updating the tempstorage build graph script to ignore additonal pdb build products for tbb.
#jira UE-159742
#preflight 62d5e73ec0180d80715a8b8d
[CL 21161802 by Nick Darnell in ue5-main branch]
#fyi Nick.Darnell
Original CL Desc
-----------------------------------------------------------------
Core - Updating the TBB copy location so that the dll and pdb end up in the same place to make generating portable symbols easier.
#jira UE-159742
#preflight 62d5e73ec0180d80715a8b8d
[CL 21156651 by Nick Darnell in ue5-main branch]
- Latest ISPCTextureCompressor brings a number of bug fixes and includes Apple silicon support.
- Update IntelISPCTexComp.Build.cs to reference new paths
- Update Windows (x64), Linux (thanks MikeS!) and Mac dynamic libraries
- Remove Win32 dynamic libraries
- Enable ShaderCompileWorker as an arm64 native target for UAT
- Bump ASTC and ISP_ASTC version numbers (for DDC)
#rb josh.adams, chris.babcock
#fyi charles.bloom, jeff.newquist
#jira UE-145047, UE-145025, UE-150669, UE-154182
#rnx
#preflight 629a0abe2230bd91403f0f02
[CL 20487296 by will damon in ue5-main branch]