romeric / Fastor

A lightweight high performance tensor algebra framework for modern C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Can't construct tensor, Tensor<double, 32, 256, 256>

soleil0-0 opened this issue · comments

Can't use Tensor<double, 32, 256, 256>, I got Process finished with exit code -1073741571 (0xC00000FD).

If I decrease the last number, less than or equal to 31 is ok. (Tensor<double, 32, 256, 31>)

Hey!

Might it be related to the amount of memory your computer has?

The tensor you're trying to create is 32*256*256 numbers, which is exactly 16 GB in size (assuming sizeof(double) = 8 byte).
Whereas the least tensor that you have problems with is 32*256*32 double-precision numbers, which is exactly 2 GB in size.

So, when you are trying to use less than 2 GBs it works. How much RAM does you computer have?

The tensor you're trying to create is 32256256 numbers, which is exactly 16 GB in size

I guess you meant MB ;)

The tensor you're trying to create is 32_256_256 numbers, which is exactly 16 GB in size

I guess you meant MB ;)

OH GOD..
I forgot the last division by 1024 xD
Forget it please)

But the strange integer-number pattern is still there xD

commented

Fastor tensors are created on the stack and not the heap as they are all static arrays. Computers stack limit is mainly 2MB.

If you want those big tensors than I'm afraid Fastor is not designed for that.

If you really want to this see other related issues #59 #26.