Is it possible to improve performance of the Kron operator by making it a built in function rather than using m-file implementation?

15 visualizaciones (últimos 30 días)
I use the kron operator as well as row-wise and column-wise Kronecker operators extensively in my work and in packages I write in Matlab. Given the importance of these operators it would be nice to have intrinsic functions rather than m-files implementations. For years I have relied on MEX file versions that I wrote which can be hundreds of times faster than the m-file versions, especially for sparse matrices. I would like you to consider providing intrincis versions of these operators. I've attached my MEX file versions which you are welcome to use.

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 21 de Oct. de 2019
The functionality requested is currently unavailable in MATLAB. This has been forwarded to our Developers as an enhancement request.
  2 comentarios
Matt J
Matt J el 29 de Abr. de 2020
Fabricius Somogyi's comment moved here:
Unfortunately I cannot find the MEX files that you attached in this thread. Could you kindly re-attach them? I am having similar issues with kron() being too slow for my purposes. Thanks!
Matt J
Matt J el 18 de Ag. de 2020
amir sh's comment moved here:
is it possible for you to re-attach the MEX file?

Iniciar sesión para comentar.

Más respuestas (1)

Matt J
Matt J el 9 de En. de 2014
Editada: MathWorks Support Team el 19 de Abr. de 2021
I wouldn't expect an intrinsic implementation to improve much. Most of the computational intensity of KRON is in all the multiplication operations required and those are well-accelerated through calls to BSXFUN.
Also, there are many operations involving Kronecker product matrices that are more efficiently done without computing the product explicitly with KRON. See here for a tool that facilitates this,

Categorías

Más información sobre MATLAB Compiler en Help Center y File Exchange.

Productos


Versión

R2013a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by