Skip to content
This repository was archived by the owner on Jan 10, 2023. It is now read-only.

Commit 70b1a9d

Browse files
committed
Drop 14.1
1 parent a9197ba commit 70b1a9d

File tree

729 files changed

+104513
-874
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

729 files changed

+104513
-874
lines changed

CMakeLists.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,13 @@ mark_as_advanced(CLDNN__INCLUDE_CORE)
406406

407407
# ======================================================================================================
408408

409+
# Include and build: Serialization feature of clDNN framework.
410+
set(CLDNN__INCLUDE_SERIALIZATION ON CACHE BOOL "Include and build: clDNN serialization feature.")
411+
mark_as_advanced(CLDNN__INCLUDE_SERIALIZATION)
412+
413+
# ======================================================================================================
414+
415+
409416
# Include and build: Kernel selector for clDNN framework.
410417
set(CLDNN__INCLUDE_KERNEL_SELECTOR ON CACHE BOOL "Include and build: clDNN kernel selector.")
411418
mark_as_advanced(CLDNN__INCLUDE_KERNEL_SELECTOR)
@@ -613,6 +620,9 @@ set(Boost_USE_STATIC_LIBS ON)
613620
set(Boost_USE_DEBUG_RUNTIME ON)
614621
set(Boost_USE_STATIC_RUNTIME ${CLDNN__COMPILE_LINK_USE_STATIC_RUNTIME})
615622
set(CLDNN__BOOST_USAGE system date_time program_options filesystem)
623+
if(CLDNN__INCLUDE_SERIALIZATION)
624+
list(APPEND CLDNN__BOOST_USAGE serialization)
625+
endif()
616626
find_package(Boost "${CLDNN__BOOST_VERSION}" EXACT REQUIRED
617627
COMPONENTS ${CLDNN__BOOST_USAGE}
618628
)
@@ -722,6 +732,7 @@ message(STATUS "[clDNN] - boost ver. used to build: ${CLDNN__BOOST_VER
722732
message(STATUS "[clDNN]")
723733
message(STATUS "[clDNN] - Include/Build cldnn core: ${CLDNN__INCLUDE_CORE}")
724734
message(STATUS "[clDNN] - Include/Build kernel selector: ${CLDNN__INCLUDE_KERNEL_SELECTOR}")
735+
message(STATUS "[clDNN] - Include/Build serialization: ${CLDNN__INCLUDE_SERIALIZATION}")
725736
message(STATUS "[clDNN] - Include/Build tests: ${CLDNN__INCLUDE_TESTS}")
726737
message(STATUS "[clDNN] - Include/Build core internal tests: ${CLDNN__INCLUDE_CORE_INTERNAL_TESTS}")
727738
message(STATUS "[clDNN] - Include/Build tutorial: ${CLDNN__INCLUDE_TUTORIAL}")
@@ -882,6 +893,7 @@ foreach(__CLDNN_CompilerFlagName IN ITEMS "CMAKE_CXX_FLAGS" "CMAKE_C_FLAGS")
882893
SET_RAW
883894
"/arch:SSE2"
884895
"/sdl"
896+
"/bigobj"
885897
)
886898
else()
887899
intel_config_flag_apply_settings(
@@ -890,6 +902,7 @@ foreach(__CLDNN_CompilerFlagName IN ITEMS "CMAKE_CXX_FLAGS" "CMAKE_C_FLAGS")
890902
ALL_PATTERN ""
891903
SET_RAW
892904
"/sdl"
905+
"/bigobj"
893906
)
894907
endif()
895908
endif()

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,17 @@ You can find more information [here](https://software.intel.com/en-us/openvino-t
4545

4646
## Changelog
4747

48+
### Drop 14.1
49+
New features:
50+
- network serialization
51+
- 3D support for: Acitvation, Reorder, Eltwise, Reshape, Deconvolution
52+
Bug fixes:
53+
- concatenation fix for different input formats
54+
UX:
55+
- added 2019.4 intel ocl icd
56+
- refactored bfyx_f16 format
57+
- added i32 and i64 support for select primitive
58+
4859
### Drop 14.0
4960
New features:
5061
- 3 spatial dimensions support in convolution primitive (3D convolution)

api/C/cldnn.h

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,6 @@ typedef enum /*:int32_t*/
213213
cldnn_build_option_tuning_config, ///< Tuning config.
214214
cldnn_build_option_graph_dumps_dir, ///< Specifies a directory to which stages of network compilation should be dumped.
215215
cldnn_build_option_serialization, ///< Specifies a name of files to which serialization should be dumped.
216-
cldnn_build_option_load_program, ///< Specifies a name of load_program process.
217216
cldnn_build_option_learning_config, ///< User defined learning parameters.
218217
cldnn_build_option_detection_output_gpu ///< Run detection output layer always on GPU, regardless performance
219218
} cldnn_build_option_type;
@@ -280,7 +279,6 @@ typedef enum /*:int32_t*/
280279
cldnn_format_o_i_yx_i16_o16,///< format used for blocked convolution
281280
cldnn_format_os_iyx_osv16, ///< format used only for convolution weights: os - output feature maps slice, i - input feature maps, yx - spatials, sv16 - 16 values of single slice.
282281
///< \n \image html os_iyx_osv16.jpg
283-
cldnn_format_oiyx_o16, ///< format used only for convolution weights: os - output feature maps slice, i - input feature maps, yx - spatials, sv16 - 16 values of single slice.
284282
cldnn_format_os_iyx_osv32, ///< format used only for convolution weights: os - output feature maps slice, i - input feature maps, yx - spatials, sv32 - 32 values of single slice.
285283
cldnn_format_os_iyx_osv64, ///< format used only for convolution weights: os - output feature maps slice, i - input feature maps, yx - spatials, sv64 - 64 values of single slice.
286284
cldnn_format_bs_xs_xsv8_bsv8, ///< format used only for fully connected weights: bs - batch slice, xs - x slice, bsv8 - 8 values of single slice.
@@ -649,6 +647,11 @@ CLDNN_API void cldnn_get_event_profiling_info(cldnn_event event, cldnn_profiling
649647
/// @param[in] options_num Number of elements in the @p options array.
650648
CLDNN_API cldnn_program cldnn_build_program(cldnn_engine engine, cldnn_topology topology, cldnn_build_option* options, size_t options_num, cldnn_status* status);
651649

650+
/// @brief Builds executable program based on the one serialized to file.
651+
/// @param[in] engine The engine which will be used to build the program.
652+
/// @param[in] file_name The base name of files from which program will be build.
653+
CLDNN_API cldnn_program cldnn_build_serialized_program(cldnn_engine engine, const char* file_name, const char* dump_path, cldnn_status* status);
654+
652655
/// @brief Increment reference counter for the program object.
653656
CLDNN_API void cldnn_retain_program(cldnn_program program, cldnn_status* status);
654657

@@ -666,6 +669,11 @@ CLDNN_API void cldnn_release_program(cldnn_program program, cldnn_status* status
666669
/// @param[in] options_num Number of elements in the @p options array.
667670
CLDNN_API cldnn_network cldnn_build_network(cldnn_engine engine, cldnn_topology topology, cldnn_build_option* options, size_t options_num, cldnn_status* status);
668671

672+
/// @brief Builds executable network based on serialized to file program.
673+
/// @param[in] engine The engine which will be used to build the program.
674+
/// @param[in] file_name The base name of files from which program will be build.
675+
CLDNN_API cldnn_network cldnn_build_serialized_network(cldnn_engine engine, const char* file_name, const char* dump_path, cldnn_status* status);
676+
669677
/// @brief Allocates memory for a new network which will be able to execute specified @p program.
670678
/// @param[in] program The program object which holds binaries compiled from some topology and engine. Multiple network objects can share the same program.
671679
CLDNN_API cldnn_network cldnn_allocate_network(cldnn_program program, cldnn_status* status);

api/CPP/activation.hpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,16 @@ struct activation : public primitive_base<activation, CLDNN_PRIMITIVE_DESC(activ
114114
dto.additional_params = additional_params;
115115
dto.additional_params_input = additional_params_input.c_str();
116116
}
117+
private:
118+
activation() : primitive_base() {} // Constructor necessary for serialization process
119+
CLDNN_SERIALIZATION_MEMBERS(
120+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(activation) & CLDNN_SERIALIZATION_NVP(activation_func)
121+
& CLDNN_SERIALIZATION_NVP(additional_params.a) & CLDNN_SERIALIZATION_NVP(additional_params.b)
122+
& CLDNN_SERIALIZATION_NVP(additional_params_input);
123+
)
117124
};
118125
/// @}
119126
/// @}
120127
/// @}
121-
}
128+
}
129+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(activation)

api/CPP/activation_grad.hpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,15 @@ struct activation_grad : public primitive_base<activation_grad, CLDNN_PRIMITIVE_
116116
dto.additional_params = additional_params;
117117
dto.additional_params_input = additional_params_input.c_str();
118118
}
119+
private:
120+
activation_grad() : primitive_base() {} // Constructor necessary for serialization process
121+
CLDNN_SERIALIZATION_MEMBERS(
122+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(activation_grad) & CLDNN_SERIALIZATION_NVP(activation_grad_func)
123+
& CLDNN_SERIALIZATION_NVP(additional_params.a) & CLDNN_SERIALIZATION_NVP(additional_params.b) & CLDNN_SERIALIZATION_NVP(additional_params_input);
124+
)
119125
};
120126
/// @}
121127
/// @}
122128
/// @}
123-
}
129+
}
130+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(activation_grad)

api/CPP/apply_adam.hpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,17 @@ struct apply_adam : public primitive_base<apply_adam, CLDNN_PRIMITIVE_DESC(apply
139139
dto.epsilon = epsilon;
140140
dto.dependency_id = dependency_id.c_str();
141141
}
142+
private:
143+
apply_adam() : primitive_base() {} // Constructor necessary for serialization process
144+
CLDNN_SERIALIZATION_MEMBERS(
145+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(apply_adam) & CLDNN_SERIALIZATION_NVP(m) & CLDNN_SERIALIZATION_NVP(v)
146+
& CLDNN_SERIALIZATION_NVP(beta1_power) & CLDNN_SERIALIZATION_NVP(beta2_power) & CLDNN_SERIALIZATION_NVP(lr)
147+
& CLDNN_SERIALIZATION_NVP(beta1) & CLDNN_SERIALIZATION_NVP(beta2) & CLDNN_SERIALIZATION_NVP(epsilon)
148+
& CLDNN_SERIALIZATION_NVP(dependency_id);
149+
)
142150
};
143151
/// @}
144152
/// @}
145153
/// @}
146154
}
155+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(apply_adam)

