From patchwork Tue Feb 7 16:00:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srikanth Yalavarthi X-Patchwork-Id: 123314 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 414B841C30; Tue, 7 Feb 2023 17:00:34 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3DD5642B8E; Tue, 7 Feb 2023 17:00:24 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 4D0C840F18 for ; Tue, 7 Feb 2023 17:00:20 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 317EdPZx011264 for ; Tue, 7 Feb 2023 08:00:17 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type; s=pfpt0220; bh=fbCHZsvAtzr3KkoOMIh7TJmfwOSVRoJIF5SdoG1Ubsw=; b=ifE5+TP8Z+VmSTHu8BY09tjvtC8MNovnYhRoLCwlSD/ojEnPkO5KzKxYcSy8b4Ymzjzv ELgmGGBq4xzY5YoYGwyD+/GA4+xQERyIDp/RVs+BJnDWe1YTZOG4cIBAtPguhWKFMc5h z95AWGR/veQ+udOVgzpb/pzBhvb+yolRIJO+YFr0mX/dGO7HiXxk0AqgnGeOc9J1tKiY r6UltI+2qYYdo4lxMFYFtF66qP8CTR4Wvk8iQiQrM9qTpsQeDAwW6LoKdMqoHviM19fx SRjAZpaUVbEPX6Vn0jm1/IXAT1WSpbgqUyQtljNYu71MZeXs+IuhBqPIfQKNywLEAme6 rQ== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3nkdyrsrbj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Tue, 07 Feb 2023 08:00:16 -0800 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Tue, 7 Feb 2023 08:00:15 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.42 via Frontend Transport; Tue, 7 Feb 2023 08:00:15 -0800 Received: from ml-host-33.caveonetworks.com (unknown [10.110.143.233]) by maili.marvell.com (Postfix) with ESMTP id 409733F70F3; Tue, 7 Feb 2023 08:00:10 -0800 (PST) From: Srikanth Yalavarthi To: CC: , , , , , , "Srikanth Yalavarthi" Subject: [PATCH v6 0/4] Implementation of ML common code Date: Tue, 7 Feb 2023 08:00:04 -0800 Message-ID: <20230207160008.30182-1-syalavarthi@marvell.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20221208193532.16718-1-syalavarthi@marvell.com> References: <20221208193532.16718-1-syalavarthi@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: R_N-ks8mj2NMd_XfGPv-0HLycIBRFR4u X-Proofpoint-GUID: R_N-ks8mj2NMd_XfGPv-0HLycIBRFR4u X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-02-07_07,2023-02-06_03,2022-06-22_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Machine Learning common code ---------------------------- This patch series implements the common ML code that can be used by ML drivers. Common code include functions to convert ML IO type to string, IO format type to string, function get size of ML IO type, and functions for converting data types from higher precision to lower precision and vice-versa. Data type conversion functions support handling float32, float16, bfloat16, uint8, int8, uint16 and int16. Two versions of conversion functions are implemented in the series, generic scalar version and vector version using Arm NEON intrinsics. When compiling DPDK for platform supporting Arm NEON, vector NEON version of the routines would be enabled. Compilation would fall back to generic scalar versions on platform like x86_64 / PowerPC etc., that don't support Arm NEON. Srikanth Yalavarthi (4): mldev: add headers for internal ML functions mldev: implement ML IO type handling functions mldev: add scalar type conversion functions mldev: add Arm NEON type conversion routines doc/guides/rel_notes/release_23_03.rst | 5 + lib/mldev/meson.build | 7 + lib/mldev/mldev_utils.c | 118 ++++ lib/mldev/mldev_utils.h | 345 ++++++++++ lib/mldev/mldev_utils_neon.c | 873 +++++++++++++++++++++++++ lib/mldev/mldev_utils_scalar.c | 720 ++++++++++++++++++++ lib/mldev/version.map | 16 + 7 files changed, 2084 insertions(+) create mode 100644 lib/mldev/mldev_utils.c create mode 100644 lib/mldev/mldev_utils.h create mode 100644 lib/mldev/mldev_utils_neon.c create mode 100644 lib/mldev/mldev_utils_scalar.c --- 2.17.1