Return-Path: X-Original-To: apmail-commons-issues-archive@minotaur.apache.org Delivered-To: apmail-commons-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 53F9F1722A for ; Wed, 8 Oct 2014 11:03:34 +0000 (UTC) Received: (qmail 81103 invoked by uid 500); 8 Oct 2014 11:03:34 -0000 Delivered-To: apmail-commons-issues-archive@commons.apache.org Received: (qmail 81010 invoked by uid 500); 8 Oct 2014 11:03:34 -0000 Mailing-List: contact issues-help@commons.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: issues@commons.apache.org Delivered-To: mailing list issues@commons.apache.org Received: (qmail 80998 invoked by uid 99); 8 Oct 2014 11:03:34 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Oct 2014 11:03:34 +0000 Date: Wed, 8 Oct 2014 11:03:34 +0000 (UTC) From: "Otmar Ertl (JIRA)" To: issues@commons.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (MATH-1154) Statistical tests in stat.inference package are very slow due to implicit RandomGenerator initialization MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/MATH-1154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14163330#comment-14163330 ] Otmar Ertl commented on MATH-1154: ---------------------------------- I agree with Phil that my proposed patch does not address the core problem, which is definitely MATH-1124. The patch was thought as a short-term fix, which improves the performance essentially with minimal invasive code changes. Once the root issue is solved, both patches proposed here (mine and Thomas') will become obsolete anyway. The question is when will MATH-1124 be resolved? In the case it is fixed for the next release, none of both patches need to be applied. If not, it makes sense to apply one of both patches for the short-term. The question remains, do you only want a speed up of the statistical tests (Thomas' patch) or also of the distribution classes (my patch) ? > Statistical tests in stat.inference package are very slow due to implicit RandomGenerator initialization > -------------------------------------------------------------------------------------------------------- > > Key: MATH-1154 > URL: https://issues.apache.org/jira/browse/MATH-1154 > Project: Commons Math > Issue Type: Bug > Affects Versions: 3.3 > Reporter: Otmar Ertl > Attachments: MATH-1154.patch, math3.patch > > > Some statistical tests defined in the stat.inference package (e.g. BinomialTest or ChiSquareTest) are unnecessarily very slow (up to a factor 20 slower than necessary). The reason is the implicit slow initialization of a default (Well19937c) random generator instance each time a test is performed. The affected tests create some distribution instance in order to use some methods defined therein. However, they do not use any method for random generation. Nevertheless a random number generator instance is automatically created when creating a distribution instance, which is the reason for the serious slowdown. The problem is related to MATH-1124. > There are following solutions: > 1) Fix the affected statistical tests by passing a light-weight RandomGenerator implementation (or even null) to the constructor of the distribution. > 2) Or use for all distributions a RandomGenerator implementation that uses lazy initialization to generate the Well19937c instance as late as possible. This would also solve MATH-1124. > I will attach a patch proposal together with a performance test, that will demonstrate the speed up after a fix. -- This message was sent by Atlassian JIRA (v6.3.4#6332)