api/CPP/arg_max_min.hpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,15 @@ namespace cldnn
104104
dto.with_axis = with_axis;
105105
dto.axis = static_cast<cldnn_arg_max_min_axis>(axis);
106106
}
107+
private:
108+
arg_max_min() : primitive_base() {} // Constructor necessary for serialization process
109+
CLDNN_SERIALIZATION_MEMBERS(
110+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(arg_max_min) & CLDNN_SERIALIZATION_NVP(top_k)
111+
& CLDNN_SERIALIZATION_NVP(output_type) & CLDNN_SERIALIZATION_NVP(axis) & CLDNN_SERIALIZATION_NVP(with_axis);
112+
)
107113
};
108114
/// @}
109115
/// @}
110116
/// @}
111-
}
117+
}
118+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(arg_max_min)

api/CPP/average_unpooling.hpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,15 @@ struct average_unpooling : public primitive_base<average_unpooling, CLDNN_PRIMIT
7878
dto.size = size;
7979
dto.output_size = output_size;
8080
}
81+
private:
82+
average_unpooling() : primitive_base() {} // Constructor necessary for serialization process
83+
CLDNN_SERIALIZATION_MEMBERS(
84+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(average_unpooling) & CLDNN_SERIALIZATION_NVP(stride)
85+
& CLDNN_SERIALIZATION_NVP(size) & CLDNN_SERIALIZATION_NVP(output_size);
86+
)
8187
};
8288
/// @}
8389
/// @}
8490
/// @}
85-
}
91+
}
92+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(average_unpooling)

api/CPP/batch_norm.hpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,8 +224,16 @@ struct batch_norm : public primitive_base<batch_norm, CLDNN_PRIMITIVE_DESC(batch
224224
dto.shift = shift.c_str();
225225
dto.epsilon = epsilon;
226226
}
227+
private:
228+
batch_norm() : primitive_base() {} // Constructor necessary for serialization process
229+
CLDNN_SERIALIZATION_MEMBERS(
230+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(batch_norm) & CLDNN_SERIALIZATION_NVP(mean)
231+
& CLDNN_SERIALIZATION_NVP(variance) & CLDNN_SERIALIZATION_NVP(scale) & CLDNN_SERIALIZATION_NVP(shift)
232+
& CLDNN_SERIALIZATION_NVP(inv_variance) & CLDNN_SERIALIZATION_NVP(epsilon);
233+
)
227234
};
228235
/// @}
229236
/// @}
230237
/// @}
231238
}
239+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(batch_norm)

api/CPP/batch_norm_grad.hpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,14 @@ struct batch_norm_grad : public primitive_base<batch_norm_grad, CLDNN_PRIMITIVE_
7272
{
7373
dto.inv_variance = inv_variance.c_str();
7474
}
75+
private:
76+
batch_norm_grad() : primitive_base() {} // Constructor necessary for serialization process
77+
CLDNN_SERIALIZATION_MEMBERS(
78+
ar & CLDNN_SERIALIZATION_BASE_OBJECT_NVP_PRIMITIVE_BASE(batch_norm_grad) & CLDNN_SERIALIZATION_NVP(inv_variance);
79+
)
7580
};
7681
/// @}
7782
/// @}
7883
/// @}
79-
}
84+
}
85+
CLDNN_SERIALIZATION_EXPORT_NODE_KEY(batch_norm_grad)

0 commit comments

Comments
 (0)