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 35F2A90CE for ; Wed, 21 Sep 2011 15:07:31 +0000 (UTC) Received: (qmail 44019 invoked by uid 500); 21 Sep 2011 15:07:30 -0000 Delivered-To: apmail-commons-issues-archive@commons.apache.org Received: (qmail 43926 invoked by uid 500); 21 Sep 2011 15:07:30 -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 43910 invoked by uid 99); 21 Sep 2011 15:07:30 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 21 Sep 2011 15:07:30 +0000 X-ASF-Spam-Status: No, hits=-2000.5 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 21 Sep 2011 15:07:29 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 3AD98A61BD for ; Wed, 21 Sep 2011 15:07:09 +0000 (UTC) Date: Wed, 21 Sep 2011 15:07:09 +0000 (UTC) From: "Gilles (JIRA)" To: issues@commons.apache.org Message-ID: <1244649406.50920.1316617629237.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <1529202690.9151.1314191969099.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (MATH-650) FastMath has static code which slows the first access to FastMath 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-650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13109557#comment-13109557 ] Gilles commented on MATH-650: ----------------------------- Revision 1173690 shows the resource approach to storing data. It is still a little slower than literal arrays, but the gap is only about 12 ms now: {noformat} compute ~48 ms resources ~18 ms array ~6 ms {noformat} In exchange for this (relative) slowness, the byte-code size is reduced by half and we can have a "clean" source file. Moreover, we have a clear separation between code and data; the latter is generated once and it would be easy to spot unwanted modification. I think that even the smaller tables (sine, cosine, tangent) should also be stored in the same way. > FastMath has static code which slows the first access to FastMath > ----------------------------------------------------------------- > > Key: MATH-650 > URL: https://issues.apache.org/jira/browse/MATH-650 > Project: Commons Math > Issue Type: Improvement > Affects Versions: Nightly Builds > Environment: Android 2.3 (Dalvik VM with JIT) > Reporter: Alexis Robert > Priority: Minor > Attachments: FastMathLoadCheck.java, LucTestPerformance.java > > > Working on an Android application using Orekit, I've discovered that a simple FastMath.floor() takes about 4 to 5 secs on a 1GHz Nexus One phone (only the first time it's called). I've launched the Android profiling tool (traceview) and the problem seems to be linked with the static portion of FastMath code named "// Initialize tables" > The timing resulted in : > - FastMath.slowexp (40.8%) > - FastMath.expint (39.2%) > \- FastMath.quadmult() (95.6% of expint) > - FastMath.slowlog (18.2%) > Hoping that would help > Thanks! > Alexis Robert -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira