Refactor SPMD job system, add GGX mipmap benchmark
- Replace IJobSPMD with T4-generated, multi-type SPMD job interfaces and wrappers (up to 8 numeric types) - Extend ISPMD with Cast/BitCast; implement for ScalarLane and WideLane (SIMD-aware) - Add unary minus, scalar-lane, and lane-scalar operators to Vector2/3/4; improve Select methods - WideLane now partial with T4-generated Cast/BitCast (SIMD conversions) - SPMD job Execute now requires unmanaged TLane; update all usages and benchmarks - Add GGXMipGenerationBenchmark with vectorized and scalar paths, SkiaSharp output - Update project files: add generated code, SkiaSharp, bump version to 1.3.0 - Misc: fix formatting, method signatures, FreeList logic
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<Authors>Misaki</Authors>
|
||||
<AssemblyVersion>1.2.0</AssemblyVersion>
|
||||
<AssemblyVersion>1.3.0</AssemblyVersion>
|
||||
<Version>$(AssemblyVersion)</Version>
|
||||
<PackageProjectUrl>https://git.personalnas.com/Misaki/Misaki.HighPerformance.git</PackageProjectUrl>
|
||||
<RepositoryUrl>https://git.personalnas.com/Misaki/Misaki.HighPerformance.git</RepositoryUrl>
|
||||
@@ -27,15 +27,20 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="Templates\IJobSPMD.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>IJobSPMD.tt</DependentUpon>
|
||||
</None>
|
||||
<None Include="Templates\Vector2.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Vector2.tt</DependentUpon>
|
||||
</None>
|
||||
<None Include="Templates\Vector{T}Helper.cs">
|
||||
<None Include="Templates\WideLane.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Vector{T}Helper.ttinclude</DependentUpon>
|
||||
<DependentUpon>WideLane.tt</DependentUpon>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -44,6 +49,10 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Update="Templates\IJobSPMD.tt">
|
||||
<Generator>TextTemplatingFileGenerator</Generator>
|
||||
<LastGenOutput>IJobSPMD.gen.cs</LastGenOutput>
|
||||
</None>
|
||||
<None Update="Templates\MathV.Vector.tt">
|
||||
<Generator>TextTemplatingFileGenerator</Generator>
|
||||
<LastGenOutput>MathV.Vector.gen.cs</LastGenOutput>
|
||||
@@ -60,9 +69,9 @@
|
||||
<Generator>TextTemplatingFileGenerator</Generator>
|
||||
<LastGenOutput>Vector2.gen.cs</LastGenOutput>
|
||||
</None>
|
||||
<None Update="Templates\Vector{T}Helper.ttinclude">
|
||||
<None Update="Templates\WideLane.tt">
|
||||
<Generator>TextTemplatingFileGenerator</Generator>
|
||||
<LastGenOutput>Vector{T}Helper.cs</LastGenOutput>
|
||||
<LastGenOutput>WideLane.gen.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -71,6 +80,11 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Update="Templates\IJobSPMD.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>IJobSPMD.tt</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Update="Templates\MathV.Vector.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
@@ -91,10 +105,10 @@
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Vector4.tt</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Update="Templates\Vector{T}Helper.cs">
|
||||
<Compile Update="Templates\WideLane.gen.cs">
|
||||
<DesignTime>True</DesignTime>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Vector{T}Helper.ttinclude</DependentUpon>
|
||||
<DependentUpon>WideLane.tt</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user