arjun.a
range data
5aefcf4
raw
history blame
No virus
12.2 kB
Ticket Name: TIDL SSD based object detection - partitioning into EVE & DSP
Query Text:
Other Parts Discussed in Thread: TDA2 Hi, In TIDeepLeraningLibrary_DataSheet.pdf (TIDL 01.01.00.00), folloiwng comment is shown in TABLE.4B on page 4. " Initial part of the network is executed / profiled on EVE and the later part is on C6x DSP (Later part of the network is best optimal on C6x DSP). " SSD based detection network in Caffe-Jacinto-Model contains 45 layers as below. 0, TIDL_DataLayer 1, TIDL_BatchNormLayer 2, TIDL_ConvolutionLayer 3, TIDL_ConvolutionLayer 4, TIDL_ConvolutionLayer 5, TIDL_ConvolutionLayer 6, TIDL_ConvolutionLayer 7, TIDL_ConvolutionLayer 8, TIDL_PoolingLayer ... 40, TIDL_FlattenLayer 41, TIDL_ConcatLayer 42, TIDL_ConcatLayer 43, TIDL_DetectionOutputLayer 44, TIDL_DataLayer [Q1] To get both EVE and DSP performance shown in TABLE.4B, how do we partition into EVE and DSP ? For instance, which layers are executed on DSP and which other layers are executed on EVE ? [Q2] To get both EVE and DSP performance shown in TABLE.4B, how do we test on target EVM ? I need to duplicate the test. Best regards, Saito
Responses:
Hi Saito, I have explained that in below e2e thread, please refer to my last two responses in this thread, e2e.ti.com/.../690888 Thanks, Praveen
Thanks Praveen. On Q2, should we run TIDL OD usecase in VSDK ? If so, the TIDL OD usecase can run on TDA2 SoC only ? Best regards, Saito
Hi Satio, You can get the performance numbers by running .out files on standalone, refer to section 3.3.5 (Building the Test Application Executable through GMAKE) to know the steps. Thanks, Praveen
Hi Praveen, I have already run .out file on EVE standalone. However I did not get the performance numbers described in TABLE 4B TIDeepLeraningLibrary_DataSheet.pdf. Please find attached CCS log. LOG_TDA2Px_EVE_jdetnet.txt Processing config file C:\ti\psdk\PSDKV33\ti_components\algorithms\REL.TIDL.01.01.00.00\modules\ti_dl\test\testvecs\config\infer\tidl_config_jdetnet.txt !
0, TIDL_DataLayer , 0, -1 , 1 , x , x , x , x , x , x , x , x , 0 , 0 , 0 , 0 , 0 , 1 , 3 , 320 , 768 ,
1, TIDL_BatchNormLayer , 1, 1 , 1 , 0 , x , x , x , x , x , x , x , 1 , 1 , 3 , 320 , 768 , 1 , 3 , 320 , 768 ,
2, TIDL_ConvolutionLayer , 1, 1 , 1 , 1 , x , x , x , x , x , x , x , 2 , 1 , 3 , 320 , 768 , 1 , 32 , 160 , 384 ,
3, TIDL_ConvolutionLayer , 1, 1 , 1 , 2 , x , x , x , x , x , x , x , 3 , 1 , 32 , 160 , 384 , 1 , 32 , 80 , 192 ,
4, TIDL_ConvolutionLayer , 1, 1 , 1 , 3 , x , x , x , x , x , x , x , 4 , 1 , 32 , 80 , 192 , 1 , 64 , 80 , 192 ,
5, TIDL_ConvolutionLayer , 1, 1 , 1 , 4 , x , x , x , x , x , x , x , 5 , 1 , 64 , 80 , 192 , 1 , 64 , 40 , 96 ,
6, TIDL_ConvolutionLayer , 1, 1 , 1 , 5 , x , x , x , x , x , x , x , 6 , 1 , 64 , 40 , 96 , 1 , 128 , 40 , 96 ,
7, TIDL_ConvolutionLayer , 1, 1 , 1 , 6 , x , x , x , x , x , x , x , 7 , 1 , 128 , 40 , 96 , 1 , 128 , 40 , 96 ,
8, TIDL_PoolingLayer , 1, 1 , 1 , 7 , x , x , x , x , x , x , x , 8 , 1 , 128 , 40 , 96 , 1 , 128 , 20 , 48 ,
9, TIDL_ConvolutionLayer , 1, 1 , 1 , 8 , x , x , x , x , x , x , x , 9 , 1 , 128 , 20 , 48 , 1 , 256 , 20 , 48 ,
10, TIDL_ConvolutionLayer , 1, 1 , 1 , 9 , x , x , x , x , x , x , x , 10 , 1 , 256 , 20 , 48 , 1 , 256 , 10 , 24 ,
11, TIDL_ConvolutionLayer , 1, 1 , 1 , 10 , x , x , x , x , x , x , x , 11 , 1 , 256 , 10 , 24 , 1 , 512 , 10 , 24 ,
12, TIDL_ConvolutionLayer , 1, 1 , 1 , 11 , x , x , x , x , x , x , x , 12 , 1 , 512 , 10 , 24 , 1 , 512 , 10 , 24 ,
13, TIDL_PoolingLayer , 1, 1 , 1 , 12 , x , x , x , x , x , x , x , 13 , 1 , 512 , 10 , 24 , 1 , 512 , 5 , 12 ,
14, TIDL_PoolingLayer , 1, 1 , 1 , 13 , x , x , x , x , x , x , x , 14 , 1 , 512 , 5 , 12 , 1 , 512 , 3 , 6 ,
15, TIDL_PoolingLayer , 1, 1 , 1 , 14 , x , x , x , x , x , x , x , 15 , 1 , 512 , 3 , 6 , 1 , 512 , 2 , 3 ,
16, TIDL_ConvolutionLayer , 1, 1 , 1 , 7 , x , x , x , x , x , x , x , 16 , 1 , 128 , 40 , 96 , 1 , 256 , 40 , 96 ,
17, TIDL_ConvolutionLayer , 1, 1 , 1 , 12 , x , x , x , x , x , x , x , 17 , 1 , 512 , 10 , 24 , 1 , 256 , 10 , 24 ,
18, TIDL_ConvolutionLayer , 1, 1 , 1 , 13 , x , x , x , x , x , x , x , 18 , 1 , 512 , 5 , 12 , 1 , 256 , 5 , 12 ,
19, TIDL_ConvolutionLayer , 1, 1 , 1 , 14 , x , x , x , x , x , x , x , 19 , 1 , 512 , 3 , 6 , 1 , 256 , 3 , 6 ,
20, TIDL_ConvolutionLayer , 1, 1 , 1 , 15 , x , x , x , x , x , x , x , 20 , 1 , 512 , 2 , 3 , 1 , 256 , 2 , 3 ,
21, TIDL_ConvolutionLayer , 1, 1 , 1 , 16 , x , x , x , x , x , x , x , 21 , 1 , 256 , 40 , 96 , 1 , 16 , 40 , 96 ,
22, TIDL_FlattenLayer , 1, 1 , 1 , 21 , x , x , x , x , x , x , x , 22 , 1 , 16 , 40 , 96 , 1 , 1 , 1 ,61440 ,
23, TIDL_ConvolutionLayer , 1, 1 , 1 , 16 , x , x , x , x , x , x , x , 23 , 1 , 256 , 40 , 96 , 1 , 16 , 40 , 96 ,
24, TIDL_FlattenLayer , 1, 1 , 1 , 23 , x , x , x , x , x , x , x , 24 , 1 , 16 , 40 , 96 , 1 , 1 , 1 ,61440 ,
25, TIDL_ConvolutionLayer , 1, 1 , 1 , 17 , x , x , x , x , x , x , x , 26 , 1 , 256 , 10 , 24 , 1 , 24 , 10 , 24 ,
26, TIDL_FlattenLayer , 1, 1 , 1 , 26 , x , x , x , x , x , x , x , 27 , 1 , 24 , 10 , 24 , 1 , 1 , 1 , 5760 ,
27, TIDL_ConvolutionLayer , 1, 1 , 1 , 17 , x , x , x , x , x , x , x , 28 , 1 , 256 , 10 , 24 , 1 , 24 , 10 , 24 ,
28, TIDL_FlattenLayer , 1, 1 , 1 , 28 , x , x , x , x , x , x , x , 29 , 1 , 24 , 10 , 24 , 1 , 1 , 1 , 5760 ,
29, TIDL_ConvolutionLayer , 1, 1 , 1 , 18 , x , x , x , x , x , x , x , 31 , 1 , 256 , 5 , 12 , 1 , 24 , 5 , 12 ,
30, TIDL_FlattenLayer , 1, 1 , 1 , 31 , x , x , x , x , x , x , x , 32 , 1 , 24 , 5 , 12 , 1 , 1 , 1 , 1440 ,
31, TIDL_ConvolutionLayer , 1, 1 , 1 , 18 , x , x , x , x , x , x , x , 33 , 1 , 256 , 5 , 12 , 1 , 24 , 5 , 12 ,
32, TIDL_FlattenLayer , 1, 1 , 1 , 33 , x , x , x , x , x , x , x , 34 , 1 , 24 , 5 , 12 , 1 , 1 , 1 , 1440 ,
33, TIDL_ConvolutionLayer , 1, 1 , 1 , 19 , x , x , x , x , x , x , x , 36 , 1 , 256 , 3 , 6 , 1 , 24 , 3 , 6 ,
34, TIDL_FlattenLayer , 1, 1 , 1 , 36 , x , x , x , x , x , x , x , 37 , 1 , 24 , 3 , 6 , 1 , 1 , 1 , 432 ,
35, TIDL_ConvolutionLayer , 1, 1 , 1 , 19 , x , x , x , x , x , x , x , 38 , 1 , 256 , 3 , 6 , 1 , 24 , 3 , 6 ,
36, TIDL_FlattenLayer , 1, 1 , 1 , 38 , x , x , x , x , x , x , x , 39 , 1 , 24 , 3 , 6 , 1 , 1 , 1 , 432 ,
37, TIDL_ConvolutionLayer , 1, 1 , 1 , 20 , x , x , x , x , x , x , x , 41 , 1 , 256 , 2 , 3 , 1 , 16 , 2 , 3 ,
38, TIDL_FlattenLayer , 1, 1 , 1 , 41 , x , x , x , x , x , x , x , 42 , 1 , 16 , 2 , 3 , 1 , 1 , 1 , 96 ,
39, TIDL_ConvolutionLayer , 1, 1 , 1 , 20 , x , x , x , x , x , x , x , 43 , 1 , 256 , 2 , 3 , 1 , 16 , 2 , 3 ,
40, TIDL_FlattenLayer , 1, 1 , 1 , 43 , x , x , x , x , x , x , x , 44 , 1 , 16 , 2 , 3 , 1 , 1 , 1 , 96 ,
41, TIDL_ConcatLayer , 1, 5 , 1 , 22 , 27 , 32 , 37 , 42 , x , x , x , 46 , 1 , 1 , 1 ,61440 , 1 , 1 , 1 ,69168 ,
42, TIDL_ConcatLayer , 1, 5 , 1 , 24 , 29 , 34 , 39 , 44 , x , x , x , 47 , 1 , 1 , 1 ,61440 , 1 , 1 , 1 ,69168 ,
43, TIDL_DetectionOutputLayer , 1, 2 , 1 , 46 , 47 , x , x , x , x , x , x , 48 , 1 , 1 , 1 ,69168 , 1 , 1 , 1 , 560 ,
44, TIDL_DataLayer , 0, 1 , -1 , 48 , x , x , x , x , x , x , x , 0 , 1 , 1 , 1 , 560 , 0 , 0 , 0 , 0 ,
TEST_REPORT_INIT_PROFILE_DATA : TSC cycles = 1125769866, SCTM VCOP BUSY cycles = 0, SCTM VCOP Overhead = 0
I/O Bytes : 0 ( 0 + 0 ) : 0 ( 0 + 0 )
Processing Frame Number : 0
TEST_REPORT_PROCESS_PROFILE_DATA : TSC cycles = 1607498494, SCTM VCOP BUSY cycles = 70089004, SCTM VCOP Overhead = 0
I/O Bytes : 0 ( 0 + 0 ) : 0 ( 0 + 0 )
[Q2] How do we get the performance numbers in TALBE 4B ? Best regards, Saito
Hi Satio, Can you share infer config file used for running the .out file? Thanks, Praveen
Hi Praveen, I used "tidl_config_jdetnet.txt" in directory REL.TIDL.01.01.00.00\modules\ti_dl\test\testvecs\config\infer. Best regards, Saito
Hi Satio, This "tidl_config_jdetnet.txt" file runs full Net on EVE, but we need to part of network in EVE and later part on DSP to get the performance numbers, so please use attached config files First run "tidl_config_jdetnet_eve.txt" on EVE which gives performance numbers of EVE Then run "tidl_config_jdetnet_dsp.txt" on DSP which gives performance numbers of DSP Thanks, Praveen 5444.tidl_config_jdetnet_eve.txt rawImage = 1
numFrames = 1
preProcType = 4
#inData = "D:\work\vision\dsp_git\dsp_apps\modules\ti_dl\test\testvecs\config\caffe_models\SSD\000535.jpg"
#inData = D:\work\vision\dsp_git\dsp_apps\modules\ti_dl\test\testvecs\config\caffe_models\SSD\000220.jpg
#inData = "D:\work\vision\CNN\data\tiscapes\VIRB0003_200frames_00.11\out000018_crop.png"
#inData = "D:\work\vision\CNN\data\tiscapes\V105Crop_200frames_0249\out000026.png"
traceDumpBaseName = ".\trace_dump_"
updateNetWithStats = 0
netBinFile = ..\..\test\testvecs\config\tidl_models\jdetnet\tidl_net_jdetNet_ssd.bin
paramsBinFile = ..\..\test\testvecs\config\tidl_models\jdetnet\tidl_param_jdetNet_ssd.bin
readQ = 1
writeQ = 1
#inData = "..\..\test\testvecs\input\trace_dump_0_768x384.y"
inData = "..\..\test\testvecs\input\trace_dump_0_768x320.y"
outData = ".\stats_tool_out_eve.bin"
#inData = ".\stats_tool_out_eve.bin"
#outData = ".\stats_tool_out.bin"
layersGroupId = 1
runFullNet = 0
6332.tidl_config_jdetnet_dsp.txt rawImage = 1
numFrames = 1
preProcType = 4
#inData = "D:\work\vision\dsp_git\dsp_apps\modules\ti_dl\test\testvecs\config\caffe_models\SSD\000535.jpg"
#inData = D:\work\vision\dsp_git\dsp_apps\modules\ti_dl\test\testvecs\config\caffe_models\SSD\000220.jpg
#inData = "D:\work\vision\CNN\data\tiscapes\VIRB0003_200frames_00.11\out000018_crop.png"
#inData = "D:\work\vision\CNN\data\tiscapes\V105Crop_200frames_0249\out000026.png"
traceDumpBaseName = ".\trace_dump_"
updateNetWithStats = 0
netBinFile = ..\..\test\testvecs\config\tidl_models\jdetnet\tidl_net_jdetNet_ssd.bin
paramsBinFile = ..\..\test\testvecs\config\tidl_models\jdetnet\tidl_param_jdetNet_ssd.bin
readQ = 1
writeQ = 1
#inData = "..\..\test\testvecs\input\trace_dump_0_768x384.y"
#inData = "..\..\test\testvecs\input\trace_dump_0_768x320.y"
#outData = ".\stats_tool_out_eve.bin"
inData = ".\stats_tool_out_eve.bin"
outData = ".\stats_tool_out.bin"
layersGroupId = 2
runFullNet = 0
Hi Praveen, My issue resolved. Thank you. Best regards, Saito