In our CI, nnpackage test runs the scripts like this.
...
./infra/scripts/docker_build_nncc.sh
./infra/scripts/docker_collect_nnpkg_resources.sh
...
But, these scripts are outdated and need updating. Let's update nnpackage test script!
Related : #2068
nnpackage-test consists of a few stages.
./infra/scripts/docker_build_nncc.shnncc is built with default preset(20191215 as of now) using docker image nnfw/nnas. And then tar the built binary to nncc-package.tar.gz.nncc-package.tar.gz(compiler module executables)./infra/scripts/docker_collect_nnpkg_resources.shnncc is built one more time with pre-defined REQUIRED_UNITS. This build results in graphdef(.pb), input, golden data(.h5), info(.info) file. And then tar the results to test-resources.tar.gz.test-resources.tar.gz(test resources)execute ./infra/scripts/docker_build_cross_arm_runtime_release.sh. Runtime is built for nnpackage test.
output : test-suite.tar.gz
execute ./infra/scripts/test_make_nnpkg.sh. It generates nnpackage with compiler build's output.
output : nnpackage testsuite
execute ./infra/scripts/test_arm_nnpkg.sh. It tests to validate our nnpackage.
To generate nnpackage, tf2circle, info, input and golden data are needed.
tf2circle : It is deprecated. This can be replaced by tf2tfliteV2(or tflchef) + tflite2circle + circle2circle.luci-interpreter or tflite-interpreter(python).Winter is comming..
Can we close this or are there more things to do?
@seanshpark I have to update CI script so still in progress:)
For seamless new test landing, I have to implement some new scripts first.
docker_collect_nnpkg_resources.shIn this script, common-artifacts which generate nnpkg resources will be built.
nncc-tc-to-nnpkg-tc.shSince tf2nnpkg interface has been chagned, it should be revised.
tf2nnpkg default versionIf these changes are landed simultaneously, nnpackage test will not complain:)
http://npuci.mooo.com:8080/job/nnfw/job/master/job/push-nnpackage-test/1864/
Done:)
Most helpful comment
nnpackage-testconsists of a few stages.build stage
build compiler stage
./infra/scripts/docker_build_nncc.shIn this script,
nnccis built with default preset(20191215 as of now) using docker imagennfw/nnas. And then tar the built binary tonncc-package.tar.gz.output :
nncc-package.tar.gz(compiler module executables)./infra/scripts/docker_collect_nnpkg_resources.shnnccis built one more time with pre-definedREQUIRED_UNITS. This build results in graphdef(.pb), input, golden data(.h5), info(.info) file. And then tar the results totest-resources.tar.gz.output :
test-resources.tar.gz(test resources)build runtime stage
execute
./infra/scripts/docker_build_cross_arm_runtime_release.sh. Runtime is built for nnpackage test.output :
test-suite.tar.gzgenerate nnpackage
execute
./infra/scripts/test_make_nnpkg.sh. It generates nnpackage with compiler build's output.output : nnpackage testsuite
test run
execute
./infra/scripts/test_arm_nnpkg.sh. It tests to validate our nnpackage.Why is there an error in the new preset?
To generate nnpackage,
tf2circle, info, input and golden data are needed.tf2circle: It is deprecated. This can be replaced bytf2tfliteV2(ortflchef) +tflite2circle+circle2circle.luci-interpreterortflite-interpreter(python).Winter is comming..