public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Michal Marek <mmarek@suse.cz>
To: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org,
	Peter Korsgaard <jacmet@uclibc.org>
Subject: Re: [PATCH 8/8] kconfig: implement KCONFIG_PROBABILITY for randconfig
Date: Thu, 25 Apr 2013 10:57:26 +0200	[thread overview]
Message-ID: <5178EFF6.50208@suse.cz> (raw)
In-Reply-To: <e43956e607692f9b1c710311e4a6591ffba1edf0.1366841993.git.yann.morin.1998@free.fr>

On 25.4.2013 00:29, Yann E. MORIN wrote:
> From: "Yann E. MORIN" <yann.morin.1998@free.fr>
> 
> Currently the odds to set each symbol is (rounded):
>     booleans:   y: 50%          n: 50%
>     tristates:  y: 33%  m: 33%  n: 33%
> 
> Introduce a KCONFIG_PROBABILITY environment variable to tweak the
> probabilities (in percentage), as such:
>     KCONFIG_PROBABILITY     y:n split           y:m:n split
>     -----------------------------------------------------------------
> [1] unset or empty          50  : 50            33  : 33  : 34
> [2] N                        N  : 100-N         N/2 : N/2 : 100-N
>     N:M                     N+M : 100-(N+M)      N  :  M  : 100-(N+M)
>     N:M:L                    N  : 100-N          M  :  L  : 100-(M+L)

I did a naive test with the current kconfig branch and with
yem-kconfig-for-next:

$ git checkout a45c7df
$ echo CONFIG_MODULES=y >all.config
$ >test-orig; for i in `seq 1000`; do KCONFIG_ALLCONFIG=1 make
randconfig || break; grep -c '=m' .config >>test-orig; done
...
$ git checkout e43956e
$ >test-new; ...

$ awk '{ sum += $1; num++ } END { print sum / num}' test-orig
573.247
$ awk '{ sum += $1; num++ } END { print sum / num}' test-new
565.194

I am not a statistician, but this looks OK to me. For reference, the
figure was ~340 with the previous patch.

I pulled your changes to kbuild.git#kconfig.

Thanks,
Michal

      reply	other threads:[~2013-04-25  8:57 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-24 22:29 [pull request v2] Pull request for branch yem-kconfig-for-next Yann E. MORIN
2013-04-24 22:29 ` [PATCH 1/8] menuconfig: Fix memory leak introduced by jump keys feature Yann E. MORIN
2013-04-24 22:29 ` [PATCH 2/8] menuconfig: Add "breadcrumbs" navigation aid Yann E. MORIN
2013-04-24 22:29 ` [PATCH 3/8] kconfig/lxdialog: rationalise the include paths where to find {.n}curses{,w}.h Yann E. MORIN
2013-04-24 22:29 ` [PATCH 4/8] kconfig: fix randconfig tristate detection Yann E. MORIN
2013-04-24 22:29 ` [PATCH 5/8] kconfig: do not override symbols already set Yann E. MORIN
2013-04-24 22:29 ` [PATCH 6/8] kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG Yann E. MORIN
2013-04-26 12:05   ` Arnd Bergmann
2013-04-26 12:11     ` Yann E. MORIN
2013-04-26 22:09     ` Yann E. MORIN
2013-04-27 21:01       ` Arnd Bergmann
2013-04-27 22:31         ` Yann E. MORIN
2013-04-28  1:05           ` Arnd Bergmann
2013-04-24 22:29 ` [PATCH 7/8] kconfig: allow specifying the seed for randconfig Yann E. MORIN
2013-04-24 22:29 ` [PATCH 8/8] kconfig: implement KCONFIG_PROBABILITY " Yann E. MORIN
2013-04-25  8:57   ` Michal Marek [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5178EFF6.50208@suse.cz \
    --to=mmarek@suse.cz \
    --cc=jacmet@uclibc.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=yann.morin.1998@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox