v4.16.1 (#12)
authorHailoRT-Automation <98901220+HailoRT-Automation@users.noreply.github.com>
Wed, 31 Jan 2024 16:22:00 +0000 (18:22 +0200)
committerGitHub <noreply@github.com>
Wed, 31 Jan 2024 16:22:00 +0000 (18:22 +0200)
39 files changed:
hailort/CMakeLists.txt
hailort/libhailort/CMakeLists.txt
hailort/libhailort/bindings/gstreamer/CMakeLists.txt
hailort/libhailort/bindings/gstreamer/gst-hailo/gsthailonet2.cpp
hailort/libhailort/bindings/gstreamer/gst-hailo/gsthailonet2.hpp
hailort/libhailort/bindings/python/platform/hailo_platform/pyhailort/pyhailort.py
hailort/libhailort/bindings/python/platform/setup.py
hailort/libhailort/bindings/python/src/CMakeLists.txt
hailort/libhailort/examples/c/data_quantization_example/CMakeLists.txt
hailort/libhailort/examples/c/infer_pipeline_example/CMakeLists.txt
hailort/libhailort/examples/c/multi_device_example/CMakeLists.txt
hailort/libhailort/examples/c/multi_network_vstream_example/CMakeLists.txt
hailort/libhailort/examples/c/notification_callback_example/CMakeLists.txt
hailort/libhailort/examples/c/power_measurement_example/CMakeLists.txt
hailort/libhailort/examples/c/raw_async_streams_single_thread_example/CMakeLists.txt
hailort/libhailort/examples/c/raw_streams_example/CMakeLists.txt
hailort/libhailort/examples/c/switch_network_groups_example/CMakeLists.txt
hailort/libhailort/examples/c/switch_network_groups_manually_example/CMakeLists.txt
hailort/libhailort/examples/c/vstreams_example/CMakeLists.txt
hailort/libhailort/examples/cpp/async_infer_example/CMakeLists.txt
hailort/libhailort/examples/cpp/async_infer_functionality_example/CMakeLists.txt
hailort/libhailort/examples/cpp/infer_pipeline_example/CMakeLists.txt
hailort/libhailort/examples/cpp/multi_device_example/CMakeLists.txt
hailort/libhailort/examples/cpp/multi_network_vstream_example/CMakeLists.txt
hailort/libhailort/examples/cpp/multi_process_example/CMakeLists.txt
hailort/libhailort/examples/cpp/notification_callback_example/CMakeLists.txt
hailort/libhailort/examples/cpp/power_measurement_example/CMakeLists.txt
hailort/libhailort/examples/cpp/raw_async_streams_multi_thread_example/CMakeLists.txt
hailort/libhailort/examples/cpp/raw_async_streams_single_thread_example/CMakeLists.txt
hailort/libhailort/examples/cpp/raw_streams_example/CMakeLists.txt
hailort/libhailort/examples/cpp/switch_network_groups_example/CMakeLists.txt
hailort/libhailort/examples/cpp/switch_network_groups_manually_example/CMakeLists.txt
hailort/libhailort/examples/cpp/vstreams_example/CMakeLists.txt
hailort/libhailort/src/vdevice/vdevice.cpp
hailort/libhailort/src/vdevice/vdevice_internal.hpp
hailort/scripts/download_firmware_eth.cmd
hailort/scripts/download_firmware_eth.sh
hailort/scripts/download_hefs.cmd
hailort/scripts/download_hefs.sh

index eb90050faeca0fe77db670ab917738f72912e39e..2170e21fb6b42c77ee27013e755b1442da452bfe 100644 (file)
@@ -31,7 +31,7 @@ endif()
 # Set firmware version
 add_definitions( -DFIRMWARE_VERSION_MAJOR=4 )
 add_definitions( -DFIRMWARE_VERSION_MINOR=16 )
-add_definitions( -DFIRMWARE_VERSION_REVISION=0 )
+add_definitions( -DFIRMWARE_VERSION_REVISION=1 )
 if(HAILO_BUILD_SERVICE)
     add_definitions( -DHAILO_SUPPORT_MULTI_PROCESS )
 endif()
index d40ec84d6c2866c94592768c7205c2d7146ec391..20402c41e7fc1007da25fe01cb307fe9ac428ae1 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 
 set(HAILORT_MAJOR_VERSION    4)
 set(HAILORT_MINOR_VERSION    16)
-set(HAILORT_REVISION_VERSION 0)
+set(HAILORT_REVISION_VERSION 1)
 
 # Add the cmake folder so the modules there are found
 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
index 6a278f2a72b8964303133eadace1621420bc2bbd..ba871c34ea023991a7c71a38434df56ef7049a1e 100644 (file)
@@ -8,7 +8,7 @@ if(NOT CMAKE_HOST_UNIX)
     message(FATAL_ERROR "Only unix hosts are supported, stopping build")
 endif()
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 # GST_PLUGIN_DEFINE needs PACKAGE to be defined
 set(GST_HAILO_PACKAGE_NAME "hailo")
index 4eae2b0b40df2ab7309e047bf21a5418f8abef26..3545fc169244bc4b84bb1ed17cdfce30518eed6c 100644 (file)
@@ -50,6 +50,7 @@ enum
     PROP_NMS_IOU_THRESHOLD,
     PROP_NMS_MAX_PROPOSALS_PER_CLASS,
     PROP_INPUT_FROM_META,
+    PROP_NO_TRANSFORM,
     PROP_MULTI_PROCESS_SERVICE,
 
     // Deprecated
@@ -269,20 +270,22 @@ static hailo_status gst_hailonet2_configure(GstHailoNet2 *self)
 
     // In RGB formats, Gstreamer is padding each row to 4.
     for (const auto &input_name : self->infer_model->get_input_names()) {
-        // TODO (HRT-12492): change transformations to be togglable
-        if (self->props.m_input_from_meta.get()) {
-            // do not apply transformations when taking input from meta
-            self->infer_model->input(input_name)->set_format_order(HAILO_FORMAT_ORDER_NHCW);
+        if(self->props.m_no_transform.get()) {
+            // In case transformation is disabled - format order will be the same as we get from the HW (stream info).
+            auto input_stream_infos = self->infer_model->hef().get_stream_info_by_name(input_name, HAILO_H2D_STREAM);
+            CHECK_EXPECTED_AS_STATUS(input_stream_infos);
+            self->infer_model->input(input_name)->set_format_order(input_stream_infos.value().format.order);
         } else if (self->infer_model->input(input_name)->format().order == HAILO_FORMAT_ORDER_NHWC) {
             self->infer_model->input(input_name)->set_format_order(HAILO_FORMAT_ORDER_RGB4);
         }
     }
 
-    if (self->props.m_input_from_meta.get()) {
+    if (self->props.m_no_transform.get()) {
         for (const auto &output_name : self->infer_model->get_output_names()) {
-            // TODO (HRT-12492): change transformations to be togglable
-            // do not apply transformations when taking output to meta
-            self->infer_model->output(output_name)->set_format_order(HAILO_FORMAT_ORDER_NHCW);
+            // In case transformation is disabled - format order will be the same as we get from the HW (stream info).
+            auto output_stream_infos = self->infer_model->hef().get_stream_info_by_name(output_name, HAILO_D2H_STREAM);
+            CHECK_EXPECTED_AS_STATUS(output_stream_infos);
+            self->infer_model->output(output_name)->set_format_order(output_stream_infos.value().format.order);
         }
     }
 
@@ -567,6 +570,12 @@ static void gst_hailonet2_set_property(GObject *object, guint property_id, const
         }
         self->props.m_input_from_meta = g_value_get_boolean(value);
         break;
+    case PROP_NO_TRANSFORM:
+        if (self->is_configured) {
+            g_warning("The network was already configured so disabling the transformation will not take place!");
+        }
+        self->props.m_no_transform = g_value_get_boolean(value);
+        break;
     case PROP_MULTI_PROCESS_SERVICE:
         if (self->is_configured) {
             g_warning("The network was already configured so changing the multi-process-service property will not take place!");
@@ -647,6 +656,9 @@ static void gst_hailonet2_get_property(GObject *object, guint property_id, GValu
     case PROP_INPUT_FROM_META:
         g_value_set_boolean(value, self->props.m_input_from_meta.get());
         break;
+    case PROP_NO_TRANSFORM:
+        g_value_set_boolean(value, self->props.m_no_transform.get());
+        break;
     case PROP_MULTI_PROCESS_SERVICE:
         g_value_set_boolean(value, self->props.m_multi_process_service.get());
         break;
@@ -746,6 +758,9 @@ static void gst_hailonet2_class_init(GstHailoNet2Class *klass)
     g_object_class_install_property(gobject_class, PROP_INPUT_FROM_META,
         g_param_spec_boolean("input-from-meta", "Enable input from meta", "Take network input from metadata instead of video frame.", false,
             (GParamFlags)(G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)));
+    g_object_class_install_property(gobject_class, PROP_NO_TRANSFORM,
+        g_param_spec_boolean("no-transform", "Disable transformations", "Format will remain the same as the HW format.", false,
+            (GParamFlags)(G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)));
 
     g_object_class_install_property(gobject_class, PROP_NMS_SCORE_THRESHOLD,
         g_param_spec_float("nms-score-threshold", "NMS score threshold", "Threshold used for filtering out candidates. Any box with score<TH is suppressed.",
index 6c0df95975c8083ab09fc68c0e2786335d02175b..daba88f7bfdfbb334223d2f0f860e18238140619 100644 (file)
@@ -72,7 +72,7 @@ public:
         m_scheduler_threshold(HAILO_DEFAULT_SCHEDULER_THRESHOLD), m_scheduler_priority(HAILO_SCHEDULER_PRIORITY_NORMAL),
         m_input_format_type(HAILO_FORMAT_TYPE_AUTO), m_output_format_type(HAILO_FORMAT_TYPE_AUTO),
         m_nms_score_threshold(0), m_nms_iou_threshold(0), m_nms_max_proposals_per_class(0), m_input_from_meta(false),
-        m_multi_process_service(HAILO_DEFAULT_MULTI_PROCESS_SERVICE),
+        m_no_transform(false), m_multi_process_service(HAILO_DEFAULT_MULTI_PROCESS_SERVICE),
         m_vdevice_key(DEFAULT_VDEVICE_KEY)
     {}
 
@@ -107,6 +107,7 @@ public:
     HailoElemProperty<gfloat> m_nms_iou_threshold;
     HailoElemProperty<guint32> m_nms_max_proposals_per_class;
     HailoElemProperty<gboolean> m_input_from_meta;
+    HailoElemProperty<gboolean> m_no_transform;
     HailoElemProperty<gboolean> m_multi_process_service;
 
     // Deprecated
index bbd7682b5347955c94e0cf83e08e6cf48a201654..196f9f42dfd110f6f6c07eb8fb7ccf22436ccb91 100644 (file)
@@ -1488,7 +1488,7 @@ class HailoFormatFlags(_pyhailort.FormatFlags):
 SUPPORTED_PROTOCOL_VERSION = 2
 SUPPORTED_FW_MAJOR = 4
 SUPPORTED_FW_MINOR = 16
-SUPPORTED_FW_REVISION = 0
+SUPPORTED_FW_REVISION = 1
 
 MEGA_MULTIPLIER = 1000.0 * 1000.0
 
index 52fa3118ea2940df7e0c5b53e8f85fdd88ee8134..4132ad20d004f9b4b63d5006fb2da61bff3b4d60 100644 (file)
@@ -69,6 +69,6 @@ if __name__ == "__main__":
             "linux_aarch64",
         ],
         url="https://hailo.ai/",
-        version="4.16.0",
+        version="4.16.1",
         zip_safe=False,
     )
index bef9d2a0dff1106360445a632381871526ec7047..836c11824e3c3f468196db2e171e63be9ec2195a 100644 (file)
@@ -49,7 +49,7 @@ set_target_properties(_pyhailort PROPERTIES
     # VISIBILITY_INLINES_HIDDEN YES
 )
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 target_link_libraries(_pyhailort PRIVATE HailoRT::libhailort)
 if(WIN32)
index 74737e1c8bfab4e713ec8ba765088816d28938a7..3d3be168d7055785f5e7687bbb0eef774f55a455 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(data_quantization_example.c PROPERTIES LANGUAGE C)
 
index 5fdc57ae0a06571b60153cb886c3d3e2933f1467..04b389e1b6b791dc20053be9757488913dc94879 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(infer_pipeline_example.c PROPERTIES LANGUAGE C)
 
index cf51c4c3137471c7b19633f6c63106d151d356f1..1d92d1099c666461671a8837fc3590b7b26402fa 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(multi_device_example.c PROPERTIES LANGUAGE C)
 
index 09d444b07f1243197efb011f4c0c4e861fa38b2b..e5f513011377148c83d09d4f8343a422b09de7c9 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 find_package(Threads REQUIRED)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(multi_network_vstream_example.c PROPERTIES LANGUAGE C)
 
index 6f5fdbe6ee5fa46c2eb000dcd3d2247d5d3d2c2f..2d62279896bca80c5cf614d2fa1482ef81a83bf7 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(notification_callback_example.c PROPERTIES LANGUAGE C)
 
index e4331d7bcb488595168a426eae40fce6f0cf7faa..314f8dac84095b7f3293e4be171093ee8e04bf54 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(power_measurement_example.c PROPERTIES LANGUAGE C)
 
index 962958f22b33ebb5fc641528ac76871d791f1d1a..137a2d49672519a251b5671826a59ff09297bac0 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(raw_async_streams_single_thread_example.c PROPERTIES LANGUAGE C)
 
index 2586abfa104611af0155f921337a2a2817449c2d..d98dc87938194fed5d312a6df690678cf726d7a5 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(raw_streams_example.c PROPERTIES LANGUAGE C)
 
index a00d43e401da7ffaed6f6fb0aded89dafec46272..4f4d7a228c2253ca42ca139f71bf5bf3da07b5e6 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(switch_network_groups_example.c PROPERTIES LANGUAGE C)
 
index 2eb0b1d7c88f5cd3fcbafacfedc454ac7b59df8f..dc3c3d0528e6985b2f315b81459611a522a3f0e2 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(switch_network_groups_manually_example.c PROPERTIES LANGUAGE C)
 
index 3eea54f8a1df2b5627b2f03fa8e4f9ca90de1eb9..41f487eec2839078e18bbff5703b7613604e9f85 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 SET_SOURCE_FILES_PROPERTIES(vstreams_example.c PROPERTIES LANGUAGE C)
 
index 9335a9960e5cf6b4cc93e32de8b6d0a7329d39d9..14950564c7b1fcaa536f607605ca9dbd8c1c6ca7 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_async_infer_example async_infer_example.cpp)
 target_link_libraries(cpp_async_infer_example PRIVATE HailoRT::libhailort)
index bbc6736a58d88944d806db883f4b73ea32742671..ca5993188d461d1c86763cb4f5f7c59eca67e7be 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_async_infer_functionality_example async_infer_functionality_example.cpp)
 target_link_libraries(cpp_async_infer_functionality_example PRIVATE HailoRT::libhailort)
index 1ffe855ab40d7f281279fafad04718b1d42bc35a..bd6ef4d84092caac4f72a78d9c49544690e42f18 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_infer_pipeline_example infer_pipeline_example.cpp)
 target_link_libraries(cpp_infer_pipeline_example PRIVATE HailoRT::libhailort)
index 13cf2f372a1255c556e7c62caf83e89055625942..cf7b65248ca288c608c78a099c8cdc285a9b65dd 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_multi_device_example multi_device_example.cpp)
 target_link_libraries(cpp_multi_device_example PRIVATE HailoRT::libhailort Threads::Threads)
index d5c93a4fa94bf15e0557629b91c4944c6dc067f1..96b134993479d46088e77d359bf5bda6a03c2f0d 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 find_package(Threads REQUIRED)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_multi_network_vstream_example multi_network_vstream_example.cpp)
 target_link_libraries(cpp_multi_network_vstream_example PRIVATE HailoRT::libhailort Threads::Threads)
