Changes between Version 14 and Version 15 of Developer/OpenProjects


Ignore:
Timestamp:
03/06/08 22:01:49 (16 years ago)
Author:
JoelSherrill
Comment:

/* Add Sixty-Four Bit Timestamps */ Formatting and text cleanup

Legend:

Unmodified
Added
Removed
Modified
  • Developer/OpenProjects

    v14 v15  
    264264is painful and slow.  This project will consist of the following work:
    265265
    266 # Baseline Testing
    267 #* Verify all test cases work as baseline.
    268 #* Capture execution times of RTEMS Timing Tests on reference hardware.
    269 #* Capture sizes of sample tests.
    270 
    271 # Add a SuperCore object "ScoreTimestamp". 
    272 #* This is an opaque class which will be used by all SuperCore time related functions.
    273 
    274 #* Methods will be provided to convert timespec and other standard time formats to and from ScoreTimestamp.
    275 
    276 #* RTEMS has a class to operate upon timespec's so this will be implemented in terms of this.
    277 
    278 #* Direct operations on timespec's will be eliminated throughout RTEMS except as necessary near API calls which operate upon struct timespec arguments.
    279 
    280 #* Initial implementation will be using struct timespec and all methods should be simple pass throughs or wrapper of existing functionality in the Timespec math helper class.
    281 
    282 Note that by adding the class "ScoreTimestamp", we have added a class whose implementation can be changed.
    283 
    284 # Verify all existing test cases still work.
    285 # Implement alternate version of SuperCore object "ScoreTimestamp"
    286 which uses unsigned sixty-four bit integers to represent nanoseconds
    287 since the POSIX epoch.
    288 #* This implementation should be fairly simple as you can do direct math on 64-bit integers.
    289 
    290 # Post Testing
    291 #* Verify all test cases work as they did baseline.
    292 #* Capture execution times of RTEMS Timing Tests again on reference hardware for both implementations.
    293 #* Capture sizes of sample tests.
    294 
    295 # Evaluation
    296 #* We anticipate that most of the target architectures RTEMS supports will benefit from using the 64-bit integer version.  But RTEMS supports over a dozen architectures so this is certainly not guaranteed.
    297 #* Work with RTEMS Community to run tests on as many targets as possible to decide which is best choice on each architecture.
    298 #* Simulators are available for most of the primary target architectures so we will be able to judge the impact of your work.
     266 *  Baseline Testing
     267  *  Verify all test cases work as baseline.
     268  *  Capture execution times of RTEMS Timing Tests on reference hardware.
     269  *  Capture sizes of sample tests.
     270
     271 *  Add a SuperCore object "ScoreTimestamp". 
     272  *  This is an opaque class which will be used by all SuperCore time related functions.
     273  *  Includes methods will be provided to convert timespec and other standard time formats to and from ScoreTimestamp.
     274  *  RTEMS has a class to operate upon timespec's so this will be implemented in terms of this.
     275  *  Direct operations on timespec's will be eliminated throughout RTEMS except as necessary near API calls which operate upon ''struct timespec'' arguments.
     276  *  Initial implementation will be using ''struct timespec'' and all methods should be simple pass throughs or wrapper of existing functionality in the Timespec math helper class. Note that by adding the class "ScoreTimestamp", we have added a class whose implementation can be changed.
     277
     278 *  Verify all existing test cases still work.
     279
     280 *  Implement alternate version of SuperCore object "ScoreTimestamp" which uses unsigned sixty-four bit integers to represent nanoseconds since the POSIX epoch.
     281  *  This implementation should be fairly simple as you can do direct math on 64-bit integers.
     282  *  Do not destroy ''struct timespec'' alternative.  The goal is to be able to pick the implementation is for each port to a new CPU architecture to select its preferred method.
     283  *  Provide configuration similar to other configure/build time parameters in RTEMS to let user select implementation.
     284  *  Make sure both implementations work. :-D
     285
     286 *  Post Testing
     287  *  Verify all test cases work as they did baseline.
     288  *  Capture execution times of RTEMS Timing Tests again on reference hardware for both implementations.
     289  *  Capture sizes of sample tests.
     290
     291 *  Evaluation
     292  *  We anticipate that most of the target architectures RTEMS supports will benefit from using the 64-bit integer version.  But RTEMS supports over a dozen architectures so this is certainly not guaranteed.
     293  *  Work with RTEMS Community to run tests on as many targets as possible to decide which is best choice on each architecture.
     294  *  Simulators are available for most of the primary target architectures so we will be able to judge the impact of your work.
    299295= Run-Time Tracing =
    300296