Adjust example heap sizes with new TIDL library
authorYuan Zhao <yuanzhao@ti.com>
Fri, 30 Aug 2019 19:14:31 +0000 (14:14 -0500)
committerYuan Zhao <yuanzhao@ti.com>
Fri, 30 Aug 2019 19:34:12 +0000 (14:34 -0500)
- The latest TIDL library increased memory requirement slightly.
  Adjust heap sizes in the examples accordingly.
- MCT-1217

docs/source/example.rst
examples/one_eo_per_frame/main.cpp
examples/test/main.cpp
examples/two_eo_per_frame/main.cpp
examples/two_eo_per_frame_opt/main.cpp

index 9c696ad8b6cc0f3bf301cc754c7f0747ec640db9..669020fe8345a5a00e8553344617257f5050fb9c 100644 (file)
@@ -276,6 +276,10 @@ versus ExecutionObject level.
 When there is a requirement to run the SSD networks non-partitioned,
 for example, the SoC only has C66x cores but not EVE cores,
 use ``-e 0`` to run the full network only on C66x cores, without partitioning.
+When running full network with C66x DSP cores, jdetnet works fine with default
+heap sizes.  jdetnet_voc requires slightly larger heap size and can be run
+with environment variable, e.g.
+``TIDL_NETWORK_HEAP_SIZE_DSP=75000000 ./ssd_multibox -d 1 -e 0``.
 
 .. _mnist-example:
 
index 8872c06438d3aed18c54d8ebbcbd0bcf6fa320cd..c8000d1c69449162ed0b3460c82b110b3061aba4 100644 (file)
@@ -100,7 +100,7 @@ bool Run(const string& config_file, int num_eve, int num_dsp,
 
     // Heap sizes for this network determined using Configuration::showHeapStats
     c.PARAM_HEAP_SIZE   = (3 << 20); // 3MB
-    c.NETWORK_HEAP_SIZE = (20 << 20); // 20MB
+    c.NETWORK_HEAP_SIZE = (34 << 20); // 34MB
 
     c.numFrames = 16;
 
index f6dfb64ae9a751329ccd97a7821df7d9b6af58fc..df9fa88d4f8022aadb764cdf0d99fcff0bcd1e11 100644 (file)
@@ -244,6 +244,9 @@ bool RunAllConfigurations(int32_t num_devices, DeviceType device_type)
     int errors = 0;
     for (auto config : configurations)
     {
+        // Skip smallRoi, not a real network anyway
+        if (config.compare("smallRoi") == 0)  continue;
+
         std::string config_file = "testvecs/config/infer/tidl_config_"
                                   + config + ".txt";
         std::cout << "Running " << config << " on " << num_devices
@@ -259,9 +262,6 @@ bool RunAllConfigurations(int32_t num_devices, DeviceType device_type)
 
         if (!status) { errors++; continue; }
 
-        // Skip smallRoi reference checking, will investigate
-        if (config.compare("smallRoi") == 0)  continue;
-
         // Check output against reference output
         std::string reference_output = "testvecs/reference/"
                                        + config + "_ref.bin";
index d1aa6dc7a5d403538e5cdbbedb9f5ae135847d48..f309d4e3734c604d0be5817971f6d9dd6cdc9b56 100644 (file)
@@ -91,7 +91,7 @@ bool Run(int num_eve, int num_dsp, const char* ref_output)
 
     // Heap sizes for this network determined using Configuration::showHeapStats
     c.PARAM_HEAP_SIZE   = (3 << 20); // 3MB
-    c.NETWORK_HEAP_SIZE = (20 << 20); // 20MB
+    c.NETWORK_HEAP_SIZE = (34 << 20); // 34MB
 
     // Run this example for 16 input frames
     c.numFrames = 16;
index 43310c034f1596b0c028c1889c9e7c1cfb800e9f..68d92217aa97ab9423d013b9d6bdec78e8d44859 100644 (file)
@@ -96,7 +96,7 @@ bool Run(int num_eve, int num_dsp, const char* ref_output)
 
     // Heap sizes for this network determined using Configuration::showHeapStats
     c.PARAM_HEAP_SIZE   = (3 << 20); // 3MB
-    c.NETWORK_HEAP_SIZE = (20 << 20); // 20MB
+    c.NETWORK_HEAP_SIZE = (34 << 20); // 34MB
 
     // Run this example for 16 input frames
     c.numFrames = 16;