Closed doonny closed 4 years ago
Could you check the CMA size?
cat /proc/meminfo
@imricksu, Thx for the reply, the info is as follow:
MemTotal: 1028284 kB
MemFree: 978588 kB
MemAvailable: 988752 kB
Buffers: 12656 kB
Cached: 15068 kB
SwapCached: 0 kB
Active: 27156 kB
Inactive: 8080 kB
Active(anon): 7576 kB
Inactive(anon): 108 kB
Active(file): 19580 kB
Inactive(file): 7972 kB
Unevictable: 0 kB
Mlocked: 0 kB
HighTotal: 262144 kB
HighFree: 237936 kB
LowTotal: 766140 kB
LowFree: 740652 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 84 kB
Writeback: 0 kB
AnonPages: 7520 kB
Mapped: 4512 kB
Shmem: 176 kB
KReclaimable: 2692 kB
Slab: 7444 kB
SReclaimable: 2692 kB
SUnreclaim: 4752 kB
KernelStack: 568 kB
PageTables: 292 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 514140 kB
Committed_AS: 24044 kB
VmallocTotal: 245760 kB
VmallocUsed: 468 kB
VmallocChunk: 0 kB
Percpu: 240 kB
CmaTotal: 16384 kB
CmaFree: 16096 kB
For reference, on zcu102, it is
CmaTotal: 524288 kB
CmaFree: 520812 kB
Yes, the CMA size is different. 16MB max CMA size may not be able to provide 8MB buffer. Please try to enlarge CMA by setting CMA size in bootargs.
There are a lot of ways to change CMA size. Here are some examples:
@imrickysu Hi, I have managed to build the petalinux flow. However, I could not find the CMA config option in the kernel config page. According to the forum posts, it is located on Device Drivers ---> Generic Driver options, however, I could not find this item here:
problem fixed !
I am testing the cl burst_rw example form the Vitis_Accel_example repo on zc706. The program could not allocate global buffer with size larger than 8Mbyte. For instance, when changing
to the size of 4096*1024, the program failes with the following error:
This exception code -6 generally means out of memoy. The same program works fine on zcu102 board.
I have also tried the the xbutil query command, and the bsp info are as follow:
Note that the "DDR size" is zero here, but on zcu102, it is 2GB.
There might be something wrong with the bsp that has restricted such smaller size of global buffer.