请教两个问题:
背景:
我们参考香山github链接来编译SPEC06 elf,链接https://github.com/OpenXiangShan/CPU2006LiteWrapper
并制作切片,
使用链接中的编译选项:
make ARCH=riscv64
CROSS_COMPILE=riscv64-unknown-linux-gnu-
OPTIMIZE="-O3 -flto -march=rv64gcv_zvl128b_zba_zbb_zbc_zbs -ftree-vectorize -mabi=lp64d -mrvv-max-lmul=m4 -mrvv-vector-bits=zvl"
build-all -j nproc
没有问题,能够正常制作切片,且切片是VLEN=128的。
我们想尝试VLEN=256的情况,
问题1:
请问编译workload时,只将_zvl128b_改成_zvl256b_是否就可以了?
问题2:
在NEMU上制作SPEC06切片时,会报异常,因为NEMU默认是VLEN=128,无法运行VLEN=256的workload。那么怎么将NEMU的VLEN配置成256呢?目前没有发现配置选项。只能修改src/isa/riscv64/instr/rvv/vreg.h文件中的宏定义吗(或者src/isa/riscv64/local-include/vreg.h??)?除了改#define VLEN 128 还需要修改其他代码吗?
多谢解答~
请教两个问题:
背景:
我们参考香山github链接来编译SPEC06 elf,链接https://github.com/OpenXiangShan/CPU2006LiteWrapper
并制作切片,
使用链接中的编译选项:
make ARCH=riscv64
CROSS_COMPILE=riscv64-unknown-linux-gnu-
OPTIMIZE="-O3 -flto -march=rv64gcv_zvl128b_zba_zbb_zbc_zbs -ftree-vectorize -mabi=lp64d -mrvv-max-lmul=m4 -mrvv-vector-bits=zvl"
build-all -j
nproc没有问题,能够正常制作切片,且切片是VLEN=128的。
我们想尝试VLEN=256的情况,
问题1:
请问编译workload时,只将_zvl128b_改成_zvl256b_是否就可以了?
问题2:
在NEMU上制作SPEC06切片时,会报异常,因为NEMU默认是VLEN=128,无法运行VLEN=256的workload。那么怎么将NEMU的VLEN配置成256呢?目前没有发现配置选项。只能修改src/isa/riscv64/instr/rvv/vreg.h文件中的宏定义吗(或者src/isa/riscv64/local-include/vreg.h??)?除了改#define VLEN 128 还需要修改其他代码吗?
多谢解答~