From 16b37527906c68885f81a8db35f9d6040d73efec Mon Sep 17 00:00:00 2001 From: SiCong Li Date: Tue, 18 Jul 2023 17:56:49 +0100 Subject: Port ElementwiseBinary to CKW part 2 * Add fp16 support * Implement broadcasting to elementwise binary * Implement kernel name and kernel config id * Always use explicit cast in ckw unary, binary and ternary elementwise functions. This is to address the accidental use of double literals, with other benefits. * Refactor TypeConverter for smaller includes Resolves COMPMID-6260 Change-Id: I26b726746f8c0dd7b5942ad379d56f4d7642d15f Signed-off-by: SiCong Li Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/9999 Tested-by: Arm Jenkins Reviewed-by: Jakub Sujak Reviewed-by: Viet-Hoa Do Comments-Addressed: Arm Jenkins Benchmark: Arm Jenkins --- src/core/utils/StringUtils.cpp | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'src/core/utils') diff --git a/src/core/utils/StringUtils.cpp b/src/core/utils/StringUtils.cpp index 938ee09232..6d05c9b64e 100644 --- a/src/core/utils/StringUtils.cpp +++ b/src/core/utils/StringUtils.cpp @@ -23,13 +23,14 @@ */ #include "arm_compute/core/utils/StringUtils.h" -#include -#include #include #include #include #include +#include #include +#include +#include #include namespace arm_compute @@ -61,4 +62,20 @@ std::string float_to_string_with_full_precision(float val) return ss.str(); } + +std::string join(const std::vector strings, const std::string &sep) +{ + if(strings.empty()) + { + return ""; + } + return std::accumulate( + std::next(strings.begin()), + strings.end(), + strings.at(0), + [&sep](const std::string & a, const std::string & b) + { + return a + sep + b; + }); +} } -- cgit v1.2.1