fixing tile fma

This commit is contained in:
Youmu Liu
2026-01-11 15:28:30 +08:00
parent 4be5c1c7c9
commit cd8210d9a1
8 changed files with 198 additions and 149 deletions
+23 -10
View File
@@ -1,9 +1,9 @@
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// -----------------------------------------------------------------------
// file="Program"
// Project: StgSharp
// AuthorGroup: Nitload Space
// Copyright (c) Nitload Space. All rights reserved.
// AuthorGroup: Nitload
// Copyright (c) Nitload. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -39,17 +39,22 @@ namespace StgSharp
private static string testExpPath = @"D:\Programmer\stepcode\data\ap203\ap203.exp";
internal static unsafe void Main(string[] args)
internal static unsafe void Main(
string[] args
)
{
try
{
World.Initialize().UseModule<NumericalModule>().UseModule<GraphicModule>().InitializeModule();
World.Initialize()
.UseModule<NumericalModule>()
.UseModule<GraphicModule>()
.InitializeModule();
// TestRender();
/**/
HybridLayerSegregatedFitAllocator hlsf;
unchecked {
hlsf = new((nuint)(64 * (ulong)10000 * 10000));
hlsf = new((nuint)(4 * (ulong)1024 * 1024 * 1024));
}
Matrix<double> m = Matrix<double>.Create(40, 40, MatrixLayout.DenseRectangle, hlsf);
MatrixCompute.Fill(m, 1.0f);
@@ -58,7 +63,7 @@ namespace StgSharp
Matrix<double> p = Matrix<double>.Create(40, 40, MatrixLayout.DenseRectangle, hlsf);
MatrixCompute.Fill(p, 0.0f);
/**/
/*
for (int j = 0; j < 20; j++)
{
for (int k = 0; k < 10; k++) {
@@ -70,10 +75,18 @@ namespace StgSharp
/**/
Console.WriteLine("===================================================");
MatrixCompute.Mul(n, m, p);
for (int i = 0; i < 20; i++)
/**/
for (int i = 0; i < 40; i++)
{
for (int j = 0; j < 10; j++) {
Console.Write($"{p[i, j]:0.0E+00}\t");
if (i % 4 == 0) {
Console.WriteLine();
}
for (int j = 0; j < 40; j++)
{
string extra = j % 4 == 3 ? " \t" : ",\t";
double value = p[i, j];
value = double.Abs(value) < 1e-6 ? 0 : value;
Console.Write($"{value:0E+0}{extra}");
}
Console.WriteLine();
}