index 100fb66bfde94c8eba517a081e84cd1c6709630a..c24a4e873f746c12332dcf0e507931e98ca5f31b 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_multi_process_example multi_process_example.cpp)
 target_link_libraries(cpp_multi_process_example PRIVATE HailoRT::libhailort Threads::Threads)
index d123da9c3cba1302239d7469809083f6508d87d2..31f4cf9253b1e97d48f9985447963e044a11b4ff 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_notification_callback_example notification_callback_example.cpp)
 target_link_libraries(cpp_notification_callback_example PRIVATE HailoRT::libhailort)
index b6ebeb0e666b9e4b534f7432e55cc2a1e34e4565..4493ef14c8b814b7139c86344f4c88f3d8d931e8 100644 (file)
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.0.0)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_power_measurement_example power_measurement_example.cpp)
 target_link_libraries(cpp_power_measurement_example PRIVATE HailoRT::libhailort)
index 428d8c174ef3ccaf20c933ffa9a198a05655e5f8..adb93ba34cfb354b8740591df835734a493d2a16 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_raw_async_streams_multi_thread_example raw_async_streams_multi_thread_example.cpp)
 target_link_libraries(cpp_raw_async_streams_multi_thread_example PRIVATE HailoRT::libhailort Threads::Threads)
index 3d20fcc12b9cd2a2fa21850cf8b3b007c1d185e3..bde7dba037a94b89f0082a1c3a315dff0d8d513a 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_raw_async_streams_single_thread_example raw_async_streams_single_thread_example.cpp)
 target_link_libraries(cpp_raw_async_streams_single_thread_example PRIVATE HailoRT::libhailort Threads::Threads)
