home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / lang / c / 13191 < prev    next >
Encoding:
Text File  |  1992-09-03  |  1.8 KB  |  66 lines

  1. Newsgroups: comp.lang.c
  2. Path: sparky!uunet!sun-barr!ames!haven.umd.edu!darwin.sura.net!jvnc.net!yale.edu!yale!gumby!destroyer!csd475b!newsserv!dwiseman
  3. From: dwiseman@spsd630a.erim.org (Dave Wiseman)
  4. Subject: C vs. FORTRAN
  5. Message-ID: <DWISEMAN.92Sep3164036@spsd630a.erim.org>
  6. Sender: news@newsspool.erim.org
  7. Organization: Environmental Research Institute of Michigan, Ann Arbor, Michigan
  8. Date: 3 Sep 92 16:40:36
  9. Lines: 55
  10.  
  11.  
  12. Help!
  13.  
  14. I have a (two) simple programs, one in fortran, and one in C.  I have compiled
  15. them both optimized, and timed the results.  The fortran version takes .1 s
  16. to run, and the C version takes 12.5s to run.  I know (hope) that there is a
  17. simple remedy for this.  The project that I am working on has to do many 
  18. sines and cosines, and I'd prefer to keep the entire program in C, and not
  19. mix the languages.  What can I do to improve the speed of the C version?
  20.  
  21.     Dave Wiseman
  22.     dwiseman@erim.org
  23.  
  24. -------------------------------------------------------------------------------
  25. #include <stdio.h>
  26. #include <math.h>
  27.  
  28. main (argc,argv)
  29.      int argc;
  30.      char **argv;
  31. {
  32.   double angle,delta,the_sin,the_cos;
  33.   int i;
  34.   
  35.   angle = 0.0;
  36.   delta = 0.01;
  37.   
  38.   for (i=0; i<1000000; i++)
  39.   {
  40.     the_sin = sin(angle);
  41.     the_cos = cos(angle);
  42.     angle += delta; 
  43.   }
  44. }
  45. -------------------------------------------------------------------------------
  46.       program test
  47.  
  48.       real*8 angle,delta,the_sin,the_cos
  49.       integer*4 i
  50.  
  51.       angle = 0.0
  52.       delta = 0.01
  53.  
  54.       do I=1,1000000
  55.          the_sin = dsin(angle)
  56.          the_cos = dcos(angle)
  57.          angle = angle + delta
  58.       enddo
  59.  
  60.       end
  61. -------------------------------------------------------------------------------
  62. --
  63. David Wiseman              dwiseman@erim.org
  64. Environmental Research Institute of Michigan
  65.  
  66.