2 - Use Apache-2.0 License for now
3 - Use the embedded uapi header temporally
4 - Fix minor bugs (e.g., output callback handling)
5 - Prepare open sourcing for Tizen.org
8 - Support multi tensors for kernel requests
9 - Reset internal callback after submission (sync mode)
10 - Revise reference example code
13 - Fix the dspm size checking to use envvar
14 - Add build macro for cuse driver
15 - Add smack rules for cuse driver in post script
18 - Add PID info to profile data path
19 - Change the dafault data type for test programs
20 - Fix some coverity issues
23 - Support TRIV v2.3.8 models
24 - Update NNStreamer sub-plugin name
25 - Update NPU-DDK documents
28 - Fix double free bug when handling output callback
29 - Fix tensor size calculation for layout NONE (= TRIV2)
30 - Allow mutliple calls of getNPU_profile()
31 - Resolve warning messages from Valgrind analysis
32 - Update action workflows to upload a core dump on failures
33 - Increase code coverage (line & func >= 85%)
34 - Increase the column limit of clang-format for readability
37 - Fix bugs and revise FPGA workaround codes
38 - Handle DSPM size and a number of vISA insts
39 - Skip layout conversion of tensors with raw data layout
40 - Support Tizen sample apps (Native, Web, and .NET)
41 - Verify v2.3.7 models in FPGA
42 - Update NPU-DDK documents
45 - Use a global request id managed by a device driver
46 - Handle the field for extended metasize in npubinfmt.h
47 - Support nnstreamer sub-plugin in Tizen emulator 6.5
48 - Support system-wide request profiling using a device driver
49 - Support application and request statistics in cuse driver
52 - Add extra field for extened metasize to npubinfmt.h
53 - Add extra API to select a NPU scheduler
54 - Add apptest to test API interleaving
55 - Add nnstreamer filter sub-plugin for srnpu
56 - Fix model existence checking
57 - Fix text formats reported by trinity-smi
60 - Support NCHW data layout conversion
61 - Perform code refactoring of HW input service
62 - Add segment size info. for external memory
63 - Add github action workflows for CI/CD
66 - Fix bug when setting npumgr param
67 - Fix bug when deallocating hwmem (e.g., missing close)
68 - Support multiple submission with the same request
69 - Add several aging apptests (e.g., repeat iterations)
70 - Add data layout for input/output tensors to npubinfmt.h
71 - Remove run_internal APIs (invalid scenarios) in libnpuhost.h
74 - Add decoupled APIs for network inferencing
75 - Enhance debugging (e.g., logging, API)
76 - Update VD I/F sync. with real modules
77 - Revise some documents
80 - Fix memcpy bug of getNPUmodel_metadata
81 - Add documents for FPGA testing guide
82 - Add unittests to increase function coverage
83 - Drop Ubuntu 16.04 (Xenial) support
86 - Complete the dummy module of VD NPU manager
87 - Add libnpuhost APIs for user convenience
88 - Add some unittests to cover RFP checklists
92 - Add new profile API, getNPU_profile_opt()
93 - Add the opcode of each vISA profile layer
94 - Fix minor svace issues
95 - Use TRIV v2.3.5 test models
98 - Implement the prototype of VD NPU Manager (dummy)
99 - Provide a CUSE-based virtual device node (trinity-cuse)
100 - Distinguish debian and emulated envionment
101 - Apply clang-format for the whole C++ source codes
102 - Add a profile data path to the result of getNPU_profile()
105 - Add start/end cycles of each profiling layer
106 - Support NPU emulation mode in Tizen env.
109 - Increase the maximum length of profiling layer name
110 - Update the testdata path of unittests (v2.3.4)
113 - Support profiling APIs for requests with any priority
114 - Add an apptest program to test the task preemption
115 - Fix minor bugs on a few unittest programs
118 - Support the DSP profiling for MDK
119 - Increase the overall code coverage
120 - Revise the debugging feature
123 - Update npubinfmt.h to store extra model info
124 - Support per-layer profiling for MDK
125 - Provide hotdoc-generated documents
128 - Support 2-TOPS TRIV2 as the default NPU
129 - Support TRIV 2.3.x architecture
130 - Make TRIV1 and TRIA devices deprecated
133 - Fix tensor size calculation using dynamic data granularity
134 - Increase the code coverage for new APIs
137 - Support profiling APIs in FastModel/FPGA env.
138 - Fix some package dependency issues
141 - Implement profiling APIs with the libmrpsim support
142 - Fix minor bugs mostly related to NPU emulation
145 - Revise NPU driver APIs to use Trinity API level 2
146 - Extend trinity-smi to monitor the status of apps and their tasks
147 - Seperate libnpuhost codes from core handler codes
150 - Support 2-TOPS NPU devices for emulation with different command files
151 - Add the command line utility (trinity-smi) for monitoring trinity devices
152 - Support the Docker envionment (xenial, bionic) for npu-engine users
155 - Revise the utility for trinity-testing applications
156 - Replace emulation library from libnpu-engine-emul to libmrpsim
157 - Resolve minor issues from static analyzers (i.e., svace, coverity)
160 - Fix minor bugs related to layout conversion
163 - Add a prototype of profiling interface as libnpuhost APIs
164 - Add some apptests to check a multi-tasking capability
165 - Skip to install dummy (or uncompatible) apptests in non-emulated env.
166 - Fix minor bugs related to model unregistration
169 - Fix external segment handling bugs
170 - Add npu-engine-utils package
171 - Support TRIV2's data manipulation (layout conversion)
174 - Resolve issues reported by static analyzer (svace/coverity)
175 - Add driver-assisted memory copy to avoid FPGA memcpy bug
176 - Prepare the code release
179 - Revise the user APIs for HW-recurring tasks
180 - Sync with the kernel driver's changed ioctl definition
181 - Add testcases for external hwmem and HW-recurring tasks
184 - Fix tensor size calculations on TRIV2 layout
185 - Add some testcases to run infernces using an async thread
188 - Add ioctl() to get the number of requests for trinity devices
189 - Add ioctl() to stop all requests for trinity devices
190 - Support log verbose mode for debugging
191 - Version sync with npu-engine-emul
194 - Fix minor bugs (e.g., weight offset setting and data size calc)
195 - Add user-level APIs to get status (e.g., memory/device status)
196 - Support memory status ioctl for trinity devices
197 - Support the stop feature to terminate submitted requests
200 - Fully support the TRIV2 device and kernel driver
201 - Add missing device functions (e.g., unsetModel)
202 - Resolve minor bugs and svace issues
205 - Revise the whole source codes (C++ porting/refactoring)
206 - Increase the code coverage (>= 85%)
207 - Support a segment table for TRIV2 inferences
208 - Sync with the revised NPU kernel drivers
211 - Sync with the NPU kernel driver refactoring
212 - Add the version control with the NPU kernel driver
215 - Add APIs to sepecify inference constraints (e.g., timeout/priority)
216 - Add an option to control multiple buffering
217 - Support a thread pool to support concurrent ioctls
218 - Support a HW-recurring input service for runNPU_internalInput()
221 - Fix minor bugs on NPU unittests
222 - Add install_rpath for ubuntu users
223 - Disable apptests using tvn models (instead, CI will do this)
226 - Fix minor bugs on shamt handling in NPU emulation codes
227 - Add an API to get the model metadata
230 - Fix minor bugs on data mainpulation
233 - Remove NPU emulation impl. (moved to AIP/NPU_SystemService_Emulator)
234 - Remove testdata generation impl. (moved to AIP/NPU_SystemService_Testdata)
235 - Simplify debian/tizen packaging scripts
238 - Fix minor bugs in testdata generation
241 - Support simultaneous request handling from different user apps
242 - Support timeout and priority handling for multiple requests
243 - Add and verify prebuilt tvn models (TRIV v1) in FastModel
244 - Sync with the NPU driver version in NPU_Linux-kernel
247 - Verify test cases on FastModel
248 - Fix a few minor bugs
251 - Support new NPU binary format (i.e., version 2)
252 - Support non-contiguous multiple input/output tensors
253 - Support data manipulation and quantization (only for npubinfmt v2)
256 - Add a prototype for NPU-ASR
260 - Change names of sub-packages from libnpuengine to npu-engine
263 - Tarballs containing test data are removed
264 - Test data are generated at the build time
267 - NPU Vision functionality verified in the FastModel envionment
268 - Support Ubuntu 16.04 packaging & emulation of NPU executions
269 - More test cases with single/multi-layer NPU models