index 1debea89fc464c9c62fded4b03666dbe2069f5a0..b426240f6098daf9b464a44d80770d035968ab07 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_raw_streams_example raw_streams_example.cpp)
 target_link_libraries(cpp_raw_streams_example PRIVATE HailoRT::libhailort Threads::Threads)
index 4dea0c1983f9f0e2326460096f3bc2537dbd12dd..8fed362dc3b7d4a353a7092b355578cff321701c 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_switch_network_groups_example switch_network_groups_example.cpp)
 target_link_libraries(cpp_switch_network_groups_example PRIVATE HailoRT::libhailort Threads::Threads)
index fd319e3c8f9479632ca36300807ea51d84be44f8..ec957697c7289371739817dc3904daf66a4ec4a4 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 find_package(Threads REQUIRED)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_switch_network_groups_manually_example switch_network_groups_manually_example.cpp)
 target_link_libraries(cpp_switch_network_groups_manually_example PRIVATE HailoRT::libhailort Threads::Threads)
index ee7a6695d66b7ecce7554c7c52154d649f70fc15..8ef9e3af3eef6b03b0698ec46402d1644ce95e34 100644 (file)
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0.0)
 set(THREADS_PREFER_PTHREAD_FLAG ON)
 find_package(Threads REQUIRED)
 
