Qualcomm TensorFlow Lite SDK Software User Guide
Nhoroondo yekudzokorora
Kudzokorora | Date | Tsanangudzo |
AA | Gunyana 2023 | Kusunungurwa kwekutanga |
AB | Gumiguru 2023 |
|
Nhanganyaya yeQualcomm TFLite SDK zvishandiso
Iyo Qualcomm TensorFlow Lite software yekuvandudza kit (Qualcomm TFLite SDK) maturusi anopa iyo TensorFlow Lite dhizaini ye-on-mudziyo artificial intelligence (AI) inferencing, iyo inogonesa vanogadzira maapplication kukudziridza kana kumhanyisa maapplication eAI.
Iri gwaro rinopa nhanho-ne-nhanho mirairo yekugadzira yakamira Qualcomm TFLite SDK uye kuseta nharaunda yekusimudzira. Izvi zvinogonesa iyo developer workflow, iyo inosanganisira:
- kumisikidza nharaunda yekuvaka uko mugadziri anogona kuunganidza iyo Qualcomm TFLite SDK
- kugadzira yakamira Qualcomm TFLite SDK zvikumbiro
Kuti uwane rutsigiro, onahttps://www.qualcomm.com/rutsigiro. Iyi inotevera nhamba inopa pfupiso yeQualcomm TFLite SDK mafambiro: ”
Mufananidzo 1-1 Qualcomm TFLite SDK mafambiro
Chishandiso chinoda chikuva SDK uye gadziriso file (JSON fomati) kugadzira iyo Qualcomm TFLite SDK zvigadzirwa.
Kuvaka yekupedzisira-ku-kuguma application uchishandisa multimedia, AI, uye komputa vision (CV) subsystems, ona Qualcomm Intelligent Multimedia SDK (QIM SDK) Quick Start Guide (80-50450-51).
Iyo tafura inoratidza Qualcomm TFLite SDK vhezheni mepu ine CodeLinaro kuburitswa tag:
Tafura 1-1 Kuburitsa ruzivo
Qualcomm TFLite SDK shanduro | CodeLinaro kuburitswa tag |
V1.0 | Qualcomm TFLITE.SDK.1.0.r1-00200-TFLITE.0 |
Tafura 1-2 Inotsigirwa neQualcomm TFLite SDK shanduro
Qualcomm TFLite SDK shanduro | Inotsigirwa software chigadzirwa | Inotsigirwa TFLite vhezheni |
V1.0 | QCS8550.LE.1.0 |
|
|
||
|
||
|
||
|
||
|
References
Tafura 1-3 Zvinyorwa zvinoenderana
Title | Number |
Qualcomm | |
00067.1 Release Note yeQCS8550.LE.1.0 | RNO-230830225415 |
Qualcomm Intelligent Multimedia SDK (QIM SDK) Quick Start Guide | 80-50450-51 |
Qualcomm Intelligent Multimedia SDK (QIM SDK) Reference | 80-50450-50 |
Zviwanikwa | |
https://source.android.com/docs/setup/start/initializing | – |
Tafura 1-4 Acronyms uye tsananguro
Acronym kana izwi | Tsanangudzo |
AI | Artificial intelligence |
BIOS | Basic input/output system |
CV | Computer kuona |
IPK | Itsy package file |
QIM SDK | Qualcomm Intelligent multimedia software yekuvandudza kit |
SDK | Software yekuvandudza kit |
TFLite | TensorFlow Lite |
XNN | Xth muvakidzani wepedyo |
Gadzira nzvimbo yekuvaka yeQualcomm TFLite SDK zvishandiso
Iyo Qualcomm TFLite SDK zvishandiso zvinoburitswa mune sosi fomu; saka, kumisa nharaunda yekuvaka kuti iunganidze inosungirwa asi imwe-nguva setup.
Prerequisites
- Ita shuwa kuti une sudoaccess kune Linux host muchina.
- Ita shuwa kuti iyo Linux host vhezheni ndeye Ubuntu 18.04 kana Ubuntu 20.04.
- Wedzera iyo yakanyanya mushandisi wachi uye yakanyanya mushandisi mamiriro pane iyo host system.
- Wedzera mitsara yekuraira inotevera ku/etc/sysctl.confand reboot the host: fs.inotify.max_user_instances=8192 fs.inotify.max_user_watches=542288
Isa mapeji anodiwa ekugamuchira
Iwo mapakeji ekugamuchira akaiswa paLinux host muchina.
Mhanya mirairo yekuisa mapakeji ekugamuchira: $ sudo apt kuisa -y jq $ sudo apt kuisa -y texinfo chrpath libxml-nyore-perl openjdk-8-jdkheadless
Kune Ubuntu 18.04 uye pamusoro:
$ sudo apt-tora kuisa git-core gnupg flex bison kuvaka-yakakosha zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5- dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxsltproutic xsltproutic
Kuti uwane rumwe ruzivo, ona https://source.android.com/docs/setup/start/initializing.
Gadzirisa docker nharaunda
Docker ipuratifomu inoshandiswa kuvaka, kusimudzira, kuyedza, uye kuendesa software. Kuunganidza iyo SDK, iyo docker inofanirwa kugadzirwa pane Linux host muchina.
Ita shuwa kuti CPU virtualization inogoneswa pane Linux host muchina. Kana isina kugoneswa, ita zvinotevera kuti igone kubva kune yekutanga yekuisa / kubuda system (BIOS) yekumisikidza marongero:
- Gonesa virtualization kubva BIOS:
a. Dzvanya F1 kana F2 kana sisitimu iri kubhowa kuti ipinde muBIOS. Iwindo reBIOS rinoratidzwa.
b. Chinja kune Advanced tab.
c. Muchikamu cheCPU Configuration, isa Virtualization Technology kuti Inogoneswa.
a. Dzvanya F12 kuchengetedza uye kubuda, uye wozotangazve system.
Kana matanho aya asingashande, tevera mirairo chaiyo kubva kune system provider kuti ugone kugonesa virtualization - Bvisa chero ekare zviitiko zve docker:
$ sudo apt bvisa docker-desktop
$ rm -r $HOME/.docker/desktop
$ sudo rm /usr/local/bin/com.docker.cli
$ sudo apt purge docker-desktop - Gadzira iyo docker iri kure repository:
$ sudo apt-tora yekuvandudza $ sudo apt-tora kuisa ca-zvitupa curl gnupg lsb-kuburitsa $ sudo mkdir -p / etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg - dearmor -o /etc/apt/keyrings/docker.gpg $ echo "deb [arch=$(dpkg -print-architecture) sign-by=/etc/apt/ keyrings/ docker.gpg] https:// download.docker.com/linux/ubuntu $ (lsb_release -cs) stable” | sudo tee /etc/apt/source.list.d/ docker.list > /dev/null - Isa docker injini:
$ sudo apt-tora yekuvandudza $ sudo apt-tora kuisa docker-ce docker-ce-cli - Wedzera mushandisi kune docker boka:
$ sudo groupadd docker $ sudo usermod -aG docker $USER - Reboot system.
Gadzira chikuva SDK
Iyo papuratifomu SDK chinhu chinosungirwa kuunganidza iyo Qualcomm TFLite SDK zvishandiso. Inopa zvese zvinodiwa papuratifomu zvinoenderana neiyo Qualcomm TFLite SDK.
Ita zvinotevera kugadzira chikuva SDK:
- Gadzira chivakwa chezvaunofarira software chigadzirwa.
Mirayiridzo yekuvaka QCS8550.LE.1.0kuburitswa inopihwa muzvinyorwa zvekuburitsa. Kuti uwane zvinyorwa zvekuburitsa, ona References.
Kana iyo mifananidzo yakambovakwa, ita nhanho yechipiri, uye wobva wagadzira yakachena kuvaka. - Mhanya unotevera kuraira kuvaka mushandisi nzvimbo mifananidzo uye chikuva SDK:
YeQCS8550.LE.1.0, wedzera chinongedzo chemuchina qti-tflite-delegate muMACHINE_FEATURES mu kalama.conf file uye gadzira nharaunda yekuvaka zvinoenderana nemirairo kubva kune zvinyorwa zvekuburitsa.
Mushure mekugadzira mushandisi nzvimbo mifananidzo kubva kuvaka, mhanyisa unotevera kuraira kugadzira iyo SDK yepuratifomu.
$ bitbake -fc populate_sdk qti-robotics-image
Vaka Qualcomm TFLite SDK maturusi - kuvandudza mafambiro
Iyo Qualcomm TFLite SDK maturusi ekufambisa inoda kuti mugadziri ape iyo gadziriso file nemanyorerwo anoshanda. Iyo mubatsiri shell zvinyorwa kubva ku tflite-zvishandiso purojekiti (iripo muQualcomm TFLite SDK sosi muti) inopa mubatsiri mabasa ekumisikidza iyo shell nharaunda, iyo inogona kushandiswa yeQualcomm TFLite SDK kufambiswa kwebasa.
Iye anovandudza anovaka mapurojekiti eQualcomm TFLite SDK mukati memudziyo uye anogadzira zvigadzirwa achishandisa zvishandiso zvinopihwa netflite-zvishandiso.
Mushure mekunge Qualcomm TFLite SDK mudziyo wavakwa, mugadziri anogona kubatanidza kune mudziyo uye oshandisa zvinoshandiswa mubatsiri mumudziyo wegomba nharaunda yekuenderera mberi.
- Pane gadziriro yekuisa iyo Qualcomm TFLite SDK artifacts kune Qualcomm mudziyo wakabatana neLinux host kuburikidza ne USB/adb.
- Kune zvakare gadziriro yekukopa iyo Qualcomm TFLite SDK zvigadzirwa kubva mumudziyo kuenda kune wakasiyana muchina wekugamuchira uko Qualcomm mudziyo wakabatana.
Iyi inotevera nhamba inonyora seti yezvishandiso zviripo mushure mekumisikidza mudziyo wekuvaka nharaunda uchishandisa mubatsiri magwaro ekuvaka iyo Qualcomm TFLite SDK.
Mufananidzo unoratidza kutevedzana kwekuita kwezvishandiso:
Mufananidzo 4-3 Kutevedzana kwezvishandiso pane host
Batanidza uye kuvaka Qualcomm TFLite SDK
Iyo Qualcomm TFLite SDK inounganidzwa kana iyo docker mufananidzo wagadzirwa. Kuwiriranisa uye kuvaka iyo Qualcomm TFLite SDK, ita zvinotevera:
- Gadzira dhairekitori pane iyo host file sisitimu yekuwiriranisa iyo Qualcomm TFLite SDK nzvimbo yekushandira. For
example: $mkdir $cd - Tora iyo Qualcomm TFLite SDK sosi kodhi kubva kuCodeLinaro:
$ repo init -u https://git.codelinaro.org/clo/le/sdktflite/tflite/ manifest.git -repo-branch=qc/stable -repo-url=git://git.quicinc.com/ tools/repo.git -m TFLITE.SDK.1.0.r1-00200-TFLITE.0.xml -b kusunungurwa && repo sync -qc -no-tags -j - Gadzira dhairekitori pane iyo host file system inogona kuiswa mu docker. For example: mkdir-p / Iri dhairekitori rinogona kugadzirwa chero paLinux host muchina, uye hazvinei nekuti iyo Qualcomm TFLite SDK chirongwa chakawiriraniswa kupi. Mushure mekunge mafambiro apera mukati memudziyo, iyo Qualcomm TFLite SDK zvigadzirwa zvinogona kuwanikwa pane dhairekitori rakagadzirwa mune ino nhanho.
- Rongedza iyo JSON kumisikidza file iripo mu /tflite-tools/ targets/le-tflite-tools-builder.json ine zvinotevera zvinyorwa:
"Mufananidzo": "tflite-tools-builder", "Device_OS": "le", "Additional_tag”: “”, “TFLite_Version”: “2.11.1”, “Nhume”: {“Hexagon_delegate”: “OFF”, “Gpu_delegate”: “ON”, “Xnnpack_delegate”: “ON” }, “TFLite_rsync_destination”: “ /”, “SDK_path”: “/build-qti-distro-fullstack-perf/tmpglibc/deploy/sdk>”, “SDK_shell_file”: “”, “Base_Dir_Location”: “” }
Kuti uwane rumwe ruzivo nezve zvinyorwa zvinotaurwa mujson kumisikidza file, ona Docker.md readme file pa /tflite-zvishandiso/.
CHERECHEDZA PaQCS8550, iyo Qualcomm® Hexagon™ DSP nhume haitsigirwe. - Tora iyo script yekumisikidza nharaunda:
$ cd /tflite-zvishandiso $ source ./scripts/host/docker_env_setup.sh - Vaka iyo Qualcomm TFLite SDK docker mufananidzo: $ tflite-tools-host-build-image ./targets/le-tflite-tools-builder.json Kana iyo kuvaka ikatadza, ona Troubleshoot docker setup. Mushure mekubudirira kupedzisa, iyo inotevera meseji inoratidzwa: "Mamiriro: Vaka chifananidzo chakapedzwa zvinobudirira!!" Kumhanya nhanho iyi kunovaka iyo Qualcomm TFLite SDK zvakare.
- Mhanya iyo Qualcomm TFLite SDK docker mudziyo. Izvi zvinotanga mudziyo ne tags yakapihwa mukugadziriswa kweJSON file. $tflite-tools-host-run-container ./targets/le-tflite-tools-builder.json
- Batanidza kune mudziyo wakatanga kubva padanho rekutanga.
$ docker batanidza
Iyo Qualcomm TFLite SDK inounganidzwa, uye zvigadzirwa zvakagadzirira kuendeswa kana kuenderera mberi zvinogona kuitwa.
inoshandiswa kugadzira iyo QIM SDK TFLite plug-in.
Batanidza mudziyo kuti utore uye utumire zvigadzirwa]
Mushure mekubatanidza, pane nzira mbiri dzekubatanidza mudziyo kune mugamuchiri uye kuendesa iyo
Qualcomm TFLite SDK zvigadzirwa.
- Chishandiso chakabatana kune yemuno Linux host:
Mugadziri anobatanidza chishandiso kunzvimbo yekushandira uye anoisa iyo Qualcomm TFLite SDK zvigadzirwa kubva mumudziyo zvakananga pane mudziyo (QCS8550). - Mudziyo wakabatana kune iri kure:
Mugadziri anobatanidza chishandiso kune iri kure yekushandira nzvimbo, uye ivo vanogona kushandisa iyo paki maneja yekuisa mirairo paWindows neLinux mapuratifomu kuisa iyo Qualcomm TFLite SDK zvigadzirwa kumudziyo (QCS8550)
Mufananidzo 4-4 Kubatanidza kwebhodhi bhodhi kune mugadziri uye kure kure workstation
Batanidza mudziyo kune workstation
Chishandiso chakabatana kune nzvimbo yekushandira uye mudziyo wekusimudzira unogona kuwana mudziyo pamusoro pe USB/adb.
Mufananidzo unoratidza stagiri mukutevedzana kweQualcomm TFLite SDK kufambiswa kwebasa:
- Mhanya iyo inotevera mirairo kuti uise iyo artifacts kune mudziyo:
$ tflite-zvishandiso-chigadzirwa-gadzirira
$ tflite-zvishandiso-mudziyo-deploy - Kuti ubvise zvigadzirwa, shandisa murairo unotevera:
$ tflite-zvishandiso-chishandiso-mapakeji-bvisa
Batanidza mudziyo kumuchina uri kure
Chishandiso ichi chakabatana nemuchina uri kure, uye Qualcomm TFLite SDK mudziyo haugone kuwana mudziyo pamusoro pe USB/ad b.
Mufananidzo unoratidza stagiri mukutevedzana kweQualcomm TFLite SDK kufambiswa kwebasa:
Mhanya iyo inotevera mirairo mutflite-zvishandiso mugaba kukopa zvigadzirwa kumuchina uri kure
zvinoenderana nemaneja wepakeji pane mudziyo:
$ tflite-zvishandiso-remote-sync-ipk-rel-pkg
CHERECHEDZA Ruzivo rwemuchina uri kure rwunopihwa muJSON kumisikidza file.
Isa zvigadzirwa zveWindows platform
Iyo Qualcomm TFLite SDK zvigadzirwa zvinogona kuiswa pachishandiso zvichibva pane inoshanda sisitimu yemuchina uri kure.
Kune Windows platform, ita zvinotevera:
PaPowerShell, shandisa script inotevera: PS C:
> adb mudzi PS C:> adb disable-verity PS C:> adb reboot PS C:> adb kumirira-kune-mudziyo PS C:> adb mudzi PS C:> adb remount PS C:> adb shell gomo -o remount, rw / PS C:> adb shell “mkdir -p /tmp” PS C:> adb push /tmp Kana pasuru iri ipk (yeQCS8550.LE.1.0), shandisa mirairo inotevera: PS C:> adb shell “ opkg -force-depends -force-reinstall -force-overwrite install /tmp/"
Isa zvigadzirwa zveLinux papuratifomu
Shandisa mirairo inotevera:
$ adb mudzi $ adb disable-verity $ adb reboot $ adb kumirira-ye-mudziyo $ adb mudzi $ adb remount $ adb shell gomo -o remount, rw / $ adb shell "mkdir -p / tmp" $ adb push /tmp Kana pasuru yacho ipk (yeQCS8550.LE.1.0): $ adb goko "opkg -force-depends -force-reinstall -force-overwrite install /tmp/"
Chenesa docker mufananidzo
Mushure mekupedza iyo yekuvandudza mafambiro, iyo docker nharaunda inofanirwa kucheneswa kuti isunungure chengetedzo pa diski. Kuchenesa docker kunobvisa midziyo isina kushandiswa nemifananidzo, nokudaro kusunungura nzvimbo ye disk.
Shandisa iyo inotevera mirairo kuchenesa iyo docker mufananidzo:
- Mhanya unotevera kuraira pane Linux workstation:
$ cd /tflite-zvishandiso - Misa mudziyo:
$ tflite-tools-host-stop-container ./targets/ le-tflite-tools-builder.json - Bvisa mudziyo:
$ tflite-tools-host-rm-container ./targets/ le-tflite-tools-builder.json - Bvisa iyo yekare docker mifananidzo:
$ tflite-zvishandiso-host-mifananidzo-kuchenesa
Troubleshoot docker setup
Kana iyo tflite-tools-host-build-image command ikadzosa Nospace yasara pameseji yemudziyo, wobva wafambisa dhairekitori redocker ku/local/mnt. Ita zvinotevera kugadzirisa iyo setup:
- Dzorera iyo docker iripo files:
$ tar -zcC /var/lib docker > /mnt/pd0/var_lib_docker-backup-$(date + %s).tar.gz - Misa docker:
$ service docker kumira - Tarisa kuti hapana docker process iri kushanda:
$ ps faux | grep docker - Tarisa iyo docker dhairekitori chimiro:
$ sudo ls /var/lib/docker/ - Fambisa iyo docker dhairekitori kune chikamu chitsva:
$ mv /var/lib/docker /local/mnt/docker - Gadzira symlink kune docker dhairekitori muchikamu chitsva:
$ ln -s /local/mnt/docker /var/lib/docker - Ita shuwa kuti iyo docker dhairekitori chimiro chinoramba chisina kuchinjika:
$ sudo ls /var/lib/docker/ - Kutanga docker:
$ service docker kutanga - Tangazve ese midziyo mushure mekufambisa docker dhairekitori.
Gadzira TFLite SDK neLinux workstation
Iyo TFLite SDK workflow inogona kugoneswa pasina midziyo uchishandisa iyo Linux workstation. Iyi nzira ndeimwe nzira yekushandisa midziyo.
Kuwiriranisa uye kuvaka iyo Qualcomm TFLite SDK, ita zvinotevera:
- Gadzira dhairekitori pane iyo host file sisitimu yekuwiriranisa iyo Qualcomm TFLite SDK nzvimbo yekushandira. For example:
$mkdir
$cd - Tora iyo Qualcomm TFLite SDK sosi kodhi kubva kuCodeLinaro:
$ repo init -u https://git.codelinaro.org/clo/le/sdktflite/tflite/ manifest.git -repo-branch=qc/stable -repo-url=git://git.quicinc.com/ tools/repo.git -m TFLITE.SDK.1.0.r1-00200-TFLITE.0.xml -b kusunungurwa && repo sync -qc -no-tags -j8 && repo sync -qc -no-tags -j8 - 3. Rongedza kugadzirisa kweJSON file aripo mu /tflite-tools/ targets/le-tflite-tools-builder.json ine zvinyorwa zvinotevera
"Mufananidzo": "tflite-tools-builder", "Device_OS": "le", "Additional_tag”: “”, “TFLite_Version”: “2.11.1”, “Nhume”: {“Hexagon_delegate”: “OFF”, “Gpu_delegate”: “ON”, “Xnnpack_delegate”: “ON” }, “TFLite_rsync_destination”: “ ”, “SDK_path”: “/build-qti-distro-fullstack-perf/tmpglibc/deploy/sdk>”, “SDK_shell_file”: “”, “Base_Dir_Location”: “”
Kuti uwane rumwe ruzivo nezve zvinyorwa zvinotaurwa mujson kumisikidza file, ona Docker.md readme file pa /tflite-zvishandiso/.
CHERECHEDZA Kune QCS8550, Hexagon DSP nhume haitsigirwe - Tora iyo script yekumisikidza nharaunda:
$ cd /tflite-zvishandiso
$ source ./scripts/host/host_env_setup.sh - Vaka iyo Qualcomm TFLite SDK.
$ tflite-zvishandiso-kugadzirisa zvinangwa/le-tflite-tools-builder.json - Mhanya iyo inotevera utility mirairo mune imwechete Linux shell kuti utore iyo TFLite SDK zvigadzirwa kubva
TFLite_rsync_destination.
$ tflite-tools-host-get-rel-package targets/le-tflite-tools-builder.json
$ tflite-tools-host-get-dev-package targets/le-tflite-tools-builder.json - Isa ma artifacts zvichibva pane yekushandisa system
- Kune iyo Windows chikuva, paPowerShell, shandisa inotevera script
PS C:> adb mudzi PS C:> adb disable-verity PS C:> adb reboot PS C:> adb kumirira-chishandiso PS C:> adb mudzi PS C:> adb remount PS C:> adb shell gomo - o remount, rw / PS C:> adb shell "mkdir -p / tmp" PS C:> adb push / tmp
Kana pasuru iri ipk (yeQCS8550.LE.1.0), shandisa mirairo inotevera:
PS C:> adb shell "opkg -force-depends -force-reinstall -forceoverwrite install /tmp/
Kune iyo Linux chikuva, shandisa inotevera script:
$ adb mudzi $ adb disable-verity $ adb reboot $ adb kumirira-ye-mudziyo $ adb mudzi $ adb remount $ adb shell gomo -o remount, rw / $ adb shell "mkdir -p / tmp" $ adb push /tmp Kana pasuru iri ipk (yeQCS8550.LE.1.0):
$ adb shell "opkg -force-depends -force-reinstall -force-overwrite install /tmp/"
- Kune iyo Windows chikuva, paPowerShell, shandisa inotevera script
Gadzira Qualcomm TFLite SDK zvigadzirwa zveQIM SDK kuvaka
Kuti ushandise zvigadzirwa zvakagadzirwa kugonesa iyo Qualcomm TFLite SDK GStreamer plug-in muQIM SDK, ita zvinotevera:
- Pedzisa maitiro muSync uye uvake Qualcomm TFLite SDK, wobva wamhanyisa murairo unotevera: $ tflite-tools-host-get-dev-tar-package ./targets/le-tflite-toolsbuilder.json
A tara file inogadzirwa. Iyo ine iyo Qualcomm TFLite SDK munzira yakapihwa pa "TFLite_rsync_destination" - Kugonesa iyo Qualcomm TFLite SDK GStreamer plug-in, shandisa iyo tar file senharo mukugadziriswa kweJSON file yeQIM SDK kuvaka.
Kuti uwane ruzivo rwekunyora QIM SDK, ona Qualcomm Intelligent Multimedia SDK (QIM SDK) Quick Start Guide (80-50450-51).
Vaka Qualcomm TFLite SDK zvishoma nezvishoma
Kana iwe uri kuvaka iyo Qualcomm TFLite SDK kekutanga, ona Vaka Qualcomm TFLite SDK maturusi - kuvandudza mafambiro. Iyo yakafanana nharaunda yekuvaka inogona kushandiswazve pakuwedzera kukura.
Zvishandiso zvemubatsiri (mukati memudziyo) zvinotaurwa mumufananidzo zvinowanikwa kune vanogadzira kuti vaunganidze zvakagadziridzwa zvikumbiro uye plug-ins.
Mufananidzo 5-1 Workflow mumudziyo
Mushure mekunge shanduko yekodhi yapedzwa mudhairekitori rekodhi, ita zvinotevera:
- Gadzira kodhi yakagadziridzwa:
$ tflite-zvishandiso-kuwedzera-kuvaka-kuisa - Package yakanyorwa kodhi:
$ tflite-zvishandiso-ipk-rel-pkg kana $ tflite-zvishandiso-deb-rel-pkg - Batanidza mapakeji ekuburitsa nemugamuchiri file system:
$ tflite-zvishandiso-remote-sync-ipk-rel-pkg
Or
$ tflite-zvishandiso-remote-sync-deb-rel-pkg - Gadzirira dev package:
$ tflite-zvishandiso-ipk-dev-pkg
Zvigadzirwa zvakaunganidzwa zvinowanikwa muTFLite_rsync_destination folda inotaurwa muJSON. file, iyo inogona kukopwa kune chero dhairekitori.
Shanda neQNN yekunze TFLite Delegate
A TFLite External Delegate inokutendera kuti umhanye mamodheru ako (chikamu kana akazara) pane mumwe muitisi uchishandisa maraibhurari anopihwa nemunhu akavimbika wechitatu seQNN neQualcomm. Iyi meshini inogona kukwirisa akasiyana-siyana pa-mudziyo accelerators akadai seGPU kana Hexagon Tensor processor (HTP) yekufungidzira. Izvi zvinopa vanogadzira nzira inoshanduka uye yakasarudzika kubva kune yakasarudzika TFLite kuti ikurumidze kufungidzira.
Zvinodiwa:
- Ita shuwa kuti unoshandisa Ubuntu workstation kubvisa QNN AI stack.
- Ita shuwa kuti iwe unoshandisa QNN vhezheni 2.14 kuve yakabatana neQualcomm TFLite SDK
Iyo Qualcomm TFLite SDK inogoneswa kuita inferences pane akati wandei QNN kumashure-kupera kuburikidza neTFLite yekunze Nhume yeQNN. Iyo TFLite modhi ine yakajairwa flatbuffer inomiririra inogona kumhanya paGPU neHTP.
Mushure mekunge Qualcomm TFLite SDK mapakeji akaiswa pachishandiso, ita zvinotevera kuisa maQNN maraibhurari pachishandiso.
- Dhawunirodha Qualcomm Package Maneja 3 yeUbuntu.
a. Dzvanyahttps://qpm.qualcomm.com/, uye tinya Zvishandiso.
b. Mupaneruboshwe, mumunda weZvishandiso Zvekutsvaga, nyora QPM. Kubva kuSystem OS runyorwa, sarudza Linux.
Mhedzisiro yekutsvaga inoratidza rondedzero yeQualcomm Package Mamaneja.
c. Sarudza Qualcomm Package Maneja 3 uye tora iyo Linux debian package. - Isa Qualcomm Package Manager 3 yeLinux. Shandisa murairo unotevera:
$ dpkg -i -kumanikidza-kupfuura / nzira/ku/
QualcommPackageManager3.3.0.83.1.Linux-x86.deb - Dhawunirodha iyo Qualcomm®
AI Injini Yakananga SDK pane Ubuntu workstation.
a. Dzvanya https://qpm.qualcomm.com/ uye tinya Zvishandiso.
b. Mupaneruboshwe, mumunda weZvishandiso Zvekutsvaga, nyora AI stack. Kubva kuSystem OS runyorwa, sarudza Linux.
A Rondedzero yekudonha-pasi ine akasiyana AI stack injini inoratidzwa.
c. Dzvanya Qualcomm® AI Injini Yakananga SDK uye dhawunirodha iyo Linux v2.14.0 package. - Isa Qualcomm® AI Injini Yakananga SDK pane Ubuntu workstation.
a. Shandisa rezinesi:
qpm-cli -license-activate qualcomm_ai_engine_direct
b Isa AI Injini Yakananga SDK:
$ qpm-cli -extract /path/to/ qualcomm_ai_engine_direct.2.14.0.230828.Linux-AnyCPU.qik - Sunda maraibhurari kune mudziyo kubva kuUbuntu workstation ine adb push.
$ cd /opt/qcom/aistack/qnn/2.14.0.230828 $ adb push ./lib/aarch64-oe-linux-gcc11.2/ libQnnDsp.so /usr/lib/ $ adb push ./lib/aarch64-oe- linux-gcc11.2/ libQnnDspV66Stub.so /usr/lib/ $ adb push ./lib/aarch64-oe-linux-gcc11.2/ libQnnGpu.so /usr/lib/ $ adb push ./lib/aarch64-oe- linux-gcc11.2/ libQnnHtpPrepare.so /usr/lib/ $ adb push ./lib/aarch64-oe-linux-gcc11.2/ libQnnHtp.so /usr/lib/ $ adb push ./lib/aarch64-oe- linux-gcc11.2/ libQnnHtpV68Stub.so /usr/lib/ $ adb push ./lib/aarch64-oe-linux-gcc11.2/ libQnnSaver.so /usr/lib/ $ adb push ./lib/aarch64-oe- linux-gcc11.2/ libQnnSystem.so /usr/lib/ $ adb push ./lib/aarch64-oe-linux-gcc11.2/ libQnnTFLiteDelegate.so /usr/lib/ $ adb push ./lib/hexagon-v65/ unsigned/ libQnnDspV65Skel.so /usr/lib/rfsa/adsp $ adb push ./lib/hexagon-v66/unsigned/ libQnnDspV66Skel.so /usr/lib/rfsa/adsp $ adb push ./lib/hexaunsigned/v68/ libQnnHtpV68Skel.so /usr/lib/rfsa/adsp $ adb push ./lib/hexagon-v69/unsigned/ libQnnHtpV69Skel.so /usr/lib/rfsa/adsp $ adb push ./lib/hexagon-v73/unsigned/ libQnnHtpV73Skel.so /usr/lib/rfsa/adsp $ adb push ./lib/hexagon-vXNUMX/unsigned/ libQnnHtpVXNUMXSkel. saka /usr/lib/rfsa/adsp
Edza Qualcomm TFLite SDK
Iyo Qualcomm TFLite SDK inopa imwe example maapplication, ayo anogona kushandiswa kusimbisa, bhenji, uye kuwana huchokwadi hwemhando iyo mugadziri anoda kuongorora.
Mushure mekunge Qualcomm TFLite SDK mapakeji aiswa pachishandiso, nguva yekumhanya inowanikwa pachishandiso chekumhanyisa aya ekare.ample applications.
Prerequisite
Gadzira madhairekitori anotevera pane mudziyo:
$ adb shell "mkdir / data / Models"
$ adb shell "mkdir / data / Lables"
$ adb shell "mkdir / data/profiling"
Label mufananidzo
Mufananidzo wezita chishandiso chinopihwa neQualcomm TFLite SDK inoratidza matorero aungaite yakambodzidziswa uye yakashandurwa TensorFlow Lite modhi uye woishandisa kuziva zvinhu mumifananidzo. Zvinodiwa:
Download sampmufananidzo uye mufananidzo:
Iwe unogona kushandisa chero inoenderana modhi, asi inotevera MobileNet v1 modhi inopa yakanaka ratidziro yemuenzaniso wakadzidziswa kuziva 1000 zvinhu zvakasiyana.
- Wana modhi
$ curl https://storage.googleapis.com/download.tensorflow.org/models/ mobilenet_v1_2018_02_22/mobilenet_v1_1.0_224.tgz | tar xzv -C /data $ mv /data/mobilenet_v1_1.0_224.tflite /data/Models/ - Wana mavara
$ curl https://storage.googleapis.com/download.tensorflow.org/models/ mobilenet_v1_1.0_224_frozen.tgz | tar xzv -C /data mobilenet_v1_1.0_224/ labels.txt
$ mv /data/mobilenet_v1_1.0_224/labels.txt /data/Labels/
Mushure mekubatanidza kune Qualcomm TFLite SDK docker mudziyo, mufananidzo unogona kuwanikwa pa:
"/mnt/tflite/src/tensorflow/tensorflow/lite/examples/label_image/ testdata/grace_hopper.bmp”
a. Sunda izvi file ku/data/Labels/
b. Mhanya murairo:
$ adb shell "label_image -l /data/Labels/labels.txt -i /data/Labels/ grace_hopper.bmp -m /data/Models/mobilenet_v1_1.0_224.tflite -c 10 -j 1 -p 1"
Benchmark
Iyo Qualcomm TFLite SDK inopa bhenji rekushandisa kuverenga kuita kweakasiyana nguva dzekumhanya.
Aya maturusi ebhenji parizvino anoyera uye kuverenga nhamba dzeanotevera akakosha ekuita metrics:
- Kutanga nguva
- Inference nguva yekudziya-up state
- Inference nguva ye steady state
- Memory kushandiswa panguva yekutanga
- Kushandiswa kwendangariro kwese
Prerequisites
Sunda mamodheru kuti aedzwe kubva kuTFLite Model Zoo (https://tfhub.dev/) ku/data/Mienzaniso/. Mhanyai zvinyorwa zvinotevera:
- XNN Pack
$ adb shell "benchmark_model -graph=/data/Models/ -gonesa_op_profiling=chokwadi -use_xnnpack=chokwadi -num_threads=4 -max_secs=300 -profiling_output_csv_file=/data/profiling/” - GPU Nhume
$ adb shell “benchmark_model –graph=/data/Models/ — enable_op_profiling=chokwadi –use_gpu=true –num_runs=100 –warmup_runs=10 — max_secs=300 –profiling_output_csv_file=/data/profiling/” - Nhume Yekunze
QNN External Delegate GPU:
Mhanya inference ine inoyangarara poindi modhi:
$ adb shell-command “benchmark_model –graph=/data/Models/ .tflite –external_delegate_path=libQnnTFLiteDelegate.so — external_delegate_options='backend_type:gpu;library_path:/usr/lib/ libQnnGpu/uskerdirdir_brary: /adsp'”
QNN External Delegate HTP:
Mhanya inference ne quant modhi:
$ adb shell-command “benchmark_model –graph=/data/Models/ .tflite –external_delegate_path=libQnnTFLiteDelegate.so — external_delegate_options='backend_type:htp;library_path:/usr/lib/ libQnnHtp_brarysard; /adsp'”
Accuracy tool
Iyo Qualcomm TFLite SDK inopa chaiyo chishandiso kuverenga iko kurongeka kwemamodheru ane akasiyana-siyana-nguva.
- Classification ine GPU nhume
Matanho ekurodha anodiwa files yekuyedza inogona kuwanikwa pa: "/mnt/tflite/src/tensorflow/tensorflow/lite/tools/evaluation/tasks/ imagenet_image_classificatio/README.md"
Iyo bhinari yekumhanyisa chishandiso ichi yatove chikamu cheSDK, saka mugadziri haafanire kuivaka zvakare.
$ adb shell "image_classify_run_eval - modhi_file=/data/Models/ -ground_truth_images_path=/data/ — ground_truth_labels=/data/ -model_output_labels=/ data/ -delegate=gpu” - Kuonekwa kwechinhu neXNN pack
$ adb shell "inf_diff_run_eval -model_file=/data/Mienzaniso/ -delegate=xnnpac
ZVINO ZVAKARERA
Kuwana kwako uye kushandisa gwaro iri, pamwe nechero zvirevo, referensi board files, kudhirowa, diagnostics uye rumwe ruzivo rwurimo (pamwe chete izvi "Zvinyorwa") iri pasi peyako (kusanganisira mubatanidzwa kana imwe sangano repamutemo raunomiririra, pamwe chete "Iwe" kana "Wako") kugamuchirwa kwemitemo nemamiriro (“Mitemo Yekushandisa”) seta pasi apa. Kana Iwe usingabvumirani neMitemo Yekushandisa iyi, haugone kushandisa Gwaro iri uye uchabva waparadza chero kopi yacho.
- Legal Notice.
Gwaro iri riri kuitwa kuti riwanikwe Kwauri chete nokuda kwekushandisa Kwako mukati nezvigadzirwa uye masevhisi anopihwa eQualcomm Technologies, Inc. (“Qualcomm Technologies”) neakabatana nawo akatsanangurwa muGwaro rino, uye haachashandiswe kune chero chimwe chinangwa. Gwaro iri harigone kuchinjwa, kugadziridzwa, kana kugadziridzwa chero nzira pasina Qualcomm Technologies yakambopihwa mvumo yakanyorwa. Kushandiswa zvisina mvumo kana kuburitswa kweizvi
Zvinyorwa kana ruzivo rwuri pano rwakarambidzwa zvachose, uye Unobvuma kubhadharira Qualcomm Technologies, vanobatana nayo uye vanopa marezinesi kune chero kukuvadzwa kana kurasikirwa kunoitwa neQualcomm Technologies, vanobatana nayo uye vanopa marezinesi kune chero kushandiswa kusingatenderwi kwakadaro kana kuburitswa, muChinyorwa ichi. chikamu. Qualcomm Technologies, vanobatana nayo uye vane marezinesi vanochengeta kodzero dzese uye varidzi mukati uye kune ichi Chinyorwa. Hapana rezinesi kune chero chiratidzo, patent, copyright, kodzero yekudzivirira basa remask kana chero kodzero yekuziva pfuma inopihwa kana kurehwa neChinyorwa ichi kana chero ruzivo rwakaburitswa pano, kusanganisira, asi rusina kuganhurirwa, chero rezinesi rekugadzira, kushandisa, kunze kwenyika kana tengesa chero chigadzirwa, sevhisi kana tekinoroji inopa inosanganisira chero ruzivo rwuri muChinyorwa ichi.
ZVINYORWA ZVINO ZVIRI KUPIWA “SEZVAZVIRI” PASINA WARRANTY YERUZHI ROSE, ZVINOTAURWA, ZVINOREVA, ZVIRI MUTEMO KANA ZVIMWE. ZVIKURU ZVINOGIDZWA NEMUTEMO, QUALCOMM TEKNOLOGIES, VAMWE VARI NAVO UYE VANOPA MAREZISENZI VANONYANYA ZVINONYARA ZVIRATIDZO ZVESE ZEZITA, ZVINHU, KUSIYANA, KUKONZERA CHINHU, CHINANGWA, CHINANGWA, CHINANGWA, CHINHU CHINHU ZVESE WARANTIS ZVINOMUKA PAKUSHANDISA TRADE KANA KUBVA KWEKOSI YEKUBATA KANA KUTI KUITA. Pamusoro pazvo, HAPANA QUALCOMM TEKNOLOGIES, KANA VAMWE VANOBATSIRWA NAYO KANA VANOTI VAREREZENSI, VACHAVA NEMABASA KWAKO KANA KUNHU CHECHITATU PAMARIPO, KURASIKA, KUSHANDISA, KANA ZVINHU ZVAKAPIWA KANA KUBATSIRA IZVI.
Mamwe makiti echigadzirwa, maturusi uye zvinhu zvinongedzerwa muChinyorwa ichi zvingada Iwe kuti ugamuchire mamwe mazwi nemamiriro usati wawana kana kushandisa izvo zvinhu.
Data yetekinoroji yatsanangurwa muGwaro rino inogona kunge iri pasi peUS nemimwe mitemo inoshanda yekudzora kunze. Kuendesa kunopesana neUS uye chero mumwe mutemo unoshanda unorambidzwa zvachose.
Hapana chiri muChinyorwa ichi chinopihwa kutengesa chero chezvikamu kana zvishandiso zvinorehwa pano.
Ichi Chinyorwa chinogona kuchinja pasina imwe ziviso. Muchiitiko chekukonana pakati peMitemo Yekushandisa iyi uye iyo Website Terms of Use on www.qualcomm.com kana iyo Qualcomm Privacy Policy inoratidzwa pa www.qualcomm.com, Mitemo Yekushandisa iyi inodzora. Muchiitiko chekupokana pakati peMitemo Yekushandisa iyi uye chero chibvumirano (chakanyorwa kana kudzvanya-kuburikidza) chinoitwa naIwe neQualcomm Technologies kana Qualcomm Technologies yakabatana maererano nekuwana Kwako uye kushandisa Gwaro iri, chimwe chibvumirano chinodzora. .
Iyi Mitemo Yekushandisa ichatongwa nekududzirwa nekutevedzerwa zvinoenderana nemitemo yeNyika yeCalifornia, tisingasanganisire UN Convention on International Sale of Goods, pasina kutarisisa misimboti yemakakatanwa. Chero kupokana, kuda kana gakava rinobva kana rine chekuita neMitemo Yekushandisa iyi, kana kutyorwa kana kuvimbika kwaro, richatongwa chete nedare rine masimba mudunhu reSan Diego, State of California, uye Iwe unobvuma simba romunhu pachake rematare akadaro nokuda kwechinangwa ichocho. - Trademark uye Product Attribution Statements.
Qualcomm chiratidzo chekutengeserana kana chiratidzo chakanyoreswa cheQualcomm Incorporated. Arm chiratidzo chakanyoreswa cheArm Limited (kana vatsigiri vayo) muUS uye/kana kumwewo. Izwi reBluetooth® chiratidzo chekutengeserana chakanyoreswa chiri cheBluetooth SIG, Inc. Zvimwe zvigadzirwa nemazita emabhureki anotaurwa muGwaro rino anogona kunge ari maredhisheni kana marejisheni akanyoreswa evaridzi vazvo.
Snapdragon neQualcomm branded zvigadzirwa zvinorehwa muGwaro rino zvigadzirwa zveQualcomm Technologies, Inc. uye/kana vatsigiri vayo. Qualcomm patented tekinoroji inopihwa rezinesi neQualcomm Incorporated.
Zvinyorwa / Zvishandiso
![]() |
Qualcomm TensorFlow Lite SDK Software [pdf] Bhuku reMushandisi TensorFlow Lite SDK Software, Lite SDK Software, SDK Software, Software |