Check the preview of 2nd version of this platform being developed by the open MLCommons taskforce on automation and reproducibility as a free, open-source and technology-agnostic on-prem platform.
program:image-classification-armnn-tflite-loadgen (v3.0.0)
Copyright: See copyright in the source repository
License: See license in the source repository
Creation date: 2019-10-08
Source: GitHub
cID: b0ac08fe1d3c2615:84e819ca2d19b0a8

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: ck-ml
  • Source: GitHub
  • Available command lines:
    • ck run program:image-classification-armnn-tflite-loadgen --cmd_key=default (META)
  • Support for host OS: any
  • Support for target OS: android, linux
  • Tags: image-classification,tflite,armnn,loadgen,lang-cpp
  • Template: Image Classification via ArmNN (with TFLite support) in C++
  • How to get the stable version via the client:
    pip install cbench
    cb download program:image-classification-armnn-tflite-loadgen --version=3.0.0 --all
    ck run program:image-classification-armnn-tflite-loadgen
  • How to get the development version:
    pip install ck
    ck pull repo:ck-ml
    ck run program:image-classification-armnn-tflite-loadgen

  • CLI and Python API: module:program
  • Dependencies    

    ReadMe  

    MLPerf Inference - Image Classification - ArmNN-TFLite with LoadGen

    Running this program is similar to running armnn-mlperf:program:image-classification-armnn-tflite as described in the ArmNN-MLPerf repo, and ck-tensorflow:program:image-classification-tflite as described in the MLPerf Inference repo.

    Detect LoadGen Config file

    $ ck detect soft --tags=config,loadgen,image-classification-armnn-tflite
    

    Run once

    firefly $ ck benchmark program:image-classification-armnn-tflite-loadgen \
    --speed --repetitions=1 --env.USE_NEON=1 \
    --env.CK_VERBOSE=1 \
    --env.CK_LOADGEN_SCENARIO=SingleStream \
    --env.CK_LOADGEN_MODE=PerformanceOnly \
    --env.CK_LOADGEN_DATASET_SIZE=1024 \
    --env.CK_LOADGEN_BUFFER_SIZE=1024 \
    --dep_add_tags.weights=tflite,resnet \
    --dep_add_tags.library=armnn,rel.19.08,tflite,neon \
    --dep_add_tags.compiler=gcc,v7 \
    --dep_add_tags.images=side.224,preprocessed \
    --dep_add_tags.loadgen-config-file=image-classification-armnn-tflite \
    --dep_add_tags.python=v3 \
    --skip_print_timers
    ...
    ------------------------------------------------------------
    |            LATENCIES (in nanoseconds and fps)            |
    ------------------------------------------------------------
    Number of queries run: 1024
    Min latency:                      389050347ns  (2.57036 fps)
    Median latency:                   390678334ns  (2.55965 fps)
    Average latency:                  390866753ns  (2.55842 fps)
    90 percentile latency:            392202776ns  (2.54970 fps)
    Max latency:                      409035981ns  (2.44477 fps)
    ------------------------------------------------------------
    
    firefly $ ck benchmark program:image-classification-armnn-tflite-loadgen \
    --speed --repetitions=1 --env.USE_OPENCL=1 \
    --env.CK_VERBOSE=1 \
    --env.CK_LOADGEN_SCENARIO=SingleStream \
    --env.CK_LOADGEN_MODE=PerformanceOnly \
    --env.CK_LOADGEN_DATASET_SIZE=1024 \
    --env.CK_LOADGEN_BUFFER_SIZE=1024 \
    --dep_add_tags.weights=tflite,resnet \
    --dep_add_tags.library=armnn,rel.19.08,tflite,opencl \
    --dep_add_tags.compiler=gcc,v7 \
    --dep_add_tags.images=side.224,preprocessed \
    --dep_add_tags.loadgen-config-file=image-classification-armnn-tflite \
    --dep_add_tags.python=v3 \
    --skip_print_timers
    ...
    ------------------------------------------------------------
    |            LATENCIES (in nanoseconds and fps)            |
    ------------------------------------------------------------
    Number of queries run: 1024
    Min latency:                      435802872ns  (2.29462 fps)
    Median latency:                   439844466ns  (2.27353 fps)
    Average latency:                  442231513ns  (2.26126 fps)
    90 percentile latency:            447810153ns  (2.23309 fps)
    Max latency:                      463122016ns  (2.15926 fps)
    ------------------------------------------------------------
    

    Explore different models

    See run.sh scripts we used to generate the MLPerf Inference v0.5 results for more details:

    $ ck list ck-mlperf:script:mlperf-inference-v0.5.*.image-classification
    mlperf-inference-v0.5.closed.image-classification
    mlperf-inference-v0.5.open.image-classification
    

    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!