From cbc0542852e67cc482bcccd3e8c1c4986e5d9a6c Mon Sep 17 00:00:00 2001 From: Birte Kristina Friesel Date: Fri, 23 Aug 2024 10:52:55 +0200 Subject: Make STREAM Microbenchmark work with SDK 2024.1.0 For whatever reason, -flto causes a "Heap Full" error even in an otherwise empty program: * thread #1, name = 'DPUthread0', stop reason = fault 1 (Heap Full) * frame #0: 0x80000350 dpu_code`mem_alloc_nolock(size=64) at alloc.c:32:5 frame #1: 0x80000170 dpu_code`main_kernel1 [inlined] mem_alloc(size=64) at alloc.c:52:21 frame #2: 0x80000168 dpu_code`main_kernel1 at add.c:73 frame #3: 0x80000308 dpu_code`main at add.c:42:12 frame #4: 0x80000050 dpu_code`__bootstrap at crt0.c:36:5 I do not know why this is the case. --- Microbenchmarks/STREAM/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Microbenchmarks/STREAM/Makefile b/Microbenchmarks/STREAM/Makefile index ba3e8e1..7b01500 100644 --- a/Microbenchmarks/STREAM/Makefile +++ b/Microbenchmarks/STREAM/Makefile @@ -18,7 +18,7 @@ HOST_SOURCES = $(wildcard host/*.c) COMMON_INCLUDES = support COMMON_FLAGS = -Wall -Wextra -O2 -I${COMMON_INCLUDES} -DNR_DPUS=${NR_DPUS} -DNR_TASKLETS=${NR_TASKLETS} -DBL=${BL} -DT=${T} -D${OP} -D${MEM} -DUNROLL=${UNROLL} HOST_FLAGS = ${COMMON_FLAGS} -D_POSIX_C_SOURCE=200809L -std=c11 `dpu-pkg-config --cflags --libs dpu` -DWITH_ALLOC_OVERHEAD=${WITH_ALLOC_OVERHEAD} -DWITH_LOAD_OVERHEAD=${WITH_LOAD_OVERHEAD} -DWITH_FREE_OVERHEAD=${WITH_FREE_OVERHEAD} -DWITH_DPUINFO=${WITH_DPUINFO} -DSDK_SINGLETHREADED=${SDK_SINGLETHREADED} -D${TRANSFER} -DPU_FLAGS = ${COMMON_FLAGS} -flto +DPU_FLAGS = ${COMMON_FLAGS} QUIET = @ -- cgit v1.2.3