-find_package(HailoRT 4.16.0 EXACT REQUIRED)
+find_package(HailoRT 4.16.1 EXACT REQUIRED)
 
 add_executable(cpp_vstreams_example vstreams_example.cpp)
 target_link_libraries(cpp_vstreams_example PRIVATE HailoRT::libhailort Threads::Threads)
index 1b541319a2372e8c181dbc5e1839d7b8693086d2..f6bc795e4262a9c6f4db091a8a0c2596860da783 100644 (file)
@@ -223,7 +223,8 @@ VDeviceClient::VDeviceClient(std::unique_ptr<HailoRtRpcClient> client, VDeviceId
         m_client(std::move(client)),
         m_identifier(std::move(identifier)),
         m_devices(std::move(devices)),
-        m_is_listener_thread_running(false)
+        m_is_listener_thread_running(false),
+        m_should_use_listener_thread(false)
 {}
 
 VDeviceClient::~VDeviceClient()
@@ -288,6 +289,7 @@ hailo_status VDeviceClient::after_fork_in_parent()
 hailo_status VDeviceClient::after_fork_in_child()
 {
     HailoRtRpcClientUtils::get_instance().after_fork_in_child();
+
     auto listener_status = start_listener_thread(m_identifier);
     CHECK_SUCCESS(listener_status);
 
@@ -347,6 +349,7 @@ Expected<ConfiguredNetworkGroupVector> VDeviceClient::configure(Hef &hef,
     // Init listener thread only in case configure happens with async api
     if ((configure_params.size() > 0) &&
             configure_params.begin()->second.stream_params_by_name.begin()->second.flags == HAILO_STREAM_FLAGS_ASYNC) {
+        m_should_use_listener_thread = true;
         auto init_status = start_listener_thread(m_identifier);
         CHECK_SUCCESS_AS_EXPECTED(init_status);
     }
@@ -356,7 +359,7 @@ Expected<ConfiguredNetworkGroupVector> VDeviceClient::configure(Hef &hef,
 
 hailo_status VDeviceClient::start_listener_thread(VDeviceIdentifier identifier)
 {
-    if (m_is_listener_thread_running) {
+    if (!m_should_use_listener_thread || m_is_listener_thread_running) {
         return HAILO_SUCCESS;
     }
 
index 4e5ed9e51f191c6e372b6c9dacdc77d1f682f940..071d7949dc828f2024c6321394a8d4d9657629d7 100644 (file)
@@ -179,6 +179,7 @@ private:
 
     AsyncThreadPtr<hailo_status> m_cb_listener_thread;
     std::atomic_bool m_is_listener_thread_running;
+    std::atomic_bool m_should_use_listener_thread; // True only on async inference
 };
 
 #endif // HAILO_SUPPORT_MULTI_PROCESS
index 9c339256d30c59866eaedb3cdd9827665befbb98..be29d8452fb7e589d5897dad024972734a6cfc75 100644 (file)
@@ -2,7 +2,7 @@
 @ECHO OFF
 
 set BASE_URI=https://hailo-hailort.s3.eu-west-2.amazonaws.com
-set HRT_VERSION=4.16.0
+set HRT_VERSION=4.16.1
 set FW_DIR=Hailo8/%HRT_VERSION%/FW
 set FW=hailo8_fw.%HRT_VERSION%_eth.bin
 
index 572d3b675d299f2a6310b12bf13b2e986a697d8b..4c07f61cf01135c01b47b96edb13fe87b6c3329d 100755 (executable)
@@ -2,7 +2,7 @@
 set -e
 
 readonly BASE_URI="https://hailo-hailort.s3.eu-west-2.amazonaws.com"
-readonly HRT_VERSION=4.16.0
+readonly HRT_VERSION=4.16.1
 readonly FW_AWS_DIR="Hailo8/${HRT_VERSION}/FW"
 readonly FW="hailo8_fw.${HRT_VERSION}_eth.bin"
 
index 3fb8cacee3c64a44e54d4c364a65be497551e8b8..ac905106e561cae56afd7245dee148fec586eed2 100644 (file)
@@ -1,7 +1,7 @@
 :: cmd
 @ECHO OFF
 set BASE_URI=https://hailo-hailort.s3.eu-west-2.amazonaws.com
-set HRT_VERSION=4.16.0
+set HRT_VERSION=4.16.1
 set REMOTE_HEF_DIR=Hailo8/%HRT_VERSION%/HEFS
 set LOCAL_EXAMPLES_HEF_DIR=..\libhailort\examples\hefs
 set LOCAL_TUTORIALS_HEF_DIR=..\libhailort\bindings\python\platform\hailo_tutorials\hefs
index 47d3b93eb470134ce8c6718e7fe058f321889c9f..8dd4a80b9047e20dc1cc7904e8a85cc2f825aa1a 100755 (executable)
@@ -2,7 +2,7 @@
 set -e
 
 readonly BASE_URI="https://hailo-hailort.s3.eu-west-2.amazonaws.com"
-readonly HRT_VERSION=4.16.0
+readonly HRT_VERSION=4.16.1
 readonly REMOTE_HEF_DIR="Hailo8/${HRT_VERSION}/HEFS"
 readonly LOCAL_EXAMPLES_HEF_DIR="../libhailort/examples/hefs"
 readonly LOCAL_TUTORIALS_HEF_DIR="../libhailort/bindings/python/platform/hailo_tutorials/hefs"