From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/84 Path: news.gmane.org!not-for-mail From: Szabolcs Nagy Newsgroups: gmane.linux.lib.musl.general Subject: Re: Anti-bloat side project Date: Mon, 27 Jun 2011 23:16:25 +0200 Message-ID: <20110627211625.GC5036@port70.net> References: <20110627170806.GA24833@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1309209403 22532 80.91.229.12 (27 Jun 2011 21:16:43 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 27 Jun 2011 21:16:43 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-168-gllmg-musl=m.gmane.org@lists.openwall.com Mon Jun 27 23:16:39 2011 Return-path: Envelope-to: gllmg-musl@lo.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by lo.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1QbJAc-0006VZ-Mg for gllmg-musl@lo.gmane.org; Mon, 27 Jun 2011 23:16:38 +0200 Original-Received: (qmail 26448 invoked by uid 550); 27 Jun 2011 21:16:38 -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 26437 invoked from network); 27 Jun 2011 21:16:38 -0000 Content-Disposition: inline In-Reply-To: <20110627170806.GA24833@brightrain.aerifal.cx> User-Agent: Mutt/1.5.20 (2009-06-14) Xref: news.gmane.org gmane.linux.lib.musl.general:84 Archived-At: * Rich Felker [2011-06-27 13:08:06 -0400]: > As an example it takes Python nearly 600 syscalls just to run a hello > world program, compared to about 40 for perl or bash and 20 for ash > (and of course about 3 for musl-linked C using stdio). Much of this > was spent searching nonsensical pathnames for config files and shared i get different numbers on my (ubuntu) system nsz@tpx:~$ strace python -c '' 2>&1 |wc -l 670 nsz@tpx:~$ strace perl -e '' 2>&1 |wc -l 176 nsz@tpx:~$ strace sh -c '' 2>&1 |wc -l 42 nsz@tpx:~$ strace bash -c '' 2>&1 |wc -l 186 nsz@tpx:~$ strace awk '' 2>&1 |wc -l 95 nsz@tpx:~$ strace mawk '' 2>&1 |wc -l 39 nsz@tpx:~$ strace lua -e '' 2>&1 |wc -l 67 nsz@tpx:~$ strace bc &1 |wc -l 60 nsz@tpx:~$ strace sed '' &1 |wc -l 110 nsz@tpx:~$ strace cat &1 |wc -l 111 nsz@tpx:~$ strace dd &1 |wc -l 162 nsz@tpx:~$ strace grep . &1 |wc -l 127 nsz@tpx:~$ strace /bin/true 2>&1 |wc -l 107 without locale crap nsz@tpx:~$ export LC_ALL=C nsz@tpx:~$ strace python -c '' 2>&1 |wc -l 652 nsz@tpx:~$ strace perl -e '' 2>&1 |wc -l 99 nsz@tpx:~$ strace sh -c '' 2>&1 |wc -l 42 nsz@tpx:~$ strace bash -c '' 2>&1 |wc -l 101 nsz@tpx:~$ strace awk '' 2>&1 |wc -l 55 nsz@tpx:~$ strace mawk '' 2>&1 |wc -l 39 nsz@tpx:~$ strace lua -e '' 2>&1 |wc -l 67 nsz@tpx:~$ strace bc &1 |wc -l 60 nsz@tpx:~$ strace sed '' &1 |wc -l 35 nsz@tpx:~$ strace cat &1 |wc -l 36 nsz@tpx:~$ strace dd &1 |wc -l 74 nsz@tpx:~$ strace grep . &1 |wc -l 40 nsz@tpx:~$ strace /bin/true 2>&1 |wc -l 32 > Anyway my idea for a side project to benefit the whole Linux community > (not just musl users) is to document and analyze the causes of startup > bloat/syscall bloat (which leads to bad performance, especially in > "script"-type programs that run many times) and memory bloat in some > core components that are used on most modern Linux-based systems: > > - Python > - Perl > - Glib > - GTK > - ncurses > - etc. > > and then sending reports (and possible fix ideas) to the upstream > maintainers. This is not something I plan to do myself (I'd rather > spend time improving musl) but I want to propose it as a way for > members of the community to contribute to positive anti-bloat work > that benefits a large number of users, as opposed to the alternative > of just boycotting software that "sucks" for bloat reasons. :-) nice imho these issues are well known, ppl just don't care enough i remember when the first google summer of codes was announced one of the first python project idea was to do something about the number of syscalls at startup http://wiki.python.org/moin/CodingProjectIdeas/PythonCore it did not improve much since then, even in python3 ppl are complaining about the syscalls but devs say it does not matter http://mail.python.org/pipermail/python-dev/2011-January/107771.html http://mail.python.org/pipermail/python-dev/2011-January/107789.html