We have joined forces with OctoML.ai and MLCommons to develop the 2nd generation of the open-source CK technology!
program:image-classification-armnn-tflite (v1.0.0)
Copyright: See COPYRIGHT.txt for copyright details
License: See LICENSE.txt for licensing details
Creation date: 2019-02-14
Source: GitHub
cID: b0ac08fe1d3c2615:f58827594e4d8144

Don't hesitate to get in touch if you encounter any issues or would like to discuss this community project!
Please report if this CK component works: 1  or fails: 0 
Sign up to be notified when artifacts are shared or updated!

Description  

This portable workflow is our attempt to provide a common CLI with Python JSON API and a JSON meta description to automatically detect or install required components (models, data sets, libraries, frameworks, tools), and then build, run, validate, benchmark and auto-tune the associated method (program) across diverse models, datasets, compilers, platforms and environments. Our on-going project is to make the onboarding process as simple as possible via this platform. Please check this CK white paper and don't hesitate to contact us if you have suggestions or feedback!
  • Automation framework: CK
  • Development repository: armnn-mlperf
  • Source: GitHub
  • Available command lines:
    • ck run program:image-classification-armnn-tflite --cmd_key=default (META)
  • Support for host OS: any
  • Support for target OS: android, linux
  • Tags: image-classification,tflite,armnn,lang-cpp
  • Template: Image Classification via ArmNN (with TFLite support)
  • How to get the stable version via the client:
    pip install cbench
    cb download program:image-classification-armnn-tflite --version=1.0.0 --all
    ck run program:image-classification-armnn-tflite
  • How to get the development version:
    pip install ck
    ck pull repo --url=https://github.com/arm-software/armnn-mlperf
    ck run program:image-classification-armnn-tflite

  • CLI and Python API: module:program
  • Dependencies    

    ReadMe  

    ArmNN-TFLite image classification program

    Compile with a particular backend

    Reference

    $ ck compile program:image-classification-armnn-tflite
    

    Neon

    $ ck compile program:image-classification-armnn-tflite --env.USE_NEON
    

    OpenCL

    $ ck compile program:image-classification-armnn-tflite --env.USE_OPENCL
    

    Neon and OpenCL

    $ ck compile program:image-classification-armnn-tflite --env.USE_NEON --env.USE_OPENCL
    

    Run

    NB: Must use the same backend options as for compilation.

    Neon

    $ ck run program:image-classification-armnn-tflite \
    --env.CK_BATCH_COUNT=5 \
    --env.USE_NEON
    

    where: - CK_BATCH_COUNT - the number of batches to evaluate (1 by default). - USE_NEON - enable CPU acceleration (false by default). - USE_OPENCL - enable GPU acceleration (false by default).

    Benchmark

    NB: Similar instructions are used to benchmark program:image-classification-tflite.

    Benchmark the performance

    Neon

    $ ck benchmark program:image-classification-armnn-tflite --env.USE_NEON=1 \
    --repetitions=10 --env.CK_BATCH_SIZE=1 --env.CK_BATCH_COUNT=1 \
    --record --record_repo=local --record_uoa=mlperf-mobilenet-v1-1.00-224-armnn-tflite-performance-neon \
    --tags=mlperf,image-classification,mobilenet-v1-1.0-224,armnn-tflite,performance,neon \
    --skip_print_timers --skip_stat_analysis --process_multi_keys
    

    Benchmark the accuracy

    Neon

    $ ck benchmark program:image-classification-armnn-tflite --env.USE_NEON=1 \
    --repetitions=1 --env.CK_BATCH_SIZE=1 --env.CK_BATCH_COUNT=500 \
    --record --record_repo=local --record_uoa=mlperf-mobilenet-v1-1.00-224-armnn-tflite-accuracy-neon \
    --tags=mlperf,image-classification,mobilenet-v1-1.0-224,armnn-tflite,accuracy,neon \
    --skip_print_timers --skip_stat_analysis --process_multi_keys
    

    Versions  

    Files  

    Comments  

    Please log in to add your comments!
    If you notice any inapropriate content that should not be here, please report us as soon as possible and we will try to remove it within 48 hours!