From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/3407 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: Thinking about release Date: Wed, 12 Jun 2013 21:43:14 -0400 Message-ID: <20130613014314.GC29800@brightrain.aerifal.cx> References: <20130613012517.GA5859@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1371087807 20253 80.91.229.3 (13 Jun 2013 01:43:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 13 Jun 2013 01:43:27 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-3411-gllmg-musl=m.gmane.org@lists.openwall.com Thu Jun 13 03:43:29 2013 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1UmwZT-000727-AB for gllmg-musl@plane.gmane.org; Thu, 13 Jun 2013 03:43:27 +0200 Original-Received: (qmail 27942 invoked by uid 550); 13 Jun 2013 01:43:26 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 27929 invoked from network); 13 Jun 2013 01:43:26 -0000 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Xref: news.gmane.org gmane.linux.lib.musl.general:3407 Archived-At: On Thu, Jun 13, 2013 at 01:33:16PM +1200, Andre Renaud wrote: > Hi Rich, > > > Most of the other major items left on the agenda since the last > > release are probably not going to happen right away unless there's a > > volunteer to do them (zoneinfo, cpuset/affinity, string functions > > cleanup, C++ ABI matching, ARM-optimized memcpy) and one, the ld.so > > symlink direction issue, still requires some serious discussion and > > decision-making. > > Regarding the ARM-optimisations - I am happy to have a go at providing > a cleaned up implementation, although I can't recall what the final > consensus was on how this should be implemented. A simple ARMv4 I think the first step should be benchmarking on real machines. Somebody tried the asm that was posted and claimed it was no faster than musl's C code; I don't know the specific hardware they were using and I don't even recall right off who made the claim or where it was reported, but I think before we start writing or importing code we need to have a good idea how the current C code compares in performance to other "optimized" implementations. > implementation would cover all the bases, providing near universal > support, although would obviously not support the more modern > platforms. Is there any intention to move the base level support up to > ARMv5? I would consider that reasonable, given the age of ARMv4. > Alternatively, should we have multiple implementations > (ARMv4/ARMv5/ARMv7), and choose between them either at compile or > run-time? It's possible to branch based on __hwcap at runtime, if this would really help. > Obviously this stuff is probably not destined for the immediate > release, but more likely for the one after that. Yes, this looks like it will be a process that takes some time to sort out the facts and then tune the code. For what it's worth, I just did my first runs of libc-bench on real ARM hardware (well, an FPGA-based ARM). memset is half the speed of glibc's, but strchr and strlen are about 40% faster than glibc's. I don't think libc-bench is really a good benchmark as of yet, so we should probably develop more detailed tests. Rich