2 - Fix memcpy bug of getNPUmodel_metadata
3 - Add documents for FPGA testing guide
4 - Add unittests to increase function coverage
5 - Drop Ubuntu 16.04 (Xenial) support
8 - Complete the dummy module of VD NPU manager
9 - Add libnpuhost APIs for user convenience
10 - Add some unittests to cover RFP checklists
14 - Add new profile API, getNPU_profile_opt()
15 - Add the opcode of each vISA profile layer
16 - Fix minor svace issues
17 - Use TRIV v2.3.5 test models
20 - Implement the prototype of VD NPU Manager (dummy)
21 - Provide a CUSE-based virtual device node (trinity-cuse)
22 - Distinguish debian and emulated envionment
23 - Apply clang-format for the whole C++ source codes
24 - Add a profile data path to the result of getNPU_profile()
27 - Add start/end cycles of each profiling layer
28 - Support NPU emulation mode in Tizen env.
31 - Increase the maximum length of profiling layer name
32 - Update the testdata path of unittests (v2.3.4)
35 - Support profiling APIs for requests with any priority
36 - Add an apptest program to test the task preemption
37 - Fix minor bugs on a few unittest programs
40 - Support the DSP profiling for MDK
41 - Increase the overall code coverage
42 - Revise the debugging feature
45 - Update npubinfmt.h to store extra model info
46 - Support per-layer profiling for MDK
47 - Provide hotdoc-generated documents
50 - Support 2-TOPS TRIV2 as the default NPU
51 - Support TRIV 2.3.x architecture
52 - Make TRIV1 and TRIA devices deprecated
55 - Fix tensor size calculation using dynamic data granularity
56 - Increase the code coverage for new APIs
59 - Support profiling APIs in FastModel/FPGA env.
60 - Fix some package dependency issues
63 - Implement profiling APIs with the libmrpsim support
64 - Fix minor bugs mostly related to NPU emulation
67 - Revise NPU driver APIs to use Trinity API level 2
68 - Extend trinity-smi to monitor the status of apps and their tasks
69 - Seperate libnpuhost codes from core handler codes
72 - Support 2-TOPS NPU devices for emulation with different command files
73 - Add the command line utility (trinity-smi) for monitoring trinity devices
74 - Support the Docker envionment (xenial, bionic) for npu-engine users
77 - Revise the utility for trinity-testing applications
78 - Replace emulation library from libnpu-engine-emul to libmrpsim
79 - Resolve minor issues from static analyzers (i.e., svace, coverity)
82 - Fix minor bugs related to layout conversion
85 - Add a prototype of profiling interface as libnpuhost APIs
86 - Add some apptests to check a multi-tasking capability
87 - Skip to install dummy (or uncompatible) apptests in non-emulated env.
88 - Fix minor bugs related to model unregistration
91 - Fix external segment handling bugs
92 - Add npu-engine-utils package
93 - Support TRIV2's data manipulation (layout conversion)
96 - Resolve issues reported by static analyzer (svace/coverity)
97 - Add driver-assisted memory copy to avoid FPGA memcpy bug
98 - Prepare the code release
101 - Revise the user APIs for HW-recurring tasks
102 - Sync with the kernel driver's changed ioctl definition
103 - Add testcases for external hwmem and HW-recurring tasks
106 - Fix tensor size calculations on TRIV2 layout
107 - Add some testcases to run infernces using an async thread
110 - Add ioctl() to get the number of requests for trinity devices
111 - Add ioctl() to stop all requests for trinity devices
112 - Support log verbose mode for debugging
113 - Version sync with npu-engine-emul
116 - Fix minor bugs (e.g., weight offset setting and data size calc)
117 - Add user-level APIs to get status (e.g., memory/device status)
118 - Support memory status ioctl for trinity devices
119 - Support the stop feature to terminate submitted requests
122 - Fully support the TRIV2 device and kernel driver
123 - Add missing device functions (e.g., unsetModel)
124 - Resolve minor bugs and svace issues
127 - Revise the whole source codes (C++ porting/refactoring)
128 - Increase the code coverage (>= 85%)
129 - Support a segment table for TRIV2 inferences
130 - Sync with the revised NPU kernel drivers
133 - Sync with the NPU kernel driver refactoring
134 - Add the version control with the NPU kernel driver
137 - Add APIs to sepecify inference constraints (e.g., timeout/priority)
138 - Add an option to control multiple buffering
139 - Support a thread pool to support concurrent ioctls
140 - Support a HW-recurring input service for runNPU_internalInput()
143 - Fix minor bugs on NPU unittests
144 - Add install_rpath for ubuntu users
145 - Disable apptests using tvn models (instead, CI will do this)
148 - Fix minor bugs on shamt handling in NPU emulation codes
149 - Add an API to get the model metadata
152 - Fix minor bugs on data mainpulation
155 - Remove NPU emulation impl. (moved to AIP/NPU_SystemService_Emulator)
156 - Remove testdata generation impl. (moved to AIP/NPU_SystemService_Testdata)
157 - Simplify debian/tizen packaging scripts
160 - Fix minor bugs in testdata generation
163 - Support simultaneous request handling from different user apps
164 - Support timeout and priority handling for multiple requests
165 - Add and verify prebuilt tvn models (TRIV v1) in FastModel
166 - Sync with the NPU driver version in NPU_Linux-kernel
169 - Verify test cases on FastModel
170 - Fix a few minor bugs
173 - Support new NPU binary format (i.e., version 2)
174 - Support non-contiguous multiple input/output tensors
175 - Support data manipulation and quantization (only for npubinfmt v2)
178 - Add a prototype for NPU-ASR
182 - Change names of sub-packages from libnpuengine to npu-engine
185 - Tarballs containing test data are removed
186 - Test data are generated at the build time
189 - NPU Vision functionality verified in the FastModel envionment
190 - Support Ubuntu 16.04 packaging & emulation of NPU executions
191 - More test cases with single/multi-layer NPU models