luv

Workshop wiki

z-fiber-benchmark-tests.lisp

luft/z-fiber-benchmark-tests.lisp

system luft/z-fiber-benchmark/test · 7 definitions · on GitHub

defpackage#:luft.z-fiber-benchmark.tests
:use#:cl#:rove
:local-nicknames
#:z#:luft.z-fiber-benchmark
in-package#:luft.z-fiber-benchmark.tests
deftestscalar-fibers-match-the-cell-oracle
dolist
pattern'
:solid:terrain:architecture:caves:checkerboard
let*
ok
equalpcellscalar
formatnil"~A surface masks"pattern
dotimes
y4
dotimes
x4
let
base
z::input-base
z::fiber-case-stridecase
1+x
1+y
ok
=
z::fiber-run-count-scan
z::fiber-case-occupancycase
base
z::fiber-run-count-bits
z::fiber-case-occupancycase
base
formatnil"~A runs at (~D,~D)"patternxy
deftestnative-simd-matches-scalar-fibers
let
families
okfamilies"A native SIMD family is available"
dolist
familyfamilies
dolist
pattern'
:solid:terrain:architecture:caves:checkerboard
let*
funcallcase
ok
equalpscalar
z::fiber-case-outputcase
formatnil"~A agrees for ~A"familypattern
deftestcamera-air-algorithms-find-the-same-boundary
dolist
pattern'
:solid:terrain:architecture:caves:checkerboard
let*
ok
equalpcellbits
formatnil"~A cell and bit-wave camera boundary"pattern
ok
equalpcell
z::fiber-case-outputcase
formatnil"~A cell and air-run camera boundary"pattern
deftestmaintained-atmosphere-chain-matches-rebuilds
let*
maintained-case
z::atmosphere-edit-case-casemaintained
rebuilt-case
z::atmosphere-edit-case-caserebuilt
dotimes
edit32
ok
equalp
z::fiber-case-occupancymaintained-case
z::fiber-case-occupancyrebuilt-case
formatnil"occupancy after surface edit ~D"edit
ok
equalp
z::fiber-case-outputmaintained-case
z::fiber-case-outputrebuilt-case
formatnil"atmosphere chain after surface edit ~D"edit
ok
=
z::fiber-case-solid-countmaintained-case
z::fiber-case-solid-countrebuilt-case
formatnil"solid count after surface edit ~D"edit
let
maintained-air
z::fiber-case-air-workspacemaintained-case
rebuilt-air
z::fiber-case-air-workspacerebuilt-case
ok
equalp
z::air-workspace-run-offsetsmaintained-air
z::air-workspace-run-offsetsrebuilt-air
formatnil"air-run offsets after surface edit ~D"edit
ok
equalp
z::air-workspace-run-startsmaintained-air
z::air-workspace-run-startsrebuilt-air
formatnil"air-run starts after surface edit ~D"edit
ok
equalp
z::air-workspace-run-endsmaintained-air
z::air-workspace-run-endsrebuilt-air
formatnil"air-run ends after surface edit ~D"edit
deftestfull-height-solid-and-checkerboard-have-expected-shape
let
solid
checkerboard
z::make-fiber-case4:checkerboard
ok
=32
z::output-face-count
z::fiber-case-outputsolid
ok
=16
z::fiber-case-total-runssolid
ok
=1
z::fiber-case-maximum-runssolid
ok
=
z::fiber-case-total-runscheckerboard
ok
=luft:+top-z+
z::fiber-case-maximum-runscheckerboard
ok
loopforindexfrom3below
length
z::fiber-case-occupancysolid
byz::+fiber-words+always
not
logbitp63
aref
z::fiber-case-occupancysolid
index
"Bit 255 remains the air sentinel"