bugAVR C Runtime Library - Bugs: bug #10413, speedup tanh function in libm

 
 

bug #10413: speedup tanh function in libm

Submitted by:  None
Submitted on:  Thu 16 Sep 2004 02:41:26 PM UTC  
 
Category: LibrarySeverity: 3 - Normal
Priority: 7 - HighItem Group: None
Status: NonePercent Complete: 0%
Assigned to: NoneOriginator Email: -unavailable-
Open/Closed: ClosedRelease: None
Fixed Release: None

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Thu 16 Sep 2004 02:41:26 PM UTC, original submission:

The current code uses sinh/cosh which results in 2 calls to exp (each function calls it once) where the other variant (commented out in tanh.S) would only need it once. (it would also save 2 calls of inverse and 1 of ldexp and saves memory by not needing cosh/sinh)

The problem is the other code has a bug. It gives to the ldexp function an 1-byte-parameter where it should be 2 bytes. (see the 2 lines before the call of ldexp.)

Appended is a file which uses this other variant and has this bug fixed. (It speedsup my application which uses tanh extensively about 40%.)

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

Attached Files
file #1772:  tanh.S added by None (4KiB - application/octet-stream - my version using the corrected other variant to calculate tanh)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 3 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Wed 22 Dec 2004 10:23:15 PM UTCarcanumReassign ItemFrom group AVR C Runtime Library, bugs tracker=>To group AVR C Runtime Library, patch tracker
Wed 22 Dec 2004 10:23:14 PM UTCarcanumPriority5 - Normal=>7 - High
Thu 16 Sep 2004 02:41:26 PM UTCNoneAttached File-=>Added tanh.S, #1676

Back to the top


Powered by Savane 3.1-cleanup1