1 #########
2 Changelog
3 #########
5 1.5.1 [Processor Linux SDK 6.3]
6 ===============================
7 **Changed**
9 #. Cleaned up subgraph cfg file entries. Added TIDL_SUBGRAPH_DIR and
10 TIDL_SUBGRAPH_NUM_EVES env var.
12 1.4.0 [Processor Linux SDK 6.2]
13 ===============================
14 **Added**
16 #. Subgraph execution support.
18 1.3.3 [Processor Linux SDK 6.1]
19 ===============================
20 **Added**
22 #. Added imagenet python example.
24 #. Added MobileNet v2 support.
26 #. Added environment variables to control pre-allocated network memory sizes.
27 TIDL_{PARAM,NETWORK}_HEAP_SIZE_{DSP,EVE}
29 **Changed**
31 #. Trace data now also include dataQ/minValue/maxValue info.
33 #. ssd_multibox example now can also run the whole netework on a single core.
35 #. Shipped network binaries are in new file format, of size 484384 bytes.
37 1.3.0 [Processor Linux SDK 5.3]
38 ===============================
39 **Added**
41 #. Added DSP support for MNIST example.
43 **Changed**
45 #. PSDK 5.3 and TIDL-API 1.3 use a slightly modified TIDL network binary
46 format to support ONNX network import. TIDL-API 1.3, as well as
47 tidl-viewer utility, can read both network formats before and after the
48 change. Network binary in TIDL-API 1.2 and earlier is of size 483364
49 bytes, network binary in TIDL-API 1.3 is of size 484384 bytes.
51 #. Improved performance of concat layer on C66x DSP.
53 1.2.2 [Processor Linux SDK 5.2]
54 ===============================
55 **Added**
57 #. Updated API implementation to minimize TIDL API/OpenCL dispatch overhead using multiple execution contexts in the :term:`ExecutionObject`.
58 Refer to :ref:`mnist-example` example for details.
60 #. Execution Graph generation
62 Enable a two phase approach to generating execution graphs. Use the
63 following API function to enable timestamp generation:
65 .. code:: cpp
67 bool EnableTimeStamps(const std::string& file = "timestamp.log", size_t num_frames=32);
69 The generated log file can be viewed by using the execution_graph.py script. Refer to :ref:`execution-graph` for details.
71 #. Added Python 3 bindings for TIDL API. See the ``examples/pybind`` directory for examples of using the Python bindings. Set PYTHONPATH to the location of ``tidl.so``.
73 .. code:: bash
75 root@am57xx-evm:~# export PYTHONPATH=/home/root/tidl-api/tidl_api
76 root@am57xx-evm:~# python3
77 >>> import tidl
78 >>> help (tidl)
80 **Removed**
82 #. Configuration::enableInternalInput. Not used by the API.
84 #. Execution::GetExecutionObjects().
86 Use Execution::operator[] and Execution::GetNumExecutionObjects() instead.
87 See :ref:`examples` for usage.
89 #. The timing methods for host execution in EOPs and EOs:
91 * GetProcessTimeInMilliSeconds()
92 * GetHostProcessTimeInMilliSeconds()
94 These methods were replaced by a timestamp based approach because they were
95 no longer accurate with multiple ExecutionObject contexts and pipelining.
96 Refer to :ref:`execution-graph` for details.
98 1.1.0 [Processor Linux SDK 5.1]
99 ===============================
100 **Added**
102 #. :term:`ExecutionObjectPipeline` class to hide complexity of executing network across C66x/EVE
103 #. API methods for tracing outputs from intermediate network layers - see :ref:`network_layer_output`.
104 #. Support for updating layer group id assignment before execution - see :ref:`layer-group-override`.
105 #. Provide feedback to the user on parameter and network heap size requirements - see :ref:`sizing_device_heaps`.
108 1.0.0 [Processor Linux SDK 5.0]
109 ===============================
110 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.
112 **Supported AM57x Sitara Processors**
114 * `AM5749`_ (offload to EVEs and C66x DSPs)
115 * `AM571x`_ (offload to C66x DSPs)
116 * `AM5728`_ (offload to C66x DSPs)
117 * `AM5748`_ (offload to C66x DSPs)
119 **Supported Evaluation Modules (EVMs)**
121 * `AM574x IDK EVM`_
122 * `AM572x EVM`_
123 * `AM571x IDK EVM`_
126 .. _AM572x EVM: http://www.ti.com/tool/tmdsevm572x
127 .. _AM571x IDK EVM: http://www.ti.com/tool/tmdxidk5718
128 .. _AM574x IDK EVM: http://www.ti.com/tool/tmdsidk574
129 .. _AM571x: http://www.ti.com/processors/sitara/arm-cortex-a15/am57x/products.html#p2098=1%20C66x&p809=2;2
130 .. _AM5728: http://www.ti.com/product/AM5728
131 .. _AM5748: http://www.ti.com/product/am5748
132 .. _AM5749: http://www.ti.com/product/am5749
133 .. _AM574x: http://www.ti.com/processors/sitara/arm-cortex-a15/am57x/products.html#p2098=2%20C66x&p815=ECC