hi,
when i deal data in my block,i want to scramble the positions symbol in
a frame,and at receiver-end descramble these symbols,get correct the
order,for this purpose,i need to compute the inverse of 64*64
matrix,and when i used the eigen library ,it works slowly wnen compare
with the deal data speed of gnuradio,anyone could give me some other
libraries or other methods to satify my need,
thanks ,
BZS
Hi BZS,
Eigen is a pretty good library. Other’s that might come to might is
using blas/lapack in fortran or armadillo. I wouldn’t expect too much
of a speedup when compared to Eigen though. For examples on how to use
fortran or armadillo with GNU Radio look at the gr-specest out of tree
module.
Cheers,
Moritz
Can we replace Eigen with VOLK in some extent?
NE
Понедельник, 17 марта 2014, 11:50 +01:00 от Moritz Fischer
[email protected]:
On Thu, Mar 20, 2014 at 7:15 AM, Moritz Fischer
[email protected] wrote:
Well you could implement your Matrix inversion using VOLK, of course.
But to my knowledge you’d have to write the necessary kernels yourself.Cheers,
Moritz
No, but it would be nice to have a kernel for that.
The caveat is that VOLK is really meant for and designed to work with
vectors, not matrices. So you’d have to adapt the concept to work with
the matrix as a long vector and provide the dimensions to the kernel.
Tom
Well you could implement your Matrix inversion using VOLK, of course.
But to my knowledge you’d have to write the necessary kernels yourself.
Cheers,
Moritz
I have had success using armadillo matrix inversions within GNURadio.
The
only thing you need to be careful of is that when you install the
library
you need to ensure that you install the hardware accelerated versions of
BLAS and LAPACK; I have seen this result in a 200 X slowdown. For a
64*64
matrix, armadillo will be able to keep up with your data fairly well.
On
my machine with an AMD A8 processor running Fedora 20, such an operation
would take less than 1 ms.
Michael B.