diff --git a/Jenkinsfile b/Jenkinsfile index 025b5f2d..f9694e4d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -60,26 +60,45 @@ pipeline { stage('test simulation') { steps { - parallel noop: { - dir('examples/noop'){ - sh '../../reco-jarvice/reco-jarvice test test-noop' - } - }, - addition: { - dir('examples/addition'){ - sh '../../reco-jarvice/reco-jarvice test test-addition' - } - }, - histogram: { + parallel histogram: { dir('examples/histogram'){ sh '../../reco-jarvice/reco-jarvice test test-histogram' } - }, - memcopy: { - dir('examples/memcopy'){ - sh '../../reco-jarvice/reco-jarvice test test-memcopy' + } +// addition: { +// dir('examples/addition'){ +// sh '../../reco-jarvice/reco-jarvice test test-addition' +// } +// } +// memcopy: { +// dir('examples/memcopy'){ +// sh '../../reco-jarvice/reco-jarvice test test-memcopy' +// } +// } + } + } + + + stage('test hw builds') { + when { + expression { env.BRANCH_NAME == "PR-43" } + } + steps { + parallel histogram: { + dir('examples/histogram'){ + sh 'NUMBER=$(../../reco-jarvice/reco-jarvice build) && ../../reco-jarvice/reco-jarvice run $NUMBER test-histogram' } } +// addition: { +// dir('examples/addition'){ +// sh 'NUMBER=$(../../reco-jarvice/reco-jarvice build) && ../../reco-jarvice/reco-jarvice run $NUMBER test-addition' +// } +// } +// memcopy: { +// dir('examples/memcopy'){ +// sh 'NUMBER=$(../../reco-jarvice/reco-jarvice build) && ../../reco-jarvice/reco-jarvice run $NUMBER test-memcopy' +// } +// } } } diff --git a/examples/histogram/cmd/test-histogram/main.go b/examples/histogram/cmd/test-histogram/main.go index 846ebeec..1d1fb615 100644 --- a/examples/histogram/cmd/test-histogram/main.go +++ b/examples/histogram/cmd/test-histogram/main.go @@ -3,6 +3,7 @@ package main import ( "bytes" "encoding/binary" + "fmt" "log" "reflect" "xcl" @@ -54,4 +55,9 @@ func main() { if !reflect.DeepEqual(expected, ret) { log.Fatalf("%v != %v\n", ret, expected) } + + for i, val := range ret { + fmt.Printf("%d: %d\n", i<<(32-9), val) + } + } diff --git a/examples/memcopy/cmd/test-memcopy/main.go b/examples/memcopy/cmd/test-memcopy/main.go index 02db464d..856ab806 100644 --- a/examples/memcopy/cmd/test-memcopy/main.go +++ b/examples/memcopy/cmd/test-memcopy/main.go @@ -50,7 +50,11 @@ func main() { log.Fatal("binary.Read failed:", err) } - return reflect.DeepEqual(ret, input) + if !reflect.DeepEqual(ret, input) { + log.Printf("%v != %v", ret, input) + return false + } + return true } if err := quick.Check(memcpy, &conf); err != nil { diff --git a/go-teak/src/sdaccel/memory/memory.go b/go-teak/src/sdaccel/memory/memory.go index 72355878..779361ce 100644 --- a/go-teak/src/sdaccel/memory/memory.go +++ b/go-teak/src/sdaccel/memory/memory.go @@ -97,8 +97,10 @@ func Write( go func() { memoryWriteAddr <- Addr{ - Addr: address, - Size: [3]bool{false, true, false}, + Addr: address, + Size: [3]bool{false, true, false}, + Cache: [4]bool{false, false, true, true}, + Burst: [2]bool{false, true}, } }() @@ -120,8 +122,10 @@ func Read( go func() { memoryReadAddr <- Addr{ - Addr: address, - Size: [3]bool{false, true, false}, + Addr: address, + Size: [3]bool{false, true, false}, + Cache: [4]bool{false, false, true, true}, + Burst: [2]bool{false, true}, } }() diff --git a/go-teak/src/sdaccel/scripts/sda_kernel_packaging.tcl b/go-teak/src/sdaccel/scripts/sda_kernel_packaging.tcl index 130825d4..a63db10a 100644 --- a/go-teak/src/sdaccel/scripts/sda_kernel_packaging.tcl +++ b/go-teak/src/sdaccel/scripts/sda_kernel_packaging.tcl @@ -35,7 +35,7 @@ puts $fileId " workGroupSize=\"1\">" puts $fileId " " puts $fileId " " @@ -57,6 +57,7 @@ if {0 != [file exists $argsFileName]} { close $argsFileId } puts $fileId " " +puts $fileId " " puts $fileId "" puts $fileId "" close $fileId diff --git a/reco-jarvice/batch.json b/reco-jarvice/batch.json index d3d01b93..5417be3b 100644 --- a/reco-jarvice/batch.json +++ b/reco-jarvice/batch.json @@ -7,6 +7,7 @@ }, "application": { "geometry": "1584x690", + "walltime": "2:00:00", "staging": false, "command": "gui", "parameters": { diff --git a/reco-jarvice/deploy.json b/reco-jarvice/deploy.json index 30255c86..db5b7283 100644 --- a/reco-jarvice/deploy.json +++ b/reco-jarvice/deploy.json @@ -9,6 +9,7 @@ "geometry": "2542x1228", "staging": false, "command": "batch", + "walltime": "2:00:00", "parameters": { "executable": "/job/e5d15fcc-d829-11e6-bca2-843a4b0da254/hello", "args": "", diff --git a/reco-jarvice/reco-jarvice b/reco-jarvice/reco-jarvice index 5bf12aeb..ad953870 100755 --- a/reco-jarvice/reco-jarvice +++ b/reco-jarvice/reco-jarvice @@ -141,7 +141,7 @@ function wait_for { NUMBER="$1" jarvice_cli wait_for -number "$NUMBER" > /dev/null STATUS=$(jarvice_cli status -number "$NUMBER" | jq -r ".[\"$NUMBER\"].job_status") - jarvice_cli output -number "$NUMBER" -lines 0 + jarvice_cli output -number "$NUMBER" -lines 0 1>&2 if [ "$STATUS" == "COMPLETED WITH ERROR" ] then exit 1; diff --git a/sdaccel-builder.mk b/sdaccel-builder.mk index 3955aab9..7867a157 100644 --- a/sdaccel-builder.mk +++ b/sdaccel-builder.mk @@ -29,7 +29,7 @@ ${XCLBIN_DIR}: mkdir -p "${XCLBIN_DIR}" ${XCLBIN_DIR}/${KERNEL_NAME}.${TARGET}.${DEVICE}.xclbin: ${BUILD_DIR}/${XO_NAME} ${XCLBIN_DIR} - xocc -j8 -O3 -t "${TARGET}" --xdevice ${DEVICE_FULL} -l $< -o $@ + xocc -j8 -O3 -t "${TARGET}" --xdevice ${DEVICE_FULL} -l $< -o $@ -r estimate ${DIST_DIR}/emconfig.json: ${DIST_DIR} cd ${DIST_DIR} && XCL_EMULATION_MODE=${TARGET} emconfigutil --xdevice ${DEVICE_FULL} --nd 1