minor updates

This commit is contained in:
Blaise Tine 2023-04-12 13:03:52 -04:00
parent d9ee6b10c8
commit b2f58aabd8
3 changed files with 116 additions and 82 deletions

View file

@ -3,15 +3,9 @@
# exit when any command fails
set -e
# clear runtime
make -C runtime clean
# clear blackbox cache
rm -f blackbox.*.cache
# ensure build
make -s
smoke()
{
echo "begin smoke tests..."
@ -107,8 +101,6 @@ raster()
{
echo "begin rasterizer tests..."
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=4 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=2 --warps=1 --threads=2 || true
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=4 -DL1_DISABLE -DSM_DISABLE -DNUM_RCACHES=2" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=4 --warps=1 --threads=2 || true
CONFIGS="-DEXT_RASTER_ENABLE" ./ci/blackbox.sh --driver=simx --app=raster --args="-ttriangle.cgltrace -rtriangle_ref_128.png" --perf=4
CONFIGS="-DEXT_RASTER_ENABLE" ./ci/blackbox.sh --driver=rtlsim --app=raster --args="-ttriangle.cgltrace -rtriangle_ref_128.png" --perf=4
CONFIGS="-DEXT_RASTER_ENABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=raster --args="-ttriangle.cgltrace -rtriangle_ref_128.png"
@ -117,12 +109,14 @@ CONFIGS="-DEXT_RASTER_ENABLE -DRASTER_TILE_LOGSIZE=4" ./ci/blackbox.sh --driver=
CONFIGS="-DEXT_RASTER_ENABLE -DRASTER_TILE_LOGSIZE=6" ./ci/blackbox.sh --driver=simx --app=raster --args="-k6 -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_RASTER_ENABLE -DRASTER_TILE_LOGSIZE=4" ./ci/blackbox.sh --driver=rtlsim --app=raster --args="-k4 -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_RASTER_ENABLE -DRASTER_TILE_LOGSIZE=6" ./ci/blackbox.sh --driver=rtlsim --app=raster --args="-k6 -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_NUM_SLICES=2 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png"
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=2 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=4 --warps=1 --threads=2
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=2 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=1 --warps=1 --threads=2
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=1 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=2 --warps=1 --threads=2
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=2 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=4 --warps=1 --threads=2
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=2" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --warps=1 --threads=2
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=4 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=2 --warps=1 --threads=2 || true
CONFIGS="-DEXT_GFX_ENABLE -DNUM_RASTER_UNITS=4 -DL1_DISABLE -DSM_DISABLE -DNUM_RCACHES=2" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tbox.cgltrace -rbox_ref_128.png" --cores=4 --warps=1 --threads=2 || true
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_NUM_SLICES=2 -DL1_DISABLE -DSM_DISABLE -DRCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tvase.cgltrace -rbox_ref_128.png --threads=2" || true
echo "rasterizer output tests done!"
}
@ -140,10 +134,10 @@ CONFIGS="-DEXT_GFX_ENABLE -DL1_DISABLE -DSM_DISABLE -DTCACHE_DISABLE -DRCACHE_DI
CONFIGS="-DEXT_GFX_ENABLE" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-ttriangle.cgltrace -rtriangle_ref_8.png -w8 -h8" --warps=1 --threads=2 --debug=3
CONFIGS="-DEXT_GFX_ENABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-ttriangle.cgltrace -rtriangle_ref_8.png -w8 -h8" --warps=1 --threads=2 --debug=3
CONFIGS="-DEXT_GFX_ENABLE -DL1_DISABLE -DSM_DISABLE -DTCACHE_DISABLE -DRCACHE_DISABLE -DOCACHE_DISABLE" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-tvase.cgltrace -rvase_ref_32.png -w32 -h32" --threads=1
CONFIGS="-DEXT_GFX_ENABLE -DL1_DISABLE -DSM_DISABLE -DTCACHE_DISABLE -DRCACHE_DISABLE -DOCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tvase.cgltrace -rvase_ref_32.png -w32 -h32" --threads=1 || true
CONFIGS="-DEXT_GFX_ENABLE -DIPDOM_STACK_SIZE=128" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-x -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_GFX_ENABLE" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-y -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_GFX_ENABLE" ./ci/blackbox.sh --driver=simx --app=draw3d --args="-z -ttriangle.cgltrace -rtriangle_ref_128.png"
CONFIGS="-DEXT_GFX_ENABLE -DL1_DISABLE -DSM_DISABLE -DTCACHE_DISABLE -DRCACHE_DISABLE -DOCACHE_DISABLE" ./ci/blackbox.sh --driver=rtlsim --app=draw3d --args="-tvase.cgltrace -rvase_ref_32.png -w32 -h32" --threads=2 || true
echo "graphics tests done!"
}

View file

@ -201,6 +201,8 @@ module VX_raster_unit #(
.NUM_LANES (OUTPUT_QUADS)
) raster_req_tmp_if[1]();
wire [NUM_SLICES-1:0] slice_busy_out;
// Generate all slices
for (genvar i = 0; i < NUM_SLICES; ++i) begin
wire slice_valid_in;
@ -212,7 +214,6 @@ module VX_raster_unit #(
wire slice_ready_in;
wire slice_valid_out;
wire slice_busy_out;
assign slice_valid_in = slice_arb_valid_out[i];
assign {slice_xloc_in, slice_yloc_in, slice_pid_in, slice_edges_in, slice_extents_in} = slice_arb_data_out[i];
@ -246,14 +247,14 @@ module VX_raster_unit #(
.valid_out (slice_valid_out),
.stamps_out (slice_raster_req_if[i].stamps),
.busy_out (slice_busy_out),
.busy_out (slice_busy_out[i]),
.ready_out (slice_raster_req_if[i].ready)
);
assign slice_raster_req_if[i].done = running
&& ~has_pending_inputs
&& ~slice_valid_in
&& ~slice_busy_out
&& ~(| slice_busy_out)
&& ~slice_valid_out;
assign slice_raster_req_if[i].valid = slice_valid_out

