开发者

Alternate method to kron

开发者 https://www.devze.com 2022-12-21 05:01 出处:网络
I\'m doing CDMA spreading in MATLAB. And I\'m having an Out of Memory error in MATLAB despite upgrading my RAM, preallocating arrays, etc.

I'm doing CDMA spreading in MATLAB. And I'm having an Out of Memory error in MATLAB despite upgrading my RAM, preallocating arrays, etc.

Is there an alternate method to kron (Kronecker tensor product) in MATLAB? Here is my code:

tempData = kron( Data, walsh); 
开发者_如何学运维

Data is a M by 1 matrix and walsh (spread code) is a 8 by 1 matrix.

My Data is comprises of real and imaginary parts, e.g.: 0.000 + 1.000i or 1.000 + 0.000i in double format.


This call to kron is not memory intensive. I know, your problem seems so trivial. However, you don't tell us what is M. For very large values of M, you are simply trying to create too large of an array to fit in memory. It is very easy to forget that your computer is not infinitely large or infinitely fast. We get spoiled when we see "giga" in front of everything.

If you absolutely must do this for that value of M, then you probably need the 64 bit version of MATLAB, AND more memory will always help once you do that.

Another option is to make Data single precision, if you can afford the loss in precision. This will at least give you an extra factor of 2. In order to provide the best help, we need to know the size of M.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号