[Release] NPU Engine v2.3.13 release
[platform/adaptation/npu/trix-engine.git] / CHANGES
1 2.3.12 -> 2.3.13:
2   - Add extra field for extened metasize to npubinfmt.h
3   - Add extra API to select a NPU scheduler
4   - Add apptest to test API interleaving
5   - Add nnstreamer filter sub-plugin for srnpu
6   - Fix model existence checking
7   - Fix text formats reported by trinity-smi
8
9 2.3.11 -> 2.3.12:
10   - Support NCHW data layout conversion
11   - Perform code refactoring of HW input service
12   - Add segment size info. for external memory
13   - Add github action workflows for CI/CD
14
15 2.3.10 -> 2.3.11:
16   - Fix bug when setting npumgr param
17   - Fix bug when deallocating hwmem (e.g., missing close)
18   - Support multiple submission with the same request
19   - Add several aging apptests (e.g., repeat iterations)
20   - Add data layout for input/output tensors to npubinfmt.h
21   - Remove run_internal APIs (invalid scenarios) in libnpuhost.h
22
23 2.3.9 -> 2.3.10:
24   - Add decoupled APIs for network inferencing
25   - Enhance debugging (e.g., logging, API)
26   - Update VD I/F sync. with real modules
27   - Revise some documents
28
29 2.3.8 -> 2.3.9:
30   - Fix memcpy bug of getNPUmodel_metadata
31   - Add documents for FPGA testing guide
32   - Add unittests to increase function coverage
33   - Drop Ubuntu 16.04 (Xenial) support
34
35 2.3.7 -> 2.3.8:
36   - Complete the dummy module of VD NPU manager
37   - Add libnpuhost APIs for user convenience
38   - Add some unittests to cover RFP checklists
39   - Fix minor bugs
40
41 2.3.6 -> 2.3.7:
42   - Add new profile API, getNPU_profile_opt()
43   - Add the opcode of each vISA profile layer
44   - Fix minor svace issues
45   - Use TRIV v2.3.5 test models
46
47 2.3.5 -> 2.3.6:
48   - Implement the prototype of VD NPU Manager (dummy)
49   - Provide a CUSE-based virtual device node (trinity-cuse)
50   - Distinguish debian and emulated envionment
51   - Apply clang-format for the whole C++ source codes
52   - Add a profile data path to the result of getNPU_profile()
53
54 2.3.4 -> 2.3.5:
55   - Add start/end cycles of each profiling layer
56   - Support NPU emulation mode in Tizen env.
57
58 2.3.3 -> 2.3.4:
59   - Increase the maximum length of profiling layer name
60   - Update the testdata path of unittests (v2.3.4)
61
62 2.3.2 -> 2.3.3:
63   - Support profiling APIs for requests with any priority
64   - Add an apptest program to test the task preemption
65   - Fix minor bugs on a few unittest programs
66
67 2.3.1 -> 2.3.2:
68   - Support the DSP profiling for MDK
69   - Increase the overall code coverage
70   - Revise the debugging feature
71
72 2.3.0 -> 2.3.1:
73   - Update npubinfmt.h to store extra model info
74   - Support per-layer profiling for MDK
75   - Provide hotdoc-generated documents
76
77 2.2.10 -> 2.3.0:
78   - Support 2-TOPS TRIV2 as the default NPU
79   - Support TRIV 2.3.x architecture
80   - Make TRIV1 and TRIA devices deprecated
81
82 2.2.9 -> 2.2.10:
83   - Fix tensor size calculation using dynamic data granularity
84   - Increase the code coverage for new APIs
85
86 2.2.8 -> 2.2.9:
87   - Support profiling APIs in FastModel/FPGA env.
88   - Fix some package dependency issues
89
90 2.2.7 -> 2.2.8:
91   - Implement profiling APIs with the libmrpsim support
92   - Fix minor bugs mostly related to NPU emulation
93
94 2.2.6 -> 2.2.7:
95   - Revise NPU driver APIs to use Trinity API level 2
96   - Extend trinity-smi to monitor the status of apps and their tasks
97   - Seperate libnpuhost codes from core handler codes
98
99 2.2.5 -> 2.2.6:
100   - Support 2-TOPS NPU devices for emulation with different command files
101   - Add the command line utility (trinity-smi) for monitoring trinity devices
102   - Support the Docker envionment (xenial, bionic) for npu-engine users
103
104 2.2.4 -> 2.2.5:
105   - Revise the utility for trinity-testing applications
106   - Replace emulation library from libnpu-engine-emul to libmrpsim
107   - Resolve minor issues from static analyzers (i.e., svace, coverity)
108
109 2.2.3 -> 2.2.4:
110   - Fix minor bugs related to layout conversion
111
112 2.2.2 -> 2.2.3:
113   - Add a prototype of profiling interface as libnpuhost APIs
114   - Add some apptests to check a multi-tasking capability
115   - Skip to install dummy (or uncompatible) apptests in non-emulated env.
116   - Fix minor bugs related to model unregistration
117
118 2.2.1 -> 2.2.2:
119   - Fix external segment handling bugs
120   - Add npu-engine-utils package
121   - Support TRIV2's data manipulation (layout conversion)
122
123 2.2.0 -> 2.2.1:
124   - Resolve issues reported by static analyzer (svace/coverity)
125   - Add driver-assisted memory copy to avoid FPGA memcpy bug
126   - Prepare the code release
127
128 2.0.5 -> 2.2.0:
129   - Revise the user APIs for HW-recurring tasks
130   - Sync with the kernel driver's changed ioctl definition
131   - Add testcases for external hwmem and HW-recurring tasks
132
133 2.0.4 -> 2.0.5:
134   - Fix tensor size calculations on TRIV2 layout
135   - Add some testcases to run infernces using an async thread
136
137 2.0.2 -> 2.0.4:
138   - Add ioctl() to get the number of requests for trinity devices
139   - Add ioctl() to stop all requests for trinity devices
140   - Support log verbose mode for debugging
141   - Version sync with npu-engine-emul
142
143 2.0.1 -> 2.0.2:
144   - Fix minor bugs (e.g., weight offset setting and data size calc)
145   - Add user-level APIs to get status (e.g., memory/device status)
146   - Support memory status ioctl for trinity devices
147   - Support the stop feature to terminate submitted requests
148
149 2.0.0 -> 2.0.1:
150   - Fully support the TRIV2 device and kernel driver
151   - Add missing device functions (e.g., unsetModel)
152   - Resolve minor bugs and svace issues
153
154 1.2.0 -> 2.0.0:
155   - Revise the whole source codes (C++ porting/refactoring)
156   - Increase the code coverage (>= 85%)
157   - Support a segment table for TRIV2 inferences
158   - Sync with the revised NPU kernel drivers
159
160 1.1.4 -> 1.2.0:
161   - Sync with the NPU kernel driver refactoring
162   - Add the version control with the NPU kernel driver
163
164 1.1.3 -> 1.1.4:
165   - Add APIs to sepecify inference constraints (e.g., timeout/priority)
166   - Add an option to control multiple buffering
167   - Support a thread pool to support concurrent ioctls
168   - Support a HW-recurring input service for runNPU_internalInput()
169
170 1.1.2 -> 1.1.3:
171   - Fix minor bugs on NPU unittests
172   - Add install_rpath for ubuntu users
173   - Disable apptests using tvn models (instead, CI will do this)
174
175 1.1.1 -> 1.1.2:
176   - Fix minor bugs on shamt handling in NPU emulation codes
177   - Add an API to get the model metadata
178
179 1.1.0 -> 1.1.1:
180   - Fix minor bugs on data mainpulation
181
182 1.0.1 -> 1.1.0:
183   - Remove NPU emulation impl. (moved to AIP/NPU_SystemService_Emulator)
184   - Remove testdata generation impl. (moved to AIP/NPU_SystemService_Testdata)
185   - Simplify debian/tizen packaging scripts
186
187 1.0.0 -> 1.0.1:
188   - Fix minor bugs in testdata generation
189
190 0.0.7 -> 1.0.0:
191   - Support simultaneous request handling from different user apps
192   - Support timeout and priority handling for multiple requests
193   - Add and verify prebuilt tvn models (TRIV v1) in FastModel
194   - Sync with the NPU driver version in NPU_Linux-kernel
195
196 0.0.6 -> 0.0.7:
197   - Verify test cases on FastModel
198   - Fix a few minor bugs
199
200 0.0.5 -> 0.0.6:
201   - Support new NPU binary format (i.e., version 2)
202   - Support non-contiguous multiple input/output tensors
203   - Support data manipulation and quantization (only for npubinfmt v2)
204
205 0.0.4 -> 0.0.5:
206   - Add a prototype for NPU-ASR
207   - Fix minor bugs
208
209 0.0.3 -> 0.0.4:
210   - Change names of sub-packages from libnpuengine to npu-engine
211
212 0.0.2 -> 0.0.3:
213   - Tarballs containing test data are removed
214   - Test data are generated at the build time
215
216 0.0.1 -> 0.0.2:
217   - NPU Vision functionality verified in the FastModel envionment
218   - Support Ubuntu 16.04 packaging & emulation of NPU executions
219   - More test cases with single/multi-layer NPU models