View file

@ -3,7 +3,7 @@
# exit when any command fails
set -e
TEST=raster
TEST=perf
WIDTH=256
HEIGHT=256
DRIVER=simx
@ -13,7 +13,7 @@ SCRIPT_DIR=$(dirname "$0")
VORTEX_HOME=${SCRIPT_DIR}/../..
LOG_DIR=${SCRIPT_DIR}
raster()
perf()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
@ -29,22 +29,6 @@ raster()
done
}
rastertile()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=(3 4 5 6 7)
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_TILE_LOGSIZE=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -k$mode -tcarnival.cgltrace -w${WIDTH} -h${HEIGHT}" >> $LOG_FILE
done
}
gpusw()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
@ -57,39 +41,23 @@ gpusw()
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --threads=1 --app=draw3d --args="-onull -tcarnival.cgltrace -w${WIDTH} -h${HEIGHT} ${mode}" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT} ${mode}" >> $LOG_FILE
done
}
rcache()
rtile()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=("" "-DRCACHE_DISABLE")
declare -a modes=(3 4 5 6 7)
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE $mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --threads=1 --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=4 >> $LOG_FILE
done
}
ocache()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=("" "-DOCACHE_DISABLE")
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE $mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --threads=1 --app=draw3d --args="-onull -tcarnival.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=5 >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_TILE_LOGSIZE=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -k$mode -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" >> $LOG_FILE
done
}
@ -105,7 +73,7 @@ rslice()
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_NUM_SLICES=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --threads=1 --app=draw3d --args="-onull -tvase.cgltrace -e -w${WIDTH} -h${HEIGHT}" --perf=4 >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DRASTER_NUM_SLICES=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=4 >> $LOG_FILE
done
}
@ -121,14 +89,78 @@ oslice()
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DNUM_ROP_UNITS=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --threads=1 --app=draw3d --args="-onull -tcarnival.cgltrace -e -w${WIDTH} -h${HEIGHT}" --perf=5 >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DNUM_ROP_UNITS=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=5 >> $LOG_FILE
done
}
tslice()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=(1 2 4)
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE -DNUM_TEX_UNITS=$mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=3 >> $LOG_FILE
done
}
rcache()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=("" "-DRCACHE_DISABLE")
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE $mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=4 >> $LOG_FILE
done
}
ocache()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=("" "-DOCACHE_DISABLE")
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE $mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=5 >> $LOG_FILE
done
}
tcache()
{
SUFFIX=${TEST}_${DRIVER}_${CORES}c_${WIDTH}x${HEIGHT}
LOG_FILE=${LOG_DIR}/${SUFFIX}.log
declare -a modes=("" "-DTCACHE_DISABLE")
echo > $LOG_FILE # clear log
for mode in "${modes[@]}"
do
echo -e "\n###############################################################################\n" >> $LOG_FILE
echo -e "$TEST mode=$mode" >> $LOG_FILE
CONFIGS="-DEXT_GFX_ENABLE $mode" ${VORTEX_HOME}/ci/blackbox.sh --driver=${DRIVER} --cores=${CORES} --app=draw3d --args="-onull -tvase.cgltrace -w${WIDTH} -h${HEIGHT}" --perf=3 >> $LOG_FILE
done
}
show_usage()
{
echo "Vortex Graphics Perf Test"
echo "Usage: [--driver=#n] [--cores=#n] [--width=#n] [--height=#n] [--test=raster|rastertile|gpusw|rcache|ocache|rslice|oslice] [--help]"
echo "Usage: [--driver=#n] [--cores=#n] [--width=#n] [--height=#n] [--test=perf|gpusw|rtile|rcache|ocache|tcache|rslice|oslice|tslice] [--help]"
}
for i in "$@"
@ -165,32 +197,23 @@ case $i in
esac
done
# clear blackbox cache
rm -f blackbox.*.cache
echo "begin $TEST tests"
case $TEST in
raster)
perf)
CORES=1
raster
perf
CORES=2
raster
perf
CORES=4
raster
perf
CORES=8
raster
perf
CORES=16
raster
;;
rastertile)
CORES=1
rastertile
CORES=2
rastertile
CORES=4
rastertile
CORES=8
rastertile
CORES=16
rastertile
perf
;;
gpusw)
CORES=1
@ -204,30 +227,38 @@ case $TEST in
CORES=16
gpusw
;;
rtile)
CORES=1
rtile
CORES=4
rtile
CORES=16
rtile
;;
rcache)
CORES=1
rcache
CORES=2
rcache
CORES=4
rcache
CORES=8
rcache
CORES=16
rcache
;;
ocache)
CORES=1
ocache
CORES=2
ocache
CORES=4
ocache
CORES=8
ocache
CORES=16
ocache
;;
tcache)
CORES=1
tcache
CORES=4
tcache
CORES=16
tcache
;;
rslice)
CORES=1
rslice
@ -237,13 +268,21 @@ case $TEST in
rslice
;;
oslice)
CORES=4
CORES=1
oslice
CORES=8
CORES=4
oslice
CORES=16
oslice
;;
tslice)
CORES=1
tslice
CORES=4
tslice
CORES=16
tslice
;;
*)
echo "invalid test: $TEST"
exit -1