SER45 LAX memory

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 
244件の閲覧回数
OPSofiane
Contributor II

Hi community mbd

I reused an example of mul_complex_matrix to generate the code and the binary file. the example works well, but if the matrix size is modified with a higher value, the bonaire doesn't respond. what is the maximum size of a matrix accepted by a LAX? how to choose on matlab the type of memory (SRAM vs DDR)?

Best 

OPSofiane

0 件の賞賛
返信
1 解決策
198件の閲覧回数
paulvlase
NXP Employee
NXP Employee

Hello @OPSofiane ,

 

Glad to hear that you were able to run the example.

You are right, if you increase the size of the matrices the example will fail. That happens because we have limited memory, 256 KB, that we can access on the LAX accelerator. The maximum size of the matrices, of the operands, depends on the type and the number of the operations executed on the LAX accelerator, but the total space occupied by the matrices must fit in those 256 KB of memory.

If your algorithm allows you can execute the LAX graph only on a subset/chunk of your matrices. Another approach the Radar SDK supports, you can use DMA to transfer chunks and process them, but we don't support this in our toolbox. Would it help if you could do this in the toolbox, to transfer chunks of your matrices through DMA?

The generated code allocates buffers in SRAM only and there isn't any option to change to DDR. May I know why you need to use DDR memory?

 

Regards,

Paul

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
188件の閲覧回数
OPSofiane
Contributor II

Hello @paul 

Thank you for the response. In my application, I handle large matrices (around 100 Mo). This is why I wanted to allocate the memory in a DDR. If DMA can speed up data transfer, why not? is there an example of DMA in the S32R45?

Tahnk you in advance

Best regards,

OPSofiane

0 件の賞賛
返信
199件の閲覧回数
paulvlase
NXP Employee
NXP Employee

Hello @OPSofiane ,

 

Glad to hear that you were able to run the example.

You are right, if you increase the size of the matrices the example will fail. That happens because we have limited memory, 256 KB, that we can access on the LAX accelerator. The maximum size of the matrices, of the operands, depends on the type and the number of the operations executed on the LAX accelerator, but the total space occupied by the matrices must fit in those 256 KB of memory.

If your algorithm allows you can execute the LAX graph only on a subset/chunk of your matrices. Another approach the Radar SDK supports, you can use DMA to transfer chunks and process them, but we don't support this in our toolbox. Would it help if you could do this in the toolbox, to transfer chunks of your matrices through DMA?

The generated code allocates buffers in SRAM only and there isn't any option to change to DDR. May I know why you need to use DDR memory?

 

Regards,

Paul

0 件の賞賛
返信