Current Benchmark Data
The following are plots of software performance, or benchmark tests. The software in question are various parts of Sparrow's data pre-processing API which are used by applications such as GFM and Sdfits. In all tests, a certain method is called, and that method's time to complete is recorded. For example, in the Receiver plot, the red line represents the time it takes for the Receiver class to read in the desired data from the Rcvr1_2 calibration FITS file. From the plot, one can see that there have been no performance changes in this method in the last few months.
These tests run every weekday night. The results are written to a database, and a separate program reads this database to produce the plots below. These plots help to determine wether changes in the code have produced performance changes. Sometimes this is desired, and sometimes it is unexpected.
These performance checks are not perfect. If some other process happens to be running on the same host at the same time as these tests, they could affect the performance time. Such factors are recorded in the benchmark database. However, these tests are effective for tracking changes in software performance.
- Check the date in each plot to see how recent this data is.
- The name of each section is identical to the name of the table in the data base.
- The bulleted list below each plot names the specific tests found in that table.
Performance Notes:
- April 2006 - Project and Sdfits classes optimized to improve performance
- Sept 2007 - host 'Colossus' was upgraded, resulting in a, well, colossul improvement in performace. Remember, this is a change in the host; the software was not optimized to induce this change, so it isn't really a software performance gain.
- August 2008 - Spectrometer and Sdfits classes optimized further (using pyfits).
Receiver
Tests:
- red: init_rcvr1_2
- green: init_rcvr18_26
Spectral Processor
Tests:
- red: init_sp_class
- green: init_sp_class_with_rcvr
Spectrometer
Tests:
- red: init_spectrometerbanks_class_one_bank
- green: init_spectrometerbanks_class_more_banks
- blue:spectrometer_banks_get_correlation
- purple: spectrometer_banks_get_rawpower
- maroon: init_spectrometer_class
- aqua:spectrometer_get_correlation
- lime:spectrometer_get_raw_power
- fuchsia:init_spectrometerbanks_class_with_rcvr
- olive:spectrometer_get_raw_power_after_corr
- navy:spectrometer_get_tsys
- teal:spectrometer_get_tsys_after_power
- yellow:init_spectrometer_slow
- silver: init_spectrometer_fast
Project
Tests:
- red: set_project_acs
- green: set_project_sp
- blue:set_project_dcr
- purple: set_scan_acs_raw
- maroon: set_scan_acs_cal
- aqua:set_scan_acs_ave
- lime:set_scan_sp_raw
- fuchsia:set_scan_sp_cal
- olive:set_scan_sp_ave
- navy:set_scan_dcr_raw
- teal: set_scan_dcr_cal
- yellow:set_scan_dcr_ave
Sdfits
Tests:
- red: sdfits_acs_raw
- green: sdfits_acs_cal
- blue: sdfits_acs_ave
- purple: sdfits_dcr_raw
- maroon: sdfits_dcr_cal
- aqua:sdfits_dcr_ave
- lime:sdfits_acs_raw_index
- fuchsia:sdfits_acs_large