Changelog¶
1.3.3 [Processor Linux SDK 6.1]¶
Added
- Added imagenet python example.
- Added MobileNet v2 support.
- Added environment variables to control pre-allocated network memory sizes. TIDL_{PARAM,NETWORK}_HEAP_SIZE_{DSP,EVE}
Changed
- Trace data now also include dataQ/minValue/maxValue info.
- ssd_multibox example now can also run the whole netework on a single core.
- Shipped network binaries are in new file format, of size 484384 bytes.
1.3.0 [Processor Linux SDK 5.3]¶
Added
- Added DSP support for MNIST example.
Changed
- PSDK 5.3 and TIDL-API 1.3 use a slightly modified TIDL network binary format to support ONNX network import. TIDL-API 1.3, as well as tidl-viewer utility, can read both network formats before and after the change. Network binary in TIDL-API 1.2 and earlier is of size 483364 bytes, network binary in TIDL-API 1.3 is of size 484384 bytes.
- Improved performance of concat layer on C66x DSP.
1.2.2 [Processor Linux SDK 5.2]¶
Added
Updated API implementation to minimize TIDL API/OpenCL dispatch overhead using multiple execution contexts in the ExecutionObject. Refer to MNIST example for details.
Execution Graph generation
Enable a two phase approach to generating execution graphs. Use the following API function to enable timestamp generation:
bool EnableTimeStamps(const std::string& file = "timestamp.log", size_t num_frames=32);
The generated log file can be viewed by using the execution_graph.py script. Refer to Execution Graph viewer for details.
Added Python 3 bindings for TIDL API. See the
examples/pybind
directory for examples of using the Python bindings. Set PYTHONPATH to the location oftidl.so
.root@am57xx-evm:~# export PYTHONPATH=/home/root/tidl-api/tidl_api root@am57xx-evm:~# python3 >>> import tidl >>> help (tidl)
Removed
Configuration::enableInternalInput. Not used by the API.
Execution::GetExecutionObjects().
Use Execution::operator[] and Execution::GetNumExecutionObjects() instead. See Examples for usage.
The timing methods for host execution in EOPs and EOs:
- GetProcessTimeInMilliSeconds()
- GetHostProcessTimeInMilliSeconds()
These methods were replaced by a timestamp based approach because they were no longer accurate with multiple ExecutionObject contexts and pipelining. Refer to Execution Graph viewer for details.
1.1.0 [Processor Linux SDK 5.1]¶
Added
- ExecutionObjectPipeline class to hide complexity of executing network across C66x/EVE
- API methods for tracing outputs from intermediate network layers - see Accessing outputs of network layers.
- Support for updating layer group id assignment before execution - see Overriding layer group assignment.
- Provide feedback to the user on parameter and network heap size requirements - see Sizing device side heaps.
1.0.0 [Processor Linux SDK 5.0]¶
First release of the TI Deep Learning API. TIDL API brings deep learning to the edge by enabling applications to leverage TI’s proprietary, highly optimized CNN/DNN implementation on the EVE and C66x DSP compute engines. TIDL will initially target Vision/2D use cases.
Supported AM57x Sitara Processors
Supported Evaluation Modules (EVMs)