-
Notifications
You must be signed in to change notification settings - Fork 5
/
constants.py
57 lines (47 loc) · 1.41 KB
/
constants.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#
# Copyright (C) 2019 EEMBC(R). All Rights Reserved
#
# All EEMBC Benchmark Software are products of EEMBC and are provided under the
# terms of the EEMBC Benchmark License Agreements. The EEMBC Benchmark Software
# are proprietary intellectual properties of EEMBC and its Members and is
# protected under all applicable laws, including all applicable copyright laws.
#
# If you received this EEMBC Benchmark Software without having a currently
# effective EEMBC Benchmark License Agreement, you must discontinue use.
#
VERSION = "1.0.3"
# Note: developer errors are CRITICAL, user config errors are ERRORS
# Note: Since there are no structurally-enforced datatypes in Python, I'm
# using constants to refer to data members to prevent soft errors for things
# written by developers and users, but not EEMBC (on the todo list)
# Scoring modes
TOPN = 'topn'
MAP = 'map'
# Run modes
LATENCY = 'latency'
THROUGHPUT = 'throughput'
ACCURACY = 'accuracy'
# Parameters
BATCH = 'batch'
MODE = 'mode'
RUNITERATIONS = 'iterations'
HARDWARE = 'hardware'
PRECISION = 'precision'
# Concurrency is when the predict function is called more than once at a time
CONCURRENCY = 'concurrency'
# Precision types
FP32 = 'fp32'
FP16 = 'fp16'
INT8 = 'int8'
# Targets
CPU = 'cpu'
GPU = 'gpu'
FPGA = 'fpga'
NPU = 'npu'
VPU = 'myriad'
HDDL = 'hddl'
TPU = 'tpu'
# Units
FPS = 'fps'
# For computing latency and throughput
PERFORMANCE_PERCENTILE = 0.95