home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / lang / ada / 2158 < prev    next >
Encoding:
Text File  |  1992-07-21  |  2.7 KB  |  64 lines

  1. Newsgroups: comp.lang.ada
  2. Path: sparky!uunet!wupost!sdd.hp.com!zaphod.mps.ohio-state.edu!think.com!linus!linus.mitre.org!mbunix.mitre.org!vtg
  3. From: vtg@mbunix.mitre.org (Giddings)
  4. Subject: Re: 1 millisecond tasking on a Mips
  5. Message-ID: <1992Jul21.174153.9722@linus.mitre.org>
  6. Followup-To: vtg@mitre.org
  7. Sender: vtg@mitre.org (Victor Giddings)
  8. Nntp-Posting-Host: mbunix.mitre.org
  9. Organization: The MITRE Corporation, Bedford, MA
  10. References: <ELLIOTTM.92Jul17225954@beach.csulb.edu>
  11. Date: Tue, 21 Jul 1992 17:41:53 GMT
  12. Lines: 50
  13.  
  14. In article <ELLIOTTM.92Jul17225954@beach.csulb.edu> 
  15.    elliottm@beach.csulb.edu (Elliot Michael) writes:
  16. >We are considering an embedded application in Ada, running on a Mips
  17. >chip (speed yet unspecified) which will require at least one task to 
  18. >be run at 1 KHz.  Is this reasonable?  I've heard lots of rumors about
  19. >how much overhead is involved in Ada tasking.
  20. >
  21. >
  22. >--
  23. >
  24. >
  25. >                                           Mike Elliott
  26. >                                           elliottm@beach.csulb.edu
  27.  
  28. Yes, but be careful. (What a surprise!) I offer the following PIWG 
  29. benchmark results: 
  30. Test      Description (abreviated)                CPU Time Wall Time
  31. T000001   Minimum rendezvous, task ocedure        60.039   60.039
  32. T000002   One task, 1 entry, in package           59.961   59.961
  33. T000003   2 Tasks, 1 entry, in package            60.703   60.703
  34. T000004   1 Task, 2 entries, in package           70.976   70.976
  35. T000005   10 tasks, 1 entry, in package           63.562   63.562
  36. T000006   1 task, 10 entries, in package          81.500   81.500
  37. T000007   Minimum rendezvous                      42.773   42.773
  38. T000008   Pass Int: Producer->Buffer->Consumer   179.687  179.687
  39. The time units are microseconds!  These measurements were taken from 
  40. a MIPS R3200 board (25MHz R3000, 64kB I cache, 64kB D cache, 1MB 
  41. memory) using the MIPS ASAPP (Ada StandAlone Programmer's Product) 
  42. Version 3.0 (derived from Verdix).  Unfortunately, this compiler 
  43. and run-time system are no longer available.  About 6 months ago, 
  44. we completed an evaluation of competing products from Verdix, Alsys, 
  45. Telesoft, and InterAct.  Our agreements with the vendors prevent me 
  46. from discussing specifics and 6 months of additional development 
  47. from the vendors may invalid our results, but let me assure you that 
  48. similar and sometimes better performances are attainable from 
  49. currently available compilers.  Also, you can get 40MHZ clock rates 
  50. in hardware.
  51.  
  52. If you can use passive tasks, you can do even better.  The following 
  53. results are MODIFICATIONS of the PIWGs to use passive tasks. (Most 
  54. modifications were to simply add pragma Passive.)
  55.  
  56. Test       CPU Time
  57. T000002P   6.226
  58. T000003P   6.938
  59. T000004P   7.246
  60. T000005P   6.203
  61. T000006P   7.875
  62. T000008P  25.723
  63.  
  64.