Skip to content

AIE-ML Programming & optimization give me a 2GB (over 12GB) RAM linux on vek280 #477

@GasparQ

Description

@GasparQ

Hello,

I am contacting you because I try to build & run the following tutorial on vek280: https://github.com/Xilinx/Vitis-Tutorials/tree/2025.1/AI_Engine_Development/AIE-ML/Design_Tutorials/01-AIE-ML-programming-and-optimization

The project compiles well but when I run it on the board, I only have 2GB of memory available on Linux.

Thus, I compared my boot image with the AMD-EDF prebuilt WIC image for vek280 provided here: https://www.xilinx.com/member/forms/download/xef.html?filename=edf-linux-disk-image-amd-cortexa72-common%20versal-vek280-sdt-seg.rootfs-07292043.wic.xz

And this image has 12GB of RAM so it seems that the AIE/PL/HOST process provided in the example is failing at something.

We can see in boot logs that in amd-edf image, there is only 300MB reserved, but on our image there is 10GB reserved.

AMD-EDF BOOT:
[ 0.137708] Memory: 11214824K/12582912K available (16960K kernel code, 1088K rwdata, 4976K rodata, 3136K init, 484K bss, 339448K reserved, 1024000K cma-reserved)

OUR BOOT:
[ 5.157516] Memory: 1271296K/12582912K available (16960K kernel code, 1088K rwdata, 4976K rodata, 3136K init, 484K bss, 10783192K reserved, 524288K cma-reserved)

The device tree seems to be involved in this

AMD-EDF BOOT:
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000000000000-0x00000000ffffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal [mem 0x0000000100000000-0x00000600ffffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x000000007fffffff]
[ 0.000000] node 0: [mem 0x0000000800000000-0x000000087fffffff]
[ 0.000000] node 0: [mem 0x0000050000000000-0x00000500ffffffff]
[ 0.000000] node 0: [mem 0x0000060000000000-0x00000600ffffffff]

[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x00000600ffffffff]
[ 0.000000] cma: Reserved 1000 MiB at 0x0000000039600000 on node -1

OUR BOOT:
[ 0.000000] OF: reserved mem: 0x0000000800000000..0x000000087fffffff (2097152 KiB) nomap non-reusable buffer@0
[ 0.000000] OF: reserved mem: 0x0000050000000000..0x00000501ffffffff (8388608 KiB) nomap non-reusable buffer@1

[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000000000000-0x00000000ffffffff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal [mem 0x0000000100000000-0x00000501ffffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x000000007fffffff]
[ 0.000000] node 0: [mem 0x0000000800000000-0x000000087fffffff]
[ 0.000000] node 0: [mem 0x0000050000000000-0x00000501ffffffff]

[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x00000501ffffffff]
[ 0.000000] cma: Reserved 512 MiB at 0x000000004be00000 on node -1

Would you have any idea of what should be modified in the tutorial so that tutorial correctly boots with 12GB of RAM ?

(This is the default behavior of the tutorial on our side)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions