|
From: | Michael Riedl |
Subject: | Re: [Gm2] Numerical Library : GM2 issue with multidimensional array parameter |
Date: | Mon, 26 Feb 2018 18:25:52 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux i686; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 |
Hallo Gaius, thanks for taking care. The modules using the feature can now be
compiled !!! Another 6 modules in the numerical library still crash the compiler - will come back to that later. I attached two files (one for 8 BYTE REAL - Eigen8.mod) and one for 12 BYTE LONGREAL (EigenLR.mod) as defined in GM2. In both cases you can change a constant "UseLoc". If this is true a variant of the procedure "Rotier" (procedure name RotierLoc) is used which is not dependent on handing over single vectors out of a matrix - then the calculation is working fine. If the other variant is used I get an error RTExceptions.mod:639:9:invalid address referenced in invalidloc Perhaps you find some time to have a look on that. Gruß / Regards Michael
PS: Just as an interesting point I also compared the timings of both
the REAL64 and REAL96 variant (see third attachment). The tasks is
to compute the eigensystem of a 256x256 matrix 100 times by a
classical jacobi routine. As expected in one of my former emails I see a huge time penalty
for the 12 BYTE reals (approx 1.8 times longer runtime if not
optimized, 2.7 times longer runtime if optimized with -O2).
Keeping in mind that using a linarised array for the input matrix
for the Jacobi diagonalisation routine is memory but not cache
optimal I expect an even more dramatic difference for the other
routines (e.g. for the SVD routines not yet part of the routines I
did sent you). Am 19.02.2018 um 19:05 schrieb Gaius
Mulley:
Michael Riedl <address@hidden> writes:Hallo Gaius, thanks for the update. Will recompile GM2 as soon as you think your are ready and start new tests. MichaelHi Michael, I believe I've fixed the multi-dimensional array and high bugs. I've checked them all into the gcc-6.4.0 branch of gm2. I will be checking them all onto the gcc-svn branch soon and will be producing a gm2 release as well (based on gcc-6.4.0) regards, Gaius |
Eigen_time.txt
Description: Text document
Eigen8.mod
Description: audio/mod
EigenLR.mod
Description: audio/mod
[Prev in Thread] | Current Thread | [Next in Thread] |