home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / dsp / 2853 < prev    next >
Encoding:
Text File  |  1992-12-22  |  1.7 KB  |  38 lines

  1. Newsgroups: comp.dsp
  2. Path: sparky!uunet!telebit!phr
  3. From: phr@telebit.com (Paul Rubin)
  4. Subject: Re: compilers for DSP processors
  5. In-Reply-To: greg@gmp.lonestar.org's message of 22 Dec 92 14:58:02 GMT
  6. Message-ID: <PHR.92Dec22191419@napa.telebit.com>
  7. Sender: news@telebit.com
  8. Nntp-Posting-Host: napa.telebit.com
  9. Organization: Telebit Corporation; Sunnyvale, CA, USA
  10. References: <75774@apple.apple.COM> <FFV7VB1w164w@gmp.lonestar.org>
  11. Date: 22 Dec 92 19:14:19
  12. Lines: 24
  13.  
  14.     I did an application that decompressed G4 images and then scaled
  15.     the images for a for a 300 page per minute printer . The C
  16.     compiler was GNU and the risc was the Intel 80960CA. The code had
  17.     beed optimized a lot in C and was still not fast enough.
  18.  
  19. 300 pages per minute?  5 pages per second???  Yow!
  20.  
  21.     My usual experience with C compilers on DSP's that a 8 to 10 x
  22.     increase in speed is possible in the c to asm port. After looking
  23.     at the output of the GNU 80960 C compiler, I was impressed with
  24.     the efficiency of the assembler output. I estimated that the
  25.     increase in speed in the c to asm port would be a factor of 2 at
  26.     best. I was able to attain a 3x speed increase on the G4
  27.     decompression code and A 8X IMPROVEMENT on the scaling code.
  28.  
  29.     This speed increase was due to 1) using a machine instruction the
  30.     complier was clueless about, and 2) an optimization of the scaling
  31.     algorithmn that would have been not obvious at the compiler level.
  32.  
  33. You should report the missing machine instruction to the maintainers
  34. of your compiler (I'm not sure which of the several available 960
  35. GCC ports you were using), or simply extend the compiler yourself
  36. to know about the extra instruction.  Having the compiler sources
  37. is great.
  38.