Academic Publishing Wiki
m
 
m (Undo revision 13278 by MaximKim (talk))
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  +
== [[Check_sort/VC/Performance_Analysis/Check_Sort|Check Sort]] ==
''(Note: Small insignificant anomalies exist in the data due to a variety of factors. They do not introduce unacceptable errors into the results.)''
 
 
=== Check sort ===
 
 
 
==== Table of Performance Values ====
 
 
<pre>
 
 
1 0 0
 
100001 0.015 0
 
200001 0 0.016
 
300001 0.016 0
 
400001 0.046 0
 
500001 0.047 0
 
600001 0.062 0
 
700001 0.079 0
 
800001 0.078 0.015
 
900001 0.094 0
 
1000001 0.109 0.016
 
1100001 0.109 0.016
 
1200001 0.125 0.016
 
1300001 0.14 0
 
1400001 0.157 0.015
 
1500001 0.156 0.016
 
1600001 0.172 0.016
 
1700001 0.187 0
 
1800001 0.203 0.016
 
1900001 0.203 0.016
 
2000001 0.218 0.016
 
2100001 0.234 0.016
 
2200001 0.234 0.016
 
2300001 0.266 0.015
 
2400001 0.266 0.015
 
2500001 0.266 0.016
 
2600001 0.297 0.015
 
2700001 0.297 0.016
 
2800001 0.312 0.016
 
2900001 0.328 0.016
 
3000001 0.343 0.016
 
3100001 0.344 0.015
 
3200001 0.36 0.015
 
3300001 0.375 0.016
 
3400001 0.375 0.015
 
3500001 0.391 0.031
 
3600001 0.391 0.031
 
3700001 0.406 0.031
 
3800001 0.422 0.016
 
3900001 0.437 0.032
 
4000001 0.453 0.015
 
4100001 0.469 0.031
 
4200001 0.454 0.031
 
4300001 0.484 0.031
 
4400001 0.485 0.031
 
4500001 0.5 0.031
 
4600001 0.516 0.031
 
4700001 0.531 0.032
 
4800001 0.531 0.031
 
4900001 0.547 0.047
 
5000001 0.547 0.031
 
5100001 0.578 0.031
 
5200001 0.594 0.031
 
5300001 0.594 0.031
 
5400001 0.61 0.031
 
5500001 0.625 0.031
 
5600001 0.625 0.047
 
5700001 0.641 0.031
 
5800001 0.656 0.032
 
5900001 0.671 0.032
 
6000001 0.672 0.046
 
6100001 0.719 0.047
 
6200001 0.703 0.031
 
6300001 0.704 0.046
 
6400001 0.719 0.047
 
6500001 0.734 0.047
 
6600001 0.735 0.047
 
6700001 0.75 0.046
 
6800001 0.766 0.047
 
6900001 0.781 0.047
 
7000001 0.797 0.047
 
7100001 0.797 0.047
 
7200001 0.812 0.047
 
7300001 0.828 0.047
 
7400001 0.844 0.047
 
7500001 0.843 0.047
 
7600001 0.86 0.046
 
7700001 0.875 0.047
 
7800001 0.891 0.047
 
7900001 0.89 0.063
 
8000001 0.891 0.062
 
8100001 0.906 0.063
 
8200001 0.922 0.062
 
8300001 0.922 0.063
 
8400001 0.953 0.062
 
8500001 0.953 0.063
 
8600001 0.969 0.046
 
8700001 0.985 0.062
 
8800001 1 0.063
 
8900001 1 0.062
 
9000001 1.016 0.062
 
9100001 1.188 0.062
 
9200001 1.047 0.063
 
9300001 1.047 0.062
 
9400001 1.063 0.062
 
9500001 1.078 0.063
 
9600001 1.094 0.062
 
9700001 1.094 0.062
 
9800001 1.125 0.063
 
9900001 1.109 0.078
 
0.011481868 0.000677576 5.97%
 
 
</pre>
 
 
==== Regression Analysis ====
 
 
 
'''Console output - ''(constraints)'''''
 
 
RESULTS: (Check sort)
 
1.) Total number of items sorted:...................... 1542936
 
2.) Total primary array size to accomodate the sort:... 10000000
 
3.) Total secondary array size to accomodate the sort:. 1542936
 
4.) Total length of key:............................... 8 decimal digits.
 
5.) Total time for setup per 100,000 items:............ 1.109 seconds.
 
6.) Total time for sort per 100,000 items:............. 0.078 seconds.
 
7.) Total time for program:............................ 59.14 seconds.
 
Press any key to continue
 
 
==== Class Determination ====
 
[[Image:Checksort 14599 image001.png|400px|right]]
 
 
'''''Class''''' notated sort routines are categorized according to the [http://www.physics.csbsju.edu/stats/chi-square.html Chi Square] analysis of linear ('''L'''), parabolic {'''P'''), logarithmic ('''Ln''') and exponential ('''E''') [http://www.physics.csbsju.edu/stats/chi-square.html best fit] [[Wikipedia:Regression analysis|regression analysis]] applied to their performance data produced under a specified set of constraints. '''''Class''''' notation is used instead of [[Wikipedia:Big O notation|Big O notation]] since the advantage '''''Class''''' notation offers is to provide the values of the equation parameters obtained from [[Wikipedia:Regression analysis|regression analysis]] of the performance data such as in the case of a [[Wikipedia:Linear equation|linear equation]] best [http://www.physics.csbsju.edu/stats/chi-square.html Chi Square] fit of the value for slope (or seconds per item) in the case of a '''Class L''' (''linear equation'') category [http://www.physics.csbsju.edu/stats/chi-square.html best fit]. This additional information allows the programmer or user to select the best sort routine for his own application based upon the actual number of items which must be sorted per unit time or the time limit to sort a specific number of items. Since the Check sort performance [http://www.physics.csbsju.edu/stats/chi-square.html best fits] the '''Class L''' category the values for slope '''''m''''' and constant '''''c''''' for the [[Wikipedia:Linear equation|linear equation]] <big> '''''f(x)= m*x+c''''' </big> can be determined by a [http://www.physics.csbsju.edu/stats/chi-square.html best fit] [[Wikipedia:Linear regression|linear regression]] analysis and provided in the table below:
 
 
{| class="wikitable" style="tesxt-align:left"
 
|+ '''Class L'''
 
|-
 
! Routine !! Slope !! c
 
|-
 
! Setup
 
| 0.011481868 || 0
 
|-
 
! Sort
 
| 0.000677576 || 0
 
|}
 
 
This method of representation allows performance to be projected for any number of items or time limit. An accurate projection of sort routine performance for any [[Wikipedia:Programming language|programming language]] or [[Wikipedia:Computer|machine]] can be made using the time required to initialize an array by calculating the ratio of sort time to setup time (which in this case is <math>{0.000677576 \choose 0.011481868}</math> or 0.0597 ) or a percentage value of 5.97%. Thus on a different [[Wikipedia:Computer|machine]] providing a setup time slope value of 0.025 the projected sort time would be .025 * 0.0597 or 0.00147531 seconds per item or the ability to sort 67,782,364 items per second.
 
 
----
 

Latest revision as of 12:08, 4 March 2019