Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4266536pxj; Mon, 21 Jun 2021 18:11:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxPgsnWTdvRq71AGD3IuZuqKc0zJKIX3qSIBRV+Lq1EkrkwmwXjya/Ndjp2GV7bdR88b+/b X-Received: by 2002:a02:5b45:: with SMTP id g66mr1278054jab.62.1624324274704; Mon, 21 Jun 2021 18:11:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1624324274; cv=none; d=google.com; s=arc-20160816; b=mdpf1324tr0kLfQvABwpErLiIw7isbNSiOyF2FEn4Fow9E08AQmO+qkzMF7/mR4n4k yc3C8AoXMaptTbFgiVejjobIRBgDxytuKGG5suxdXoT2LkqUsIJra+UnjVoshhrHAVOT mNhZMEm46dlSSimisAHabEgfEZ1MJYCdinpCVvOMCsUvN6GS+RR5q0dW+phY8YYESWzG OSjKSlIMDM5pVgmM/OuyTHKb6PiN0wvZ3OfKAZypLm7gQi+WIhs6bROPtaaTIBHI/BgZ OThG1ajqT6PQF0IreJTzDFuSmaaM35/8Sk32jUf8eWjl3LghTNI8/0h+rizXRGKeEHKQ lF3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:message-id:references:in-reply-to :organization:subject:cc:to:from:date:content-transfer-encoding :mime-version:dkim-signature; bh=l9hlx9byShzufmeYu3yMR11R0sRjBx6GHIU5PQ1UA1M=; b=BIJf8VIMGIxwKl3vKugvZavyXOR6+pak5VL5dUJjB2B0al7LQxC+VrwbGspdw4Vm63 61N7bdf+fK/qUpmdAhu4bZWZQYv6lx+fIjGNj9wqPndBdf5SAQ2+spEVy4U+seH5766h uBGCJOVho57p24suf1zJtrRlzISuFMlUqL8Q4DcO3EmcHZ6JGbr43n0kUPobe89PQD+N R3hjvgmgOTuoORXOtOyRg7GaD9jC+62sIR5wFefYICIE5gSmU7nZcr59+XCAFbFYiTPN Z2gEhwMq+AiRy2W80Gp5RqIDnf8XL6PDyX/tyVYTAYdmWcFAt1CqH1gZSw3/zADRLHNE S13Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail (test mode) header.i=@ics.forth.gr header.s=av header.b=gNptt+jk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ics.forth.gr Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f23si8126136ioo.70.2021.06.21.18.11.02; Mon, 21 Jun 2021 18:11:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail (test mode) header.i=@ics.forth.gr header.s=av header.b=gNptt+jk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ics.forth.gr Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229915AbhFVBLh (ORCPT + 99 others); Mon, 21 Jun 2021 21:11:37 -0400 Received: from mailgate.ics.forth.gr ([139.91.1.2]:19606 "EHLO mailgate.ics.forth.gr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229663AbhFVBLg (ORCPT ); Mon, 21 Jun 2021 21:11:36 -0400 Received: from av3.ics.forth.gr (av3in.ics.forth.gr [139.91.1.77]) by mailgate.ics.forth.gr (8.15.2/ICS-FORTH/V10-1.8-GATE) with ESMTP id 15M19J8i036069 for ; Tue, 22 Jun 2021 04:09:19 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; d=ics.forth.gr; s=av; c=relaxed/simple; q=dns/txt; i=@ics.forth.gr; t=1624324154; x=1626916154; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:Cc:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=EOqcGFuYtBWb7hk+r1SbucjBncFWjcMhcQi3y8BZY7g=; b=gNptt+jkmO7TyMLwKjxOlDW1FM4XhF2Vz9cP0Rc0/SnomfO1DkLuY3Vo2T8im9Q2 Tx2oa/L1a9GiMfB0gYXJNXjq/CJYU+pBR+6uivP6IQfAT2oT2CE8J3hfyvm6g4fy DjYdpKOgN2VDB9fNiuyrDY8n5tn6dUf38OHt8+U4mo0tCP4pyePnQmtXeoVnnkfa 7CHBRys2PX0Pf4b9XP1gycmAHmw1idsVdo42x0968/QO8ZTqK+VPtap5aUD///3L +9JjqOPTA3YKOTRVGe3FWp1c+cZAS9daeggKVTg5CA+wnkqgY5rGZZbiXNob4TDg b0gf+/uR+VMxiTqNdxZ4vQ==; X-AuditID: 8b5b014d-96ef2700000067b6-7f-60d1383af649 Received: from enigma.ics.forth.gr (enigma.ics.forth.gr [139.91.151.35]) by av3.ics.forth.gr (Symantec Messaging Gateway) with SMTP id 50.70.26550.A3831D06; Tue, 22 Jun 2021 04:09:14 +0300 (EEST) X-ICS-AUTH-INFO: Authenticated user: at ics.forth.gr MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Tue, 22 Jun 2021 04:09:14 +0300 From: Nick Kossifidis To: Matteo Croce Cc: linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , Albert Ou , Atish Patra , Emil Renner Berthing , Akira Tsukamoto , Drew Fustini , Bin Meng , David Laight , Guo Ren Subject: Re: [PATCH v3 0/3] riscv: optimized mem* functions Organization: FORTH In-Reply-To: <20210617152754.17960-1-mcroce@linux.microsoft.com> References: <20210617152754.17960-1-mcroce@linux.microsoft.com> Message-ID: X-Sender: mick@mailhost.ics.forth.gr User-Agent: Roundcube Webmail/1.3.16 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprBIsWRmVeSWpSXmKPExsXSHT1dWdfK4mKCwYTpuhbb3l1lsdj6exa7 xaIV31kspvbEW+xYupnJ4t6KZewWL/Y2slg8WTOT0aJj11cWi8u75rBZbPvcwmZx8dd8RouX l3uYLdpm8TvwefTPnsLm8e73MkaPNy9fsngc7vjC7tHR94/FY+esu+wem1Z1snn82n6UyWPz knqPS83X2T0+b5LzaD/QzRTAE8Vlk5Kak1mWWqRvl8CVsevWI/aC06wV1xv/sDcwnmDpYuTk kBAwkVixuYG9i5GLQ0jgKKPE2lmzGCESphKz93aC2bwCghInZz4Ba2AWsJCYemU/I4QtL9G8 dTYziM0ioCpx/PphNhCbTUBTYv6lg2D1IgK6Ehc/HAZbwCwwnUXiV+9usCJhAWuJDz8/gg3i FxCW+HT3IiuIzSngIHGvcQlYjZCAvcT+bd9ZIY5wkTj7qJUJ4jgViQ+/HwAN5eAQBbI3z1Wa wCg4C8mps5CcOgvJqQsYmVcxCiSWGetlJhfrpeUXlWTopRdtYgRHHqPvDsbbm9/qHWJk4mA8 xCjBwawkwnsz5UKCEG9KYmVValF+fFFpTmrxIUZpDhYlcV5evQnxQgLpiSWp2ampBalFMFkm Dk6pBqZ9m29Zv3HecHM/m1Zfw2yXbqslj7JOGm99eU+mK+7OzMuXP1fJhRSpSZwxmNaXU+fS taNpSkbGv4WX2N9ltbV9z1ef97pdacEe8TK3uZF9+df288yxyShZczPXzyXg6d/dNUf3bVh7 62SyfcaLCzWn3Hb/2jqN79AzvcmGe3JECn9dmHdx4fZZjEZSorVSUyIPPd1tteMSy8apmzTz zc8s4hOb5NZvn3WaWbRGLpLDPazI8TTLlZad1+3Npn8Jr43h3rjYfaNAVdfmn/dklBOEXa1T pnyMvifkfN4puzBjgYlz6G3FVRsXL9y9//zXZN6wyMyX6X9X79skYbBI+DWv2HLuI8pzmX7x vb262X2FEktxRqKhFnNRcSIAoKyPdisDAAA= Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Matteo, Στις 2021-06-17 18:27, Matteo Croce έγραψε: > From: Matteo Croce > > Replace the assembly mem{cpy,move,set} with C equivalent. > > Try to access RAM with the largest bit width possible, but without > doing unaligned accesses. > > Tested on a BeagleV Starlight with a SiFive U74 core, where the > improvement is noticeable. > There are already generic C implementations for memcpy/memmove/memset at https://elixir.bootlin.com/linux/v5.13-rc7/source/lib/string.c#L871 but are doing one byte at a time, I suggest you update them to do word-by-word copy instead of introducing yet another memcpy/memmove C implementation on arch/riscv/.