13
votes
How much regularization to add to make SVD stable?
The singular value decomposition for a symmetric matrix $A=A^{T}$
is one and the same as its canonical eigendecomposition (i.e. with an orthonormal matrix-of-eigenvectors), while the
same thing for a ...
6
votes
Accepted
The difference between mkl_intel_lp64 vs mkl_gf_lp64 in a numerical reproducibility issue with Intel MKL
The various Fortran standards allow a lot of compiler dependent behaviour in terms of function binary interfaces when being called with "complicated" data types such as Fortran90 style arrays and ...
3
votes
Relation between IPC and number of cores? Which spec mention theis number?
IPS and IPC are generally specified "per core". That's because processor makers often vary how many cores of a particular kind they pack on the same processor, so it doesn't really make sense to ...
3
votes
Accepted
MKL/FFTW performance of batch 1-D FFTs
From the old document: Intel® Math Kernel Library FFT to DFTI Wrappers, A314775-001US:
All transforms require additional memory to store the transform coefficients. When performing multiple FFTs of ...
3
votes
Accepted
General understanding of Intel MKL, threads and MPI
Nothing stops you from decomposing the problem up yourself and feeding the relevant partitioned data into MKL sequentially, or even in parallel. It will work as long as you avoid data races, but you ...
3
votes
Accepted
Block-Tridiagonal Matrices with tridiagonal blocks
From my quick experiments in python, I find that a LU decomposition with the permutation strategy MMD_AT_PLUS_A¹ yields to an $\mathcal{O}(12n^{2.268})$ number of ...
2
votes
Which is the best subroutine available for solving sparse linear system of equations
A matrix of size 15M x 15M is likely too big for a (sparse) direct solver on a single machine -- it is going to take too much time and memory. If you wanted to use a direct solver, you could try ...
2
votes
Using two computers to run one parallelized program with intel fortran
Being a big believer in parallel computation (the chips are not getting any faster), the short answer is yes. You should look into MPI (Message Passing Interface), the defecto standard for passing ...
2
votes
An efficient way to convert between MKL and Armadillo types
Note that Armadillo's cx_double (which is used by cx_vec) is just an alias for ...
1
vote
Sparse Matrix Matrix multiplication using Intel MKL
https://software.intel.com/en-us/mkl-developer-reference-c-mkl-sparse-syrk
This routine is specifically designed for your problem. It will output the upper half of the resulting matrix, which is ...
1
vote
Accepted
How much regularization to add to make SVD stable?
Although the question has a great answer, here's
a rule of thumb for small singular values, with a plot.
If a singular value is nonzero but very small,
you should define its reciprocal to be ...
1
vote
ZGETRF and ZGETRS from MKL - zgetrf fails and still zgetrs works?
Summarizing the answer to the question.
zgetrf (LU factorization of a complex matrix $A$) returns info=i>0 if $U_{ii}=0$; ...
1
vote
Appropriate Lapack/MKL routines to efficiently compute C = A* inv(B)
Here is the Eigen example you requested. It follows the approach in Christian Clason's comment and also does the same computation using an explicit inverse for comparison.
...
1
vote
Total Flop count for LAPACK DPOSV
There is source code of this function available here: http://www.netlib.org/lapack/explore-html/dc/de9/group__double_p_osolve.html
As you can see by following the function calls in the code, it ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
intel-mkl × 28linear-algebra × 8
linear-solver × 6
performance × 6
blas × 5
sparse-matrix × 4
lapack × 3
mpi × 3
scalapack × 3
parallel-computing × 2
fortran × 2
petsc × 2
hpc × 2
svd × 2
multicore × 2
finite-difference × 1
python × 1
matrix × 1
numerics × 1
c++ × 1
eigenvalues × 1
stability × 1
software × 1
floating-point × 1
c × 1