├── .gitignore ├── ListUtil_OMP.pl ├── ListUtil_OMP_DataFiles └── Xeon2597 │ ├── ListUtil_OMP.png │ ├── ListUtil_OMP_100.csv │ ├── ListUtil_OMP_1000.csv │ ├── ListUtil_OMP_10000.csv │ ├── ListUtil_OMP_100000.csv │ ├── ListUtil_OMP_1000000.csv │ ├── ListUtil_OMP_10000000.csv │ ├── ListUtil_OMP_limited.png │ ├── ListUtil_OMP_limited_color.png │ └── ListUtil_OMP_ratio_limited_color.png ├── README.md ├── addArrayofIntegers.pl ├── addArrayofIntegers_C.pl ├── addIntegers.pl ├── analyze_ListUtil_OMP.R └── i7.png /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore all .csv files 2 | *.csv 3 | 4 | # Ignore specific directory 5 | /_Inline/ 6 | 7 | # Ignore specific files 8 | 9 | -------------------------------------------------------------------------------- /ListUtil_OMP.pl: -------------------------------------------------------------------------------- 1 | #!/home/chrisarg/perl5/perlbrew/perls/current/bin/perl 2 | use v5.38; 3 | 4 | =head1 NAME 5 | ListUtil_OMP.pl - Benchmark List::Util and list reduction operations with OMP 6 | 7 | =head1 VERSION 8 | 9 | Version 0.01 - created for London Perl & Raku Workshop 2024 10 | 11 | =head1 USAGE 12 | 13 | perl ListUtil_OMP.pl-m 1 -s .3 -n 30 -r 100 -t 8 -e guided,1 -o ListUtil_OMP.csv 14 | 15 | Simulates a large number of rounded doubles and times a number of reduction 16 | operations (sum, product), using for loops in base Perl, List::Util, and 17 | OpenMP parallelized operations using Inline. 18 | 19 | =head1 OPTIONS 20 | 21 | Numerous options can control the scenarios to be tested (and none of them are 22 | required, since sensible defaults are provided): 23 | 24 | =over 4 25 | 26 | =item B<-n> I 27 | 28 | Number of elements of the numeric array (the "size" of the problem) 29 | 30 | =item B<-m> I 31 | 32 | Mean of the lognormal distribution used to draw random numbers from 33 | 34 | =item B<-s> I 35 | 36 | Standard deviation of the lognormal distribution used to draw random numbers from 37 | 38 | =item B<-r> I 39 | 40 | Number of repetitions for the benchmarking 41 | 42 | =item B<-t> I 43 | 44 | Maximum number of threads to use for the OpenMP operations (default is 2); the program 45 | will test all scenarios from 1 to C<$c> threads. 46 | 47 | =item B<-e> I 48 | 49 | OpenMP schedule to use for the parallelized operations (default is guided,1). The 50 | schedule is a comma-separated string with the first element being the schedule kind 51 | (static, dynamic, guided, auto) and the second element being the chunk size. This 52 | will be set up through the OMP_SCHEDULE environment variable at runtime. 53 | 54 | =item B<-o> I 55 | 56 | Output file for the benchmarking results (default is ListUtil_OMP.csv) 57 | 58 | =back 59 | 60 | =head1 DEPENDENCIES 61 | 62 | The script depends on the following modules: 63 | 64 | =over 4 65 | 66 | =item Benchmark::CSV 67 | 68 | =item File::Copy 69 | 70 | =item Getopt::Long 71 | 72 | =item Inline::C 73 | 74 | =item List::Util 75 | 76 | =item Math::GSL::RNG 77 | 78 | =item Math::GSL::Randist 79 | 80 | =item OpenMP::Environment 81 | 82 | =item PDL::Lite 83 | 84 | =item PDL::IO::CSV 85 | 86 | =item PDL::Stats::Basic 87 | 88 | =back 89 | 90 | =head1 TODO 91 | 92 | Expand the script to include more operations (e.g. min and max) and more scenarios 93 | including different types of data (e.g. text, integers, floating point numbers), 94 | and OMP tasks. 95 | 96 | =head1 AUTHOR 97 | 98 | Christos Argyropoulos, C<< >> 99 | =cut 100 | 101 | ############################################################################### 102 | ## dependencies 103 | use Benchmark::CSV; # for proper statistical benchmarking 104 | use File::Copy; # for copying files 105 | use Getopt::Long; # for parsing command line options 106 | use List::Util qw(min max sum product) 107 | ; # for finding the minimum and maximum values 108 | use Math::GSL::RNG; 109 | use Math::GSL::Randist qw/:all/; # for generating random numbers 110 | use OpenMP::Environment; # for controlling the OpenMP environment 111 | use PDL::Lite; 112 | use PDL::IO::CSV ':all'; 113 | use PDL::Stats::Basic; 114 | use Inline ( 115 | C => 'DATA', 116 | ccflagsex => q{-fopenmp}, 117 | lddlflags => join( q{ }, $Config::Config{lddlflags}, q{-fopenmp} ), 118 | myextlib => '' 119 | ); 120 | ############################################################################### 121 | ## process command line options : number of elements, mean and standard deviation 122 | ## We will generate text length and integer values with a lognormal distribution 123 | my $n = 1_000; # number of elements 124 | my $m = 1; # mean 125 | my $s = 1; # standard deviation 126 | my $r = 20; # number of repetitions 127 | my $t = 2; # maximum number of threads to test for scalability 128 | my $e = 'guided,1'; # OpenMP schedule 129 | my $o = 'ListUtil_OMP.csv'; # output file 130 | GetOptions( 131 | 'n=i' => \$n, 132 | 'm=f' => \$m, 133 | 's=f' => \$s, 134 | 'r=i' => \$r, 135 | 't=i' => \$t, 136 | 'e=s' => \$e, 137 | 'o=s' => \$o, 138 | ); 139 | 140 | my $env = OpenMP::Environment->new(); ## initialize the OpenMP environment 141 | 142 | ## simulate the text and numeric arrays 143 | my $rng = Math::GSL::RNG->new(); 144 | my @random_numbers = (undef) x $n; 145 | for my $i ( 0 .. $n - 1 ) { 146 | $random_numbers[$i] = int( gsl_ran_lognormal( $rng->raw(), $m, $s ) ); 147 | } 148 | 149 | 150 | ## to avoid overflow issues, invert every other element in @random_numbers 151 | ## and zeros to ones 152 | for my $i ( 0 .. $#random_numbers ) { 153 | $random_numbers[$i] = 1 if $random_numbers[$i] == 0; 154 | $random_numbers[$i] = 1.0/$random_numbers[$i] if $i % 2; 155 | } 156 | 157 | ## initialize and set the benchmarks 158 | my $benchmark = Benchmark::CSV->new( 159 | output => $o, 160 | sample_size => 1, 161 | ); 162 | $benchmark->add_instance( 'ListUtil_sum_num_1' => sub { sum(@random_numbers) }, 163 | ); 164 | $benchmark->add_instance( 165 | 'ForLoop_sum_num_1' => sub { 166 | my $sum = 0.0; 167 | foreach my $i (@random_numbers) { 168 | $sum += $i; 169 | } 170 | }, 171 | ); 172 | $benchmark->add_instance( 'StC_sum_num_1' => sub { sum_with_C(\@random_numbers) }, 173 | ); 174 | for my $num_of_threads ( 1 .. $t ) { 175 | my $bench_name = sprintf "OMP_sum_num_%02d", $num_of_threads; 176 | $benchmark->add_instance( 177 | $bench_name => sub { 178 | $env->omp_num_threads($num_of_threads); 179 | $env->omp_schedule($e); 180 | set_openmp_schedule_from_env(); 181 | set_openmp_num_threads_from_env(); 182 | sum_with_OMP( \@random_numbers ); 183 | }, 184 | ); 185 | } ## add the benchmarks for the OpenMP parallelized sum 186 | $benchmark->add_instance( 187 | 'ListUtil_prod_num_1' => sub { product(@random_numbers) }, ); 188 | $benchmark->add_instance( 189 | 'ForLoop_prod_num_1' => sub { 190 | my $prod = 1.0; 191 | foreach my $i (@random_numbers) { 192 | $prod *= $i; 193 | } 194 | }, 195 | ); 196 | $benchmark->add_instance( 'StC_prod_num_1' => sub { prod_with_C(\@random_numbers) }, 197 | ); 198 | for my $num_of_threads ( 1 .. $t ) { 199 | my $bench_name = sprintf "OMP_prod_num_%02d", $num_of_threads; 200 | $benchmark->add_instance( 201 | $bench_name => sub { 202 | $env->omp_num_threads($num_of_threads); 203 | $env->omp_schedule($e); 204 | set_openmp_schedule_from_env(); 205 | set_openmp_num_threads_from_env(); 206 | prod_with_OMP( \@random_numbers ); 207 | }, 208 | ); 209 | } ## add the benchmarks for the OpenMP parallelized sum 210 | $benchmark->run_iterations($r); 211 | 212 | # Load the CSV file 213 | 214 | my @data = rcsv1D( $o, { text2bad => 1, header => 1 } ); 215 | 216 | my %summary_stats = (); 217 | 218 | foreach my $col ( 0 .. $#data ) { 219 | my $pdl = pdl( $data[$col] ); 220 | my $mean = $pdl->average; 221 | my $stddev = $pdl->stdv_unbiased; 222 | my $median = $pdl->median; 223 | $summary_stats{ $data[$col]->hdr->{col_name} } = 224 | { mean => $mean, stddev => $stddev, median => $median }; 225 | } 226 | 227 | # Get the column names from the first row 228 | my @column_names = sort keys %{ $summary_stats{ ( keys %summary_stats )[0] } }; 229 | 230 | # Define the width for each column 231 | my $width_name = 24; 232 | my $width_col = 10; 233 | 234 | # Print the column names 235 | printf "%-${width_name}s", ''; 236 | printf "%${width_col}s", $_ for @column_names; 237 | print "\n"; 238 | 239 | # Print each row 240 | foreach my $row_name ( sort keys %summary_stats ) { 241 | printf "%-${width_name}s", $row_name; 242 | printf "%${width_col}.1e", $summary_stats{$row_name}{$_} for @column_names; 243 | print "\n"; 244 | } 245 | 246 | ## copy the $o to a file in which the size of the problem is included prior to the 247 | ## extension .csv 248 | my $o_new = $o; 249 | $o_new =~ s/\.csv/_$n.csv/; 250 | copy( $o, $o_new ); 251 | unlink $o; 252 | 253 | 254 | __DATA__ 255 | __C__ 256 | 257 | #include 258 | #include 259 | #include 260 | 261 | void set_openmp_schedule_from_env(); 262 | void set_openmp_num_threads_from_env(); 263 | SV* sum_with_OMP(AV *array); 264 | SV* prod_with_OMP(AV *array); 265 | SV* sum_with_C(AV *array); 266 | SV* prod_with_C(AV *array); 267 | 268 | void set_openmp_schedule_from_env() { 269 | char *schedule_env = getenv("OMP_SCHEDULE"); 270 | if (schedule_env != NULL) { 271 | char *kind_str = strtok(schedule_env, ","); 272 | char *chunk_size_str = strtok(NULL, ","); 273 | 274 | omp_sched_t kind; 275 | if (strcmp(kind_str, "static") == 0) { 276 | kind = omp_sched_static; 277 | } else if (strcmp(kind_str, "dynamic") == 0) { 278 | kind = omp_sched_dynamic; 279 | } else if (strcmp(kind_str, "guided") == 0) { 280 | kind = omp_sched_guided; 281 | } else { 282 | kind = omp_sched_auto; 283 | } 284 | int chunk_size = atoi(chunk_size_str); 285 | omp_set_schedule(kind, chunk_size); 286 | } 287 | } 288 | 289 | void set_openmp_num_threads_from_env() { 290 | char *num; 291 | num = getenv("OMP_NUM_THREADS"); 292 | omp_set_num_threads(atoi(num)); 293 | } 294 | 295 | 296 | SV* sum_with_OMP(AV *array) { 297 | int len = av_len(array) + 1; 298 | double retval = 0.0; 299 | #pragma omp parallel 300 | { 301 | #pragma omp for schedule(runtime) reduction(+:retval) nowait 302 | for (int i = 0; i < len; i++) { 303 | SV **elem = av_fetch_simple(array, i, 0); // perl 5.36 and above 304 | if (elem != NULL) { 305 | retval += (double) SvNV(*elem); 306 | } 307 | } 308 | } 309 | return newSVnv(retval); 310 | } 311 | 312 | SV* sum_with_C(AV *array) { 313 | int len = av_len(array) + 1; 314 | double retval = 0.0; 315 | for (int i = 0; i < len; i++) { 316 | SV **elem = av_fetch_simple(array, i, 0); // perl 5.36 and above 317 | if (elem != NULL) { 318 | retval += (double) SvNV(*elem); 319 | } 320 | } 321 | return newSVnv(retval); 322 | } 323 | 324 | 325 | SV* prod_with_OMP(AV *array) { 326 | int len = av_len(array) + 1; 327 | double retval = 1.0; 328 | #pragma omp parallel 329 | { 330 | #pragma omp for schedule(runtime) reduction(*:retval) nowait 331 | for (int i = 0; i < len; i++) { 332 | SV **elem = av_fetch_simple(array, i, 0); // perl 5.36 and above 333 | if (elem != NULL) { 334 | retval *= (double) SvNV(*elem); 335 | } 336 | } 337 | } 338 | return newSVnv(retval); 339 | } 340 | 341 | SV* prod_with_C(AV *array) { 342 | int len = av_len(array) + 1; 343 | double retval = 1.0; 344 | for (int i = 0; i < len; i++) { 345 | SV **elem = av_fetch_simple(array, i, 0); // perl 5.36 and above 346 | if (elem != NULL) { 347 | retval *= (double) SvNV(*elem); 348 | } 349 | } 350 | return newSVnv(retval); 351 | } -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chrisarg/perlAssembly/9b41a989d4cef8bafa3279afdbc4c06e21d76cd2/ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP.png -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_100.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.000012,0.000005,0.000003,0.000003,0.000537,0.000597,0.000552,0.000869,0.000657,0.000612,0.000777,0.000734,0.000544,0.000552,0.000561,0.000548,0.000728,0.000653,0.000776,0.000689,0.000004,0.000003 3 | 0.000012,0.000004,0.000003,0.000003,0.000627,0.000598,0.000647,0.000621,0.000565,0.000727,0.000592,0.000740,0.000573,0.000626,0.000593,0.000613,0.000680,0.000571,0.000896,0.000870,0.000002,0.000002 4 | 0.000026,0.000014,0.000003,0.000002,0.000638,0.000635,0.000628,0.000611,0.000578,0.000658,0.000860,0.000879,0.000638,0.000551,0.000622,0.000768,0.000843,0.000782,0.000615,0.000814,0.000003,0.000003 5 | 0.000013,0.000019,0.000003,0.000003,0.000583,0.000589,0.000682,0.000621,0.000681,0.000762,0.000723,0.000780,0.000602,0.000526,0.000644,0.000675,0.000662,0.000583,0.000912,0.000721,0.000002,0.000002 6 | 0.000013,0.000007,0.000003,0.000004,0.000706,0.000695,0.000630,0.000641,0.000750,0.000852,0.000720,0.000804,0.000633,0.000599,0.000673,0.000605,0.000736,0.000572,0.000789,0.000943,0.000001,0.000002 7 | 0.000010,0.000012,0.000002,0.000003,0.000625,0.000615,0.000607,0.000718,0.000711,0.000757,0.000936,0.000727,0.000599,0.000656,0.000612,0.000678,0.000600,0.000658,0.000719,0.000884,0.000001,0.000001 8 | 0.000015,0.000012,0.000002,0.000002,0.000682,0.000619,0.000669,0.000612,0.000748,0.000591,0.000674,0.000815,0.000601,0.000581,0.000737,0.000687,0.000650,0.000609,0.000765,0.000770,0.000001,0.000002 9 | 0.000016,0.000014,0.000004,0.000002,0.000605,0.000551,0.000662,0.000825,0.000669,0.000644,0.000799,0.000777,0.000586,0.000639,0.000635,0.000563,0.000828,0.000608,0.000730,0.000871,0.000001,0.000004 10 | 0.000015,0.000011,0.000003,0.000002,0.000574,0.000648,0.000598,0.000602,0.000669,0.000690,0.000834,0.000862,0.000629,0.000664,0.000709,0.000657,0.000640,0.000671,0.000749,0.000843,0.000001,0.000002 11 | 0.000012,0.000013,0.000002,0.000003,0.000601,0.000548,0.000663,0.000570,0.000626,0.000783,0.000572,0.000932,0.000666,0.000625,0.000643,0.000806,0.000597,0.000630,0.000687,0.000869,0.000002,0.000003 12 | 0.000012,0.000014,0.000003,0.000001,0.000623,0.000613,0.000608,0.000667,0.000669,0.000864,0.000594,0.000788,0.000650,0.000536,0.000628,0.000614,0.000615,0.000845,0.000613,0.000830,0.000001,0.000003 13 | 0.000066,0.000027,0.000002,0.000002,0.000593,0.000596,0.000614,0.000696,0.000690,0.000685,0.000718,0.000835,0.000653,0.000532,0.000740,0.000665,0.000669,0.000666,0.000758,0.000915,0.000007,0.000002 14 | 0.000012,0.000014,0.000004,0.000002,0.000625,0.000562,0.000614,0.000776,0.000667,0.000737,0.000813,0.000851,0.000623,0.000661,0.000568,0.000601,0.000836,0.000697,0.000834,0.000652,0.000002,0.000005 15 | 0.000038,0.000014,0.000003,0.000005,0.000561,0.000605,0.000690,0.000550,0.000689,0.000779,0.000601,0.000706,0.000682,0.000664,0.000589,0.000696,0.000678,0.000754,0.000613,0.000734,0.000001,0.000002 16 | 0.000016,0.000013,0.000003,0.000003,0.000624,0.000592,0.000614,0.000643,0.000614,0.000696,0.000775,0.000849,0.000645,0.000550,0.000665,0.000574,0.000785,0.000604,0.000900,0.000791,0.000002,0.000001 17 | 0.000008,0.000011,0.000002,0.000003,0.000662,0.000650,0.000644,0.000606,0.000652,0.000713,0.000834,0.000839,0.000559,0.000604,0.000518,0.000622,0.000816,0.000636,0.000911,0.000689,0.000002,0.000001 18 | 0.000019,0.000013,0.000003,0.000003,0.000526,0.000582,0.000685,0.000639,0.000537,0.000668,0.000807,0.000621,0.000644,0.000617,0.000626,0.000661,0.000624,0.000858,0.000847,0.000938,0.000002,0.000002 19 | 0.000012,0.000011,0.000002,0.000003,0.000603,0.000565,0.000705,0.000685,0.000667,0.000733,0.000796,0.000921,0.000576,0.000669,0.000604,0.000618,0.000638,0.000628,0.000830,0.000833,0.000002,0.000002 20 | 0.000015,0.000012,0.000003,0.000003,0.000624,0.000588,0.000559,0.000594,0.000632,0.000672,0.000805,0.000679,0.000565,0.000572,0.000763,0.000672,0.000751,0.000767,0.000797,0.000813,0.000002,0.000001 21 | 0.000012,0.000012,0.000002,0.000002,0.000605,0.000625,0.000726,0.000585,0.000775,0.000610,0.000786,0.000775,0.000547,0.000609,0.000611,0.000667,0.000681,0.000660,0.000800,0.000770,0.000001,0.000002 22 | 0.000015,0.000009,0.000003,0.000004,0.000615,0.000664,0.000606,0.000656,0.000734,0.000868,0.000800,0.000756,0.000675,0.000580,0.000559,0.000624,0.000626,0.000611,0.000748,0.000837,0.000002,0.000002 23 | 0.000010,0.000004,0.000001,0.000002,0.000676,0.000640,0.000572,0.000608,0.000636,0.000823,0.000621,0.000755,0.000668,0.000592,0.000597,0.000662,0.000790,0.000846,0.000656,0.000715,0.000002,0.000002 24 | 0.000011,0.000012,0.000002,0.000002,0.000682,0.000622,0.000642,0.000732,0.000752,0.000670,0.000913,0.000809,0.000704,0.000598,0.000593,0.000676,0.000646,0.000760,0.000701,0.000741,0.000002,0.000003 25 | 0.000011,0.000011,0.000003,0.000007,0.000647,0.000601,0.000691,0.000759,0.000728,0.000691,0.000762,0.000816,0.000582,0.000646,0.000623,0.000829,0.000591,0.000629,0.000675,0.000861,0.000002,0.000001 26 | 0.000011,0.000014,0.000003,0.000002,0.000662,0.000600,0.000645,0.000632,0.000640,0.000724,0.000729,0.000818,0.000618,0.000603,0.000570,0.000755,0.000644,0.000602,0.000782,0.000792,0.000003,0.000002 27 | 0.000011,0.000010,0.000003,0.000005,0.000690,0.000661,0.000591,0.000696,0.000660,0.000683,0.000723,0.000607,0.000610,0.000607,0.000632,0.000777,0.000639,0.000690,0.000781,0.000890,0.000001,0.000001 28 | 0.000027,0.000009,0.000002,0.000002,0.000578,0.000589,0.000672,0.000629,0.000664,0.000826,0.000674,0.000837,0.000561,0.000636,0.000539,0.000608,0.000760,0.000786,0.000621,0.000817,0.000002,0.000002 29 | 0.000010,0.000012,0.000002,0.000005,0.000580,0.000637,0.000596,0.000726,0.000627,0.000798,0.000628,0.000818,0.000598,0.000684,0.000659,0.000625,0.000603,0.000582,0.000706,0.000941,0.000002,0.000002 30 | 0.000014,0.000012,0.000003,0.000001,0.000544,0.000658,0.000745,0.000660,0.000684,0.000754,0.000637,0.000923,0.000612,0.000574,0.000644,0.000633,0.000639,0.000625,0.000719,0.000834,0.000002,0.000002 31 | 0.000011,0.000008,0.000003,0.000003,0.000655,0.000636,0.000585,0.000672,0.000673,0.000760,0.000628,0.000702,0.000678,0.000618,0.000600,0.000604,0.000743,0.000616,0.000794,0.000830,0.000002,0.000001 32 | 0.000011,0.000012,0.000001,0.000002,0.000581,0.000648,0.000614,0.000725,0.000621,0.000752,0.000729,0.000876,0.000621,0.000605,0.000642,0.000836,0.000656,0.000653,0.000820,0.000878,0.000001,0.000002 33 | 0.000011,0.000009,0.000003,0.000002,0.000652,0.000593,0.000634,0.000643,0.000656,0.000687,0.000626,0.000872,0.000613,0.000643,0.000634,0.000748,0.000599,0.000604,0.000883,0.000881,0.000002,0.000002 34 | 0.000015,0.000013,0.000002,0.000002,0.000659,0.000636,0.000631,0.000757,0.000613,0.000750,0.000758,0.000871,0.000671,0.000634,0.000594,0.000716,0.000665,0.000630,0.000896,0.000714,0.000003,0.000001 35 | 0.000011,0.000010,0.000003,0.000002,0.000629,0.000615,0.000678,0.000606,0.000591,0.000651,0.000720,0.000878,0.000543,0.000563,0.000804,0.000731,0.000688,0.000624,0.000922,0.000904,0.000001,0.000003 36 | 0.000010,0.000016,0.000003,0.000002,0.000657,0.000632,0.000616,0.000696,0.000637,0.000786,0.000794,0.000682,0.000669,0.000675,0.000604,0.000571,0.000768,0.000617,0.000796,0.000855,0.000002,0.000002 37 | 0.000012,0.000011,0.000003,0.000002,0.000613,0.000576,0.000625,0.000646,0.000725,0.000818,0.000718,0.000902,0.000669,0.000607,0.000595,0.000757,0.000625,0.000611,0.000766,0.000789,0.000002,0.000002 38 | 0.000014,0.000017,0.000002,0.000003,0.000617,0.000609,0.000666,0.000672,0.000646,0.000793,0.000773,0.000834,0.000630,0.000587,0.000599,0.000585,0.000660,0.000686,0.000801,0.000709,0.000002,0.000002 39 | 0.000012,0.000005,0.000002,0.000002,0.000577,0.000675,0.000624,0.000634,0.000729,0.000666,0.000707,0.000625,0.000685,0.000528,0.000604,0.000575,0.000788,0.000616,0.000679,0.000863,0.000001,0.000001 40 | 0.000011,0.000010,0.000002,0.000003,0.000606,0.000639,0.000546,0.000583,0.000573,0.000620,0.000748,0.000773,0.000591,0.000637,0.000655,0.000660,0.000597,0.000666,0.000645,0.000887,0.000002,0.000002 41 | 0.000012,0.000011,0.000003,0.000002,0.000618,0.000641,0.000678,0.000602,0.000707,0.000677,0.000733,0.000845,0.000672,0.000568,0.000657,0.000819,0.000770,0.000707,0.000704,0.000912,0.000005,0.000002 42 | 0.000013,0.000013,0.000002,0.000002,0.000664,0.000646,0.000656,0.000597,0.000678,0.000693,0.000791,0.000853,0.000610,0.000659,0.000594,0.000600,0.000591,0.000786,0.000620,0.000904,0.000002,0.000003 43 | 0.000015,0.000012,0.000002,0.000002,0.000659,0.000578,0.000762,0.000589,0.000818,0.000724,0.000617,0.000830,0.000655,0.000576,0.000578,0.000612,0.000610,0.000744,0.000693,0.000792,0.000001,0.000002 44 | 0.000013,0.000011,0.000002,0.000002,0.000704,0.000616,0.000638,0.000674,0.000762,0.000727,0.000822,0.000870,0.000619,0.000619,0.000632,0.000564,0.000690,0.000648,0.000724,0.000996,0.000002,0.000002 45 | 0.000011,0.000016,0.000003,0.000002,0.000571,0.000696,0.000609,0.000641,0.000756,0.000712,0.000613,0.000686,0.000627,0.000638,0.000607,0.000600,0.000635,0.000714,0.000764,0.000902,0.000001,0.000002 46 | 0.000007,0.000011,0.000002,0.000002,0.000632,0.000611,0.000602,0.000618,0.000641,0.000678,0.000777,0.000789,0.000585,0.000599,0.000637,0.000602,0.000708,0.000775,0.000681,0.000954,0.000002,0.000002 47 | 0.000010,0.000018,0.000003,0.000002,0.000649,0.000697,0.000707,0.000647,0.000610,0.000804,0.000772,0.000791,0.000590,0.000644,0.000627,0.000602,0.000683,0.000588,0.000758,0.000698,0.000001,0.000002 48 | 0.000012,0.000011,0.000003,0.000002,0.000617,0.000668,0.000550,0.000607,0.000736,0.000660,0.000803,0.000807,0.000584,0.000619,0.000630,0.000600,0.000668,0.000855,0.000620,0.000704,0.000001,0.000002 49 | 0.000013,0.000013,0.000003,0.000003,0.000675,0.000642,0.000634,0.000595,0.000606,0.000737,0.000780,0.000630,0.000576,0.000667,0.000551,0.000687,0.000681,0.000743,0.000747,0.000943,0.000002,0.000003 50 | 0.000011,0.000008,0.000003,0.000002,0.000650,0.000607,0.000623,0.000627,0.000611,0.000656,0.000788,0.000811,0.000684,0.000678,0.000731,0.000628,0.000705,0.000634,0.000820,0.000857,0.000001,0.000002 51 | 0.000024,0.000011,0.000002,0.000002,0.000610,0.000666,0.000635,0.000626,0.000697,0.000794,0.000661,0.000825,0.000614,0.000677,0.000682,0.000750,0.000672,0.000641,0.000722,0.000893,0.000002,0.000001 52 | 0.000043,0.000013,0.000002,0.000002,0.000611,0.000550,0.000575,0.000549,0.000726,0.000727,0.000697,0.000771,0.000565,0.000658,0.000647,0.000625,0.000630,0.000750,0.000820,0.000875,0.000002,0.000004 53 | 0.000016,0.000010,0.000002,0.000002,0.000631,0.000560,0.000673,0.000796,0.000794,0.000764,0.000666,0.000834,0.000628,0.000699,0.000640,0.000718,0.000589,0.000781,0.000689,0.000845,0.000002,0.000001 54 | 0.000016,0.000012,0.000002,0.000002,0.000627,0.000662,0.000689,0.000591,0.000662,0.000839,0.000736,0.000602,0.000664,0.000620,0.000651,0.000636,0.000708,0.000768,0.000789,0.000838,0.000003,0.000001 55 | 0.000010,0.000009,0.000003,0.000002,0.000570,0.000730,0.000700,0.000782,0.000674,0.000914,0.000790,0.000853,0.000631,0.000601,0.000653,0.000618,0.000826,0.000676,0.000872,0.000832,0.000001,0.000002 56 | 0.000009,0.000013,0.000002,0.000002,0.000673,0.000607,0.000627,0.000680,0.000653,0.000638,0.000777,0.000918,0.000592,0.000604,0.000615,0.000716,0.000770,0.000668,0.000711,0.000898,0.000002,0.000003 57 | 0.000013,0.000011,0.000002,0.000006,0.000602,0.000634,0.000599,0.000663,0.000805,0.000699,0.000841,0.000735,0.000596,0.000607,0.000668,0.000753,0.000729,0.000833,0.000757,0.000855,0.000002,0.000002 58 | 0.000014,0.000010,0.000002,0.000002,0.000607,0.000608,0.000645,0.000727,0.000673,0.000675,0.000725,0.000760,0.000627,0.000586,0.000764,0.000626,0.000608,0.000666,0.000661,0.000691,0.000002,0.000004 59 | 0.000011,0.000011,0.000003,0.000002,0.000651,0.000554,0.000680,0.000662,0.000697,0.000607,0.000878,0.000775,0.000697,0.000675,0.000590,0.000774,0.000619,0.000697,0.000605,0.000759,0.000002,0.000002 60 | 0.000012,0.000021,0.000002,0.000002,0.000608,0.000623,0.000768,0.000542,0.000700,0.000605,0.000733,0.000817,0.000662,0.000657,0.000650,0.000641,0.000629,0.000649,0.000698,0.000948,0.000002,0.000002 61 | 0.000013,0.000014,0.000002,0.000005,0.000680,0.000695,0.000678,0.000641,0.000658,0.000755,0.000694,0.000854,0.000595,0.000600,0.000543,0.000633,0.000739,0.000687,0.000900,0.000946,0.000001,0.000002 62 | 0.000008,0.000012,0.000003,0.000003,0.000611,0.000659,0.000609,0.000655,0.000682,0.000757,0.000809,0.000831,0.000642,0.000618,0.000632,0.000677,0.000713,0.000738,0.000766,0.000947,0.000002,0.000002 63 | 0.000013,0.000012,0.000003,0.000003,0.000593,0.000650,0.000612,0.000603,0.000673,0.000683,0.000792,0.000695,0.000627,0.000683,0.000580,0.000739,0.000726,0.000750,0.000780,0.000673,0.000002,0.000002 64 | 0.000005,0.000014,0.000001,0.000002,0.000655,0.000584,0.000624,0.000586,0.000703,0.000594,0.000718,0.000624,0.000583,0.000590,0.000639,0.000779,0.000666,0.000654,0.000710,0.000810,0.000004,0.000001 65 | 0.000005,0.000011,0.000001,0.000002,0.000585,0.000559,0.000663,0.000620,0.000690,0.000619,0.000688,0.000775,0.000659,0.000638,0.000584,0.000622,0.000667,0.000605,0.000696,0.000834,0.000001,0.000002 66 | 0.000020,0.000018,0.000003,0.000002,0.000667,0.000697,0.000777,0.000624,0.000808,0.000761,0.000743,0.000675,0.000612,0.000625,0.000592,0.000730,0.000672,0.000690,0.000748,0.000813,0.000002,0.000002 67 | 0.000012,0.000044,0.000002,0.000002,0.000604,0.000591,0.000598,0.000653,0.000751,0.000616,0.000702,0.000926,0.000537,0.000679,0.000619,0.000637,0.000683,0.000770,0.000868,0.000797,0.000002,0.000002 68 | 0.000012,0.000015,0.000002,0.000002,0.000577,0.000685,0.000560,0.000745,0.000739,0.000716,0.000790,0.000658,0.000663,0.000539,0.000678,0.000620,0.000758,0.000590,0.000755,0.000748,0.000001,0.000002 69 | 0.000011,0.000012,0.000002,0.000002,0.000602,0.000593,0.000721,0.000577,0.000770,0.000681,0.000799,0.000868,0.000637,0.000602,0.000793,0.000649,0.000698,0.000689,0.000656,0.000719,0.000002,0.000002 70 | 0.000013,0.000027,0.000002,0.000007,0.000635,0.000633,0.000568,0.000638,0.000793,0.000656,0.000770,0.000766,0.000678,0.000609,0.000708,0.000590,0.000668,0.000876,0.000702,0.000638,0.000002,0.000001 71 | 0.000012,0.000006,0.000002,0.000003,0.000639,0.000622,0.000577,0.000744,0.000676,0.000636,0.000798,0.000711,0.000611,0.000610,0.000634,0.000604,0.000657,0.000671,0.000729,0.000910,0.000002,0.000001 72 | 0.000010,0.000019,0.000002,0.000002,0.000576,0.000686,0.000631,0.000572,0.000701,0.000816,0.000828,0.000760,0.000659,0.000658,0.000606,0.000740,0.000701,0.000707,0.000631,0.000880,0.000003,0.000002 73 | 0.000017,0.000012,0.000002,0.000002,0.000637,0.000618,0.000686,0.000637,0.000623,0.000840,0.000787,0.000771,0.000533,0.000702,0.000734,0.000598,0.000662,0.000629,0.000745,0.001040,0.000001,0.000001 74 | 0.000013,0.000013,0.000002,0.000003,0.000628,0.000668,0.000670,0.000652,0.000741,0.000687,0.000861,0.000842,0.000605,0.000622,0.000615,0.000584,0.000626,0.000814,0.000907,0.000814,0.000002,0.000001 75 | 0.000040,0.000009,0.000002,0.000003,0.000640,0.000576,0.000686,0.000644,0.000581,0.000761,0.000801,0.000958,0.000683,0.000624,0.000612,0.000651,0.000701,0.000646,0.000901,0.000757,0.000001,0.000004 76 | 0.000012,0.000013,0.000003,0.000002,0.000598,0.000660,0.000685,0.000629,0.000802,0.000791,0.000607,0.000855,0.000673,0.000551,0.000614,0.000616,0.000637,0.000682,0.000873,0.000898,0.000002,0.000001 77 | 0.000011,0.000013,0.000003,0.000002,0.000616,0.000639,0.000638,0.000681,0.000777,0.000789,0.000926,0.000829,0.000662,0.000674,0.000540,0.000647,0.000687,0.000747,0.000719,0.000798,0.000002,0.000002 78 | 0.000011,0.000010,0.000003,0.000002,0.000660,0.000654,0.000675,0.000625,0.000800,0.000744,0.000760,0.000728,0.000631,0.000649,0.000593,0.000667,0.000680,0.000688,0.000784,0.000713,0.000001,0.000002 79 | 0.000005,0.000012,0.000002,0.000002,0.000627,0.000599,0.000660,0.000542,0.000697,0.000688,0.000724,0.000970,0.000639,0.000580,0.000801,0.000603,0.000791,0.000637,0.000704,0.000755,0.000001,0.000002 80 | 0.000012,0.000020,0.000003,0.000002,0.000629,0.000611,0.000658,0.000600,0.000622,0.000735,0.000615,0.000749,0.000666,0.000639,0.000689,0.000589,0.000762,0.000713,0.000862,0.000928,0.000001,0.000002 81 | 0.000012,0.000017,0.000003,0.000002,0.000597,0.000604,0.000636,0.000606,0.000594,0.000727,0.000725,0.000852,0.000678,0.000648,0.000610,0.000607,0.000854,0.000700,0.000780,0.000883,0.000002,0.000001 82 | 0.000016,0.000041,0.000002,0.000001,0.000603,0.000555,0.000699,0.000656,0.000757,0.000736,0.000892,0.000762,0.000595,0.000636,0.000672,0.000628,0.000782,0.000637,0.000692,0.000911,0.000001,0.000002 83 | 0.000010,0.000011,0.000002,0.000003,0.000602,0.000590,0.000609,0.000636,0.000684,0.000859,0.000662,0.000894,0.000685,0.000641,0.000604,0.000619,0.000752,0.000793,0.000635,0.000917,0.000002,0.000001 84 | 0.000013,0.000013,0.000002,0.000002,0.000586,0.000678,0.000616,0.000661,0.000617,0.000810,0.000888,0.000849,0.000653,0.000594,0.000607,0.000697,0.000676,0.000700,0.000780,0.000673,0.000001,0.000002 85 | 0.000010,0.000012,0.000003,0.000003,0.000614,0.000607,0.000628,0.000613,0.000647,0.000601,0.000729,0.000762,0.000648,0.000686,0.000632,0.000641,0.000628,0.000682,0.000785,0.000909,0.000005,0.000001 86 | 0.000009,0.000013,0.000002,0.000002,0.000645,0.000627,0.000590,0.000784,0.000642,0.000682,0.000707,0.000916,0.000603,0.000601,0.000691,0.000754,0.000678,0.000717,0.000656,0.000874,0.000002,0.000001 87 | 0.000009,0.000040,0.000002,0.000003,0.000535,0.000684,0.000761,0.000668,0.000593,0.000786,0.000699,0.000802,0.000617,0.000630,0.000663,0.000806,0.000624,0.000666,0.000782,0.000897,0.000002,0.000002 88 | 0.000015,0.000012,0.000003,0.000002,0.000651,0.000639,0.000599,0.000546,0.000690,0.000763,0.000654,0.000805,0.000572,0.000608,0.000745,0.000672,0.000584,0.000662,0.000816,0.000867,0.000002,0.000001 89 | 0.000014,0.000012,0.000002,0.000003,0.000670,0.000672,0.000643,0.000624,0.000628,0.000702,0.000860,0.000746,0.000619,0.000638,0.000643,0.000770,0.000593,0.000702,0.000758,0.000925,0.000002,0.000001 90 | 0.000013,0.000012,0.000003,0.000002,0.000665,0.000675,0.000610,0.000716,0.000818,0.000665,0.000856,0.000829,0.000628,0.000665,0.000677,0.000627,0.000622,0.000733,0.000776,0.000742,0.000002,0.000002 91 | 0.000011,0.000019,0.000002,0.000002,0.000686,0.000585,0.000649,0.000752,0.000742,0.000626,0.000726,0.000912,0.000605,0.000632,0.000659,0.000648,0.000619,0.000637,0.000853,0.000832,0.000002,0.000002 92 | 0.000014,0.000013,0.000005,0.000010,0.000646,0.000671,0.000695,0.000651,0.000739,0.000658,0.001339,0.000962,0.000545,0.000645,0.000699,0.000619,0.000590,0.000717,0.000669,0.000831,0.000003,0.000002 93 | 0.000008,0.000014,0.000002,0.000002,0.000665,0.000686,0.000644,0.000665,0.000754,0.000781,0.000640,0.000894,0.000610,0.000651,0.000635,0.000614,0.000656,0.000783,0.000775,0.000828,0.000001,0.000035 94 | 0.000009,0.000008,0.000002,0.000002,0.000657,0.000673,0.000607,0.000654,0.000755,0.000819,0.000807,0.000818,0.000648,0.000643,0.000634,0.000654,0.000770,0.000660,0.000725,0.000843,0.000001,0.000002 95 | 0.000008,0.000008,0.000002,0.000006,0.000650,0.000662,0.000745,0.000751,0.000649,0.000670,0.000890,0.000769,0.000647,0.000695,0.000675,0.000668,0.000643,0.000756,0.000677,0.000859,0.000001,0.000002 96 | 0.000009,0.000008,0.000002,0.000002,0.000701,0.000659,0.000682,0.000649,0.000663,0.000654,0.000879,0.000751,0.000641,0.000670,0.000639,0.000658,0.000750,0.000678,0.000901,0.000842,0.000004,0.000002 97 | 0.000008,0.000005,0.000002,0.000002,0.000739,0.000635,0.000631,0.000707,0.000794,0.000783,0.000719,0.000793,0.000639,0.000660,0.000619,0.000808,0.000623,0.000647,0.000782,0.000964,0.000002,0.000002 98 | 0.000009,0.000009,0.000003,0.000002,0.000656,0.000649,0.000670,0.000662,0.000682,0.000821,0.000716,0.000832,0.000670,0.000648,0.000659,0.000679,0.000759,0.000837,0.000651,0.000952,0.000001,0.000002 99 | 0.000007,0.000009,0.000002,0.000002,0.000668,0.000665,0.000619,0.000641,0.000760,0.000765,0.000823,0.001030,0.000684,0.000650,0.000783,0.000689,0.000649,0.000712,0.000763,0.000829,0.000001,0.000002 100 | 0.000008,0.000008,0.000005,0.000002,0.000624,0.000629,0.000536,0.000799,0.000648,0.000655,0.000846,0.000827,0.000650,0.000661,0.000693,0.000683,0.000655,0.000856,0.000699,0.000810,0.000002,0.000003 101 | 0.000007,0.000008,0.000002,0.000002,0.000618,0.000652,0.000632,0.000652,0.000749,0.000719,0.000753,0.000983,0.000649,0.000630,0.000617,0.000760,0.000664,0.000664,0.000678,0.000660,0.000002,0.000002 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_1000.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.000044,0.000040,0.000008,0.000007,0.000625,0.000622,0.000723,0.000633,0.000828,0.000819,0.000730,0.001103,0.000703,0.000599,0.000588,0.000597,0.000707,0.000832,0.000655,0.000825,0.000004,0.000006 3 | 0.000061,0.000046,0.000008,0.000006,0.000664,0.000665,0.000716,0.000621,0.000622,0.000727,0.000653,0.000819,0.000592,0.000553,0.000586,0.000666,0.000686,0.000760,0.001095,0.001010,0.000004,0.000004 4 | 0.000059,0.000040,0.000007,0.000006,0.000613,0.000695,0.000611,0.000600,0.000548,0.000644,0.000779,0.000923,0.000597,0.000611,0.000559,0.000619,0.000829,0.000832,0.000803,0.000809,0.000004,0.000004 5 | 0.000051,0.000040,0.000007,0.000006,0.000624,0.000693,0.000612,0.000702,0.000638,0.000680,0.001064,0.000842,0.000612,0.000671,0.000656,0.000612,0.000635,0.000731,0.000799,0.000956,0.000003,0.000005 6 | 0.000061,0.000047,0.000010,0.000006,0.000606,0.000612,0.000620,0.000642,0.000682,0.000826,0.000694,0.000730,0.000624,0.000582,0.000677,0.000612,0.000613,0.000706,0.000815,0.000795,0.000005,0.000005 7 | 0.000065,0.000050,0.000008,0.000009,0.000616,0.000661,0.000806,0.000542,0.000722,0.000712,0.000712,0.001008,0.000583,0.000573,0.000699,0.000665,0.000729,0.000750,0.000800,0.000842,0.000006,0.000005 8 | 0.000043,0.000046,0.000007,0.000010,0.000670,0.000575,0.000629,0.000614,0.000647,0.000804,0.000741,0.000765,0.000680,0.000640,0.000615,0.000601,0.000800,0.000882,0.000779,0.000804,0.000004,0.000004 9 | 0.000064,0.000050,0.000006,0.000006,0.000690,0.000637,0.000680,0.000668,0.000718,0.000764,0.000609,0.001031,0.000658,0.000636,0.000660,0.000782,0.000624,0.000801,0.000836,0.000754,0.000003,0.000005 10 | 0.000045,0.000049,0.000009,0.000007,0.000611,0.000634,0.000589,0.000707,0.000720,0.000937,0.000702,0.000784,0.000679,0.000626,0.000625,0.000685,0.000768,0.000892,0.000833,0.000870,0.000003,0.000004 11 | 0.000051,0.000046,0.000008,0.000008,0.000665,0.000595,0.000599,0.000687,0.000680,0.000668,0.000882,0.000919,0.000675,0.000635,0.000675,0.000700,0.000611,0.000796,0.000788,0.000749,0.000007,0.000004 12 | 0.000059,0.000054,0.000009,0.000008,0.000704,0.000574,0.000702,0.000682,0.000626,0.000599,0.000886,0.000729,0.000658,0.000624,0.000620,0.000606,0.000771,0.000862,0.000677,0.000862,0.000004,0.000003 13 | 0.000034,0.000085,0.000009,0.000008,0.000612,0.000696,0.000645,0.000614,0.000651,0.000919,0.000660,0.000936,0.000654,0.000648,0.000662,0.000659,0.000712,0.000623,0.000794,0.000880,0.000004,0.000004 14 | 0.000047,0.000046,0.000006,0.000006,0.000544,0.000686,0.000617,0.000658,0.000736,0.000840,0.000695,0.000802,0.000648,0.000645,0.000590,0.000665,0.000658,0.000694,0.000746,0.001005,0.000003,0.000005 15 | 0.000046,0.000043,0.000010,0.000022,0.000576,0.000602,0.000770,0.000599,0.000707,0.000740,0.000803,0.000926,0.000617,0.000651,0.000660,0.000673,0.000755,0.000743,0.000758,0.000846,0.000005,0.000004 16 | 0.000051,0.000052,0.000006,0.000008,0.000567,0.000669,0.000604,0.000610,0.000668,0.000849,0.000681,0.000884,0.000601,0.000605,0.000776,0.000705,0.000727,0.000713,0.000813,0.000777,0.000004,0.000006 17 | 0.000046,0.000050,0.000008,0.000008,0.000624,0.000592,0.000623,0.000549,0.000673,0.000702,0.000784,0.000828,0.000636,0.000650,0.000669,0.000745,0.000752,0.000573,0.000680,0.000887,0.000004,0.000004 18 | 0.000044,0.000044,0.000007,0.000008,0.000676,0.000645,0.000653,0.000781,0.000610,0.000641,0.000865,0.000952,0.000622,0.000599,0.000599,0.000607,0.000741,0.000725,0.000814,0.000842,0.000005,0.000003 19 | 0.000044,0.000047,0.000008,0.000021,0.000657,0.000717,0.000638,0.000581,0.000638,0.000672,0.000782,0.000911,0.000703,0.000708,0.000650,0.000660,0.000743,0.000714,0.000859,0.000787,0.000004,0.000003 20 | 0.000047,0.000066,0.000007,0.000007,0.000616,0.000611,0.000604,0.000714,0.000734,0.000683,0.000882,0.000856,0.000590,0.000648,0.000617,0.000684,0.000753,0.000733,0.000871,0.000639,0.000005,0.000006 21 | 0.000068,0.000052,0.000010,0.000008,0.000596,0.000600,0.000584,0.000768,0.000641,0.000810,0.000682,0.000708,0.000659,0.000742,0.000636,0.000669,0.000655,0.000733,0.000905,0.000947,0.000004,0.000004 22 | 0.000049,0.000052,0.000007,0.000007,0.000615,0.000621,0.000624,0.000684,0.000698,0.000778,0.000771,0.000723,0.000589,0.000587,0.000621,0.000588,0.000620,0.000708,0.000792,0.000934,0.000005,0.000004 23 | 0.000049,0.000048,0.000009,0.000008,0.000637,0.000650,0.000592,0.000689,0.000814,0.000685,0.000778,0.000824,0.000554,0.000667,0.000733,0.000637,0.000766,0.000852,0.000777,0.000694,0.000004,0.000003 24 | 0.000034,0.000044,0.000008,0.000007,0.000609,0.000605,0.000666,0.000707,0.000737,0.000809,0.000783,0.000733,0.000676,0.000630,0.000664,0.000777,0.000667,0.000899,0.000791,0.000910,0.000007,0.000006 25 | 0.000054,0.000059,0.000008,0.000007,0.000674,0.000642,0.000593,0.000780,0.000643,0.000807,0.000862,0.000764,0.000578,0.000544,0.000733,0.000624,0.000634,0.000913,0.000794,0.000801,0.000004,0.000004 26 | 0.000068,0.000046,0.000006,0.000007,0.000662,0.000702,0.000597,0.000632,0.000683,0.000800,0.000749,0.000955,0.000599,0.000582,0.000551,0.000639,0.000806,0.000686,0.000801,0.000740,0.000004,0.000003 27 | 0.000033,0.000037,0.000007,0.000008,0.000679,0.000603,0.000689,0.000746,0.000696,0.000673,0.000696,0.000745,0.000631,0.000626,0.000668,0.000687,0.000745,0.000714,0.000754,0.000698,0.000005,0.000004 28 | 0.000046,0.000056,0.000011,0.000007,0.000667,0.000607,0.000711,0.000674,0.000673,0.000664,0.000890,0.000850,0.000571,0.000688,0.000624,0.000662,0.000654,0.000785,0.000660,0.000772,0.000006,0.000004 29 | 0.000033,0.000047,0.000007,0.000007,0.000675,0.000619,0.000608,0.000702,0.000632,0.000659,0.000903,0.000815,0.000651,0.000581,0.000678,0.000625,0.000780,0.000762,0.000812,0.000906,0.000007,0.000003 30 | 0.000097,0.000048,0.000008,0.000008,0.000675,0.000647,0.000593,0.000818,0.000729,0.000753,0.000777,0.000962,0.000693,0.000637,0.000657,0.000605,0.000639,0.000703,0.000660,0.000822,0.000004,0.000004 31 | 0.000055,0.000066,0.000008,0.000006,0.000538,0.000657,0.000631,0.000662,0.000707,0.000683,0.000927,0.000831,0.000676,0.000614,0.000596,0.000638,0.000629,0.000840,0.000746,0.000887,0.000005,0.000004 32 | 0.000050,0.000045,0.000007,0.000006,0.000643,0.000608,0.000538,0.000690,0.000812,0.000823,0.000856,0.000829,0.000632,0.000689,0.000686,0.000619,0.000779,0.000676,0.000756,0.000777,0.000004,0.000006 33 | 0.000039,0.000067,0.000007,0.000007,0.000580,0.000631,0.000612,0.000635,0.000648,0.000631,0.000888,0.000852,0.000615,0.000709,0.000629,0.000576,0.000678,0.000759,0.000773,0.000815,0.000004,0.000005 34 | 0.000054,0.000050,0.000007,0.000007,0.000611,0.000688,0.000673,0.000729,0.000707,0.000677,0.000649,0.000902,0.000668,0.000695,0.000625,0.000665,0.000697,0.000648,0.000870,0.000687,0.000004,0.000004 35 | 0.000041,0.000051,0.000007,0.000007,0.000585,0.000634,0.000667,0.000752,0.000821,0.000752,0.000874,0.000865,0.000610,0.000696,0.000589,0.000631,0.000629,0.000867,0.000926,0.000867,0.000004,0.000003 36 | 0.000076,0.000043,0.000006,0.000008,0.000675,0.000541,0.000680,0.000592,0.000659,0.000795,0.000653,0.000842,0.000593,0.000637,0.000619,0.000618,0.000622,0.000827,0.000617,0.000835,0.000004,0.000006 37 | 0.000055,0.000046,0.000008,0.000006,0.000671,0.000638,0.000675,0.000539,0.000645,0.000845,0.000695,0.000776,0.000666,0.000673,0.000604,0.000656,0.000708,0.000631,0.000851,0.000899,0.000004,0.000004 38 | 0.000049,0.000045,0.000007,0.000008,0.000653,0.000595,0.000675,0.000628,0.000708,0.000735,0.000798,0.000920,0.000643,0.000555,0.000570,0.000721,0.000679,0.000705,0.000691,0.000699,0.000004,0.000003 39 | 0.000048,0.000048,0.000006,0.000007,0.000667,0.000660,0.000602,0.000686,0.000794,0.000653,0.000843,0.000765,0.000604,0.000626,0.000667,0.000623,0.000649,0.000679,0.000639,0.000805,0.000007,0.000007 40 | 0.000132,0.000041,0.000011,0.000007,0.000604,0.000634,0.000602,0.000589,0.000698,0.000707,0.000814,0.000695,0.000630,0.000589,0.000620,0.000675,0.000666,0.000683,0.000779,0.000919,0.000004,0.000004 41 | 0.000047,0.000043,0.000008,0.000006,0.000557,0.000564,0.000599,0.000624,0.000758,0.000859,0.000713,0.000870,0.000646,0.000665,0.000611,0.000710,0.000733,0.000770,0.000773,0.000835,0.000006,0.000005 42 | 0.000044,0.000048,0.000008,0.000007,0.000619,0.000686,0.000575,0.000649,0.000777,0.000800,0.000785,0.000806,0.000695,0.000604,0.000681,0.000595,0.000641,0.000737,0.000565,0.000990,0.000005,0.000004 43 | 0.000050,0.000055,0.000006,0.000008,0.000614,0.000687,0.000675,0.000721,0.000624,0.000680,0.000586,0.000829,0.000653,0.000677,0.000682,0.000627,0.000814,0.000745,0.000785,0.000850,0.000004,0.000005 44 | 0.000046,0.000036,0.000007,0.000008,0.000634,0.000577,0.000779,0.000613,0.000649,0.000795,0.000645,0.000888,0.000618,0.000656,0.000601,0.000744,0.000641,0.000801,0.000810,0.000716,0.000003,0.000004 45 | 0.000084,0.000064,0.000012,0.000008,0.000696,0.000688,0.000657,0.000698,0.000838,0.000877,0.000822,0.000819,0.000701,0.000697,0.000644,0.000675,0.000755,0.000651,0.000748,0.000852,0.000007,0.000004 46 | 0.000051,0.000037,0.000006,0.000009,0.000637,0.000681,0.000685,0.000648,0.000742,0.000819,0.000662,0.000898,0.000630,0.000675,0.000688,0.000774,0.000743,0.000708,0.000964,0.000878,0.000004,0.000004 47 | 0.000087,0.000046,0.000006,0.000005,0.000633,0.000646,0.000605,0.000741,0.000651,0.000638,0.000834,0.000714,0.000660,0.000686,0.000694,0.000680,0.000705,0.000845,0.000876,0.000840,0.000004,0.000004 48 | 0.000087,0.000038,0.000006,0.000007,0.000642,0.000546,0.000639,0.000694,0.000689,0.000660,0.000741,0.000695,0.000690,0.000691,0.000616,0.000602,0.000693,0.000831,0.000888,0.001003,0.000005,0.000005 49 | 0.000035,0.000111,0.000008,0.000010,0.000667,0.000622,0.000704,0.000663,0.000633,0.000722,0.000825,0.000922,0.000691,0.000552,0.000554,0.000614,0.000632,0.000702,0.000759,0.000922,0.000004,0.000004 50 | 0.000051,0.000048,0.000006,0.000011,0.000622,0.000594,0.000610,0.000630,0.000699,0.000688,0.000777,0.000805,0.000659,0.000611,0.000723,0.000639,0.000838,0.000803,0.000906,0.000827,0.000005,0.000003 51 | 0.000049,0.000052,0.000007,0.000022,0.000645,0.000579,0.000660,0.000737,0.000647,0.000690,0.000739,0.000881,0.000625,0.000677,0.000602,0.000703,0.000633,0.000759,0.000630,0.000743,0.000005,0.000003 52 | 0.000049,0.000051,0.000007,0.000008,0.000638,0.000590,0.000701,0.000606,0.000611,0.000697,0.000744,0.000951,0.000609,0.000631,0.000698,0.000681,0.000819,0.000668,0.000668,0.000927,0.000004,0.000004 53 | 0.000050,0.000052,0.000009,0.000007,0.000628,0.000657,0.000709,0.000687,0.000723,0.000905,0.000631,0.000878,0.000662,0.000700,0.000704,0.000661,0.000755,0.000926,0.000739,0.000650,0.000003,0.000005 54 | 0.000050,0.000055,0.000008,0.000021,0.000636,0.000613,0.000564,0.000710,0.000638,0.000863,0.000681,0.000820,0.000652,0.000662,0.000691,0.000637,0.000625,0.000786,0.000788,0.000928,0.000004,0.000024 55 | 0.000054,0.000046,0.000006,0.000006,0.000679,0.000630,0.000668,0.000722,0.000666,0.000832,0.000655,0.000759,0.000681,0.000622,0.000679,0.000605,0.000783,0.000827,0.000774,0.000864,0.000003,0.000005 56 | 0.000077,0.000047,0.000007,0.000007,0.000680,0.000645,0.000715,0.000674,0.000664,0.000706,0.000642,0.000898,0.000622,0.000670,0.000639,0.000651,0.000623,0.000708,0.000864,0.000999,0.000004,0.000005 57 | 0.000049,0.000048,0.000006,0.000007,0.000613,0.000700,0.000813,0.000651,0.000616,0.000675,0.000804,0.000923,0.000682,0.000621,0.000813,0.000682,0.000646,0.000605,0.000609,0.000824,0.000004,0.000004 58 | 0.000041,0.000047,0.000010,0.000009,0.000626,0.000661,0.000656,0.000706,0.000693,0.000731,0.000709,0.000781,0.000575,0.000696,0.000603,0.000651,0.000559,0.000646,0.000833,0.000915,0.000004,0.000005 59 | 0.000055,0.000035,0.000007,0.000006,0.000622,0.000605,0.000679,0.000605,0.000659,0.000839,0.000749,0.000785,0.000686,0.000698,0.000654,0.000690,0.000641,0.000789,0.000935,0.000783,0.000005,0.000005 60 | 0.000033,0.000043,0.000006,0.000006,0.000673,0.000697,0.000638,0.000611,0.000679,0.000793,0.000641,0.000846,0.000659,0.000647,0.000595,0.000665,0.000691,0.000894,0.000873,0.000799,0.000003,0.000005 61 | 0.000047,0.000053,0.000008,0.000008,0.000600,0.000603,0.000632,0.000775,0.000804,0.000674,0.000808,0.000781,0.000658,0.000617,0.000708,0.000599,0.000720,0.000588,0.000983,0.000761,0.000004,0.000006 62 | 0.000049,0.000053,0.000007,0.000007,0.000702,0.000653,0.000622,0.000673,0.000635,0.000693,0.000716,0.000784,0.000632,0.000649,0.000608,0.000762,0.000706,0.000782,0.000736,0.000988,0.000004,0.000005 63 | 0.000048,0.000045,0.000009,0.000008,0.000565,0.000734,0.000709,0.000639,0.000801,0.000699,0.000629,0.000920,0.000603,0.000648,0.000673,0.000580,0.000683,0.000877,0.000693,0.000799,0.000007,0.000006 64 | 0.000071,0.000048,0.000006,0.000007,0.000608,0.000646,0.000648,0.000756,0.000671,0.000640,0.000632,0.000832,0.000641,0.000621,0.000734,0.000675,0.000769,0.000848,0.000887,0.000839,0.000008,0.000004 65 | 0.000040,0.000091,0.000007,0.000006,0.000593,0.000602,0.000677,0.000813,0.000642,0.000642,0.000815,0.000839,0.000656,0.000648,0.000722,0.000710,0.000698,0.000836,0.000771,0.000895,0.000005,0.000004 66 | 0.000057,0.000040,0.000008,0.000006,0.000607,0.000587,0.000658,0.000705,0.000626,0.000828,0.000758,0.000824,0.000684,0.000526,0.000756,0.000619,0.000642,0.000793,0.000816,0.000695,0.000006,0.000005 67 | 0.000063,0.000040,0.000010,0.000007,0.000663,0.000694,0.000671,0.000688,0.000685,0.000658,0.000894,0.000672,0.000648,0.000588,0.000649,0.000637,0.000817,0.000657,0.000753,0.000888,0.000004,0.000006 68 | 0.000049,0.000038,0.000008,0.000007,0.000690,0.000705,0.000727,0.000627,0.000662,0.000833,0.000755,0.000750,0.000634,0.000602,0.000640,0.000683,0.000829,0.000618,0.000913,0.000863,0.000018,0.000003 69 | 0.000089,0.000053,0.000008,0.000010,0.000720,0.000606,0.000805,0.000627,0.000622,0.000852,0.000799,0.000799,0.000626,0.000661,0.000640,0.000648,0.000763,0.000700,0.000628,0.000827,0.000004,0.000003 70 | 0.000050,0.000046,0.000007,0.000012,0.000672,0.000680,0.000678,0.000779,0.000721,0.000778,0.000680,0.000763,0.000647,0.000598,0.000699,0.000686,0.000616,0.000796,0.000647,0.000840,0.000004,0.000005 71 | 0.000052,0.000051,0.000006,0.000009,0.000637,0.000684,0.000615,0.000679,0.000747,0.000702,0.000671,0.000935,0.000628,0.000683,0.000685,0.000641,0.000791,0.000791,0.000851,0.000993,0.000004,0.000004 72 | 0.000049,0.000034,0.000007,0.000009,0.000609,0.000687,0.000642,0.000663,0.000834,0.000813,0.000803,0.000863,0.000604,0.000640,0.000663,0.000644,0.000608,0.000744,0.000701,0.000926,0.000005,0.000004 73 | 0.000112,0.000043,0.000006,0.000008,0.000589,0.000702,0.000769,0.000651,0.000731,0.000807,0.000679,0.000636,0.000624,0.000581,0.000691,0.000681,0.000724,0.000846,0.000644,0.000856,0.000006,0.000005 74 | 0.000062,0.000070,0.000007,0.000008,0.000680,0.000559,0.000649,0.000655,0.000703,0.000706,0.000754,0.000693,0.000619,0.000601,0.000691,0.000657,0.000739,0.000689,0.000724,0.000874,0.000005,0.000004 75 | 0.000038,0.000054,0.000006,0.000006,0.000669,0.000612,0.000603,0.000674,0.000777,0.000644,0.000845,0.000777,0.000644,0.000662,0.000683,0.000603,0.000731,0.000765,0.000700,0.000760,0.000005,0.000004 76 | 0.000038,0.000047,0.000006,0.000009,0.000628,0.000679,0.000607,0.000572,0.000675,0.000652,0.000875,0.000892,0.000659,0.000635,0.000641,0.000602,0.000756,0.000643,0.000689,0.000900,0.000004,0.000007 77 | 0.000046,0.000047,0.000007,0.000007,0.000585,0.000619,0.000671,0.000629,0.000677,0.000642,0.000888,0.000785,0.000665,0.000577,0.000750,0.000723,0.000622,0.000786,0.000706,0.000782,0.000005,0.000003 78 | 0.000051,0.000053,0.000007,0.000006,0.000644,0.000677,0.000690,0.000620,0.000651,0.000652,0.000770,0.000769,0.000625,0.000645,0.000618,0.000775,0.000583,0.000884,0.000707,0.000787,0.000011,0.000003 79 | 0.000047,0.000051,0.000007,0.000012,0.000718,0.000620,0.000619,0.000712,0.000684,0.000688,0.000839,0.000853,0.000628,0.000670,0.000671,0.000687,0.000689,0.000673,0.000728,0.000869,0.000004,0.000004 80 | 0.000045,0.000037,0.000007,0.000007,0.000600,0.000667,0.000597,0.000742,0.000783,0.000593,0.000872,0.000745,0.000626,0.000673,0.000586,0.000793,0.000694,0.000785,0.000777,0.000913,0.000005,0.000006 81 | 0.000047,0.000049,0.000007,0.000008,0.000694,0.000668,0.000661,0.000633,0.000788,0.000691,0.000712,0.000801,0.000673,0.000657,0.000656,0.000700,0.000735,0.000666,0.000663,0.000846,0.000004,0.000004 82 | 0.000043,0.000048,0.000009,0.000007,0.000675,0.000599,0.000613,0.000791,0.000702,0.000702,0.000712,0.000823,0.000567,0.000624,0.000733,0.000689,0.000634,0.000632,0.000750,0.000824,0.000004,0.000003 83 | 0.000054,0.000047,0.000009,0.000007,0.000712,0.000621,0.000631,0.000781,0.000710,0.000832,0.000819,0.000805,0.000638,0.000553,0.000685,0.000780,0.000704,0.000705,0.000599,0.000706,0.000004,0.000004 84 | 0.000084,0.000111,0.000022,0.000007,0.000615,0.000642,0.000557,0.000640,0.000686,0.000859,0.000656,0.000642,0.000602,0.000615,0.000639,0.000642,0.000751,0.000848,0.000710,0.000842,0.000005,0.000004 85 | 0.000050,0.000073,0.000008,0.000008,0.000638,0.000686,0.000616,0.000650,0.000729,0.000753,0.000883,0.000931,0.000603,0.000687,0.000677,0.000675,0.000620,0.000730,0.000694,0.000743,0.000004,0.000005 86 | 0.000045,0.000055,0.000008,0.000013,0.000582,0.000628,0.000605,0.000698,0.000722,0.000714,0.000798,0.000812,0.000670,0.000641,0.000562,0.000677,0.000689,0.000648,0.000794,0.000954,0.000004,0.000005 87 | 0.000056,0.000040,0.000006,0.000015,0.000598,0.000633,0.000638,0.000772,0.000656,0.000637,0.000903,0.000891,0.000674,0.000628,0.000611,0.000642,0.000773,0.000718,0.000845,0.000994,0.000004,0.000004 88 | 0.000053,0.000051,0.000007,0.000007,0.000583,0.000697,0.000617,0.000828,0.000684,0.000828,0.000657,0.000908,0.000612,0.000677,0.000704,0.000603,0.000684,0.000640,0.000739,0.000785,0.000004,0.000020 89 | 0.000055,0.000059,0.000008,0.000019,0.000606,0.000548,0.000680,0.000661,0.001337,0.000647,0.000720,0.000771,0.000699,0.000633,0.000727,0.000654,0.000811,0.001203,0.000923,0.000924,0.000006,0.000004 90 | 0.000047,0.000045,0.000012,0.000007,0.000682,0.000687,0.000671,0.000681,0.000635,0.000682,0.000811,0.000893,0.000682,0.000684,0.000662,0.000647,0.000825,0.000681,0.000807,0.000872,0.000005,0.000008 91 | 0.000044,0.000046,0.000007,0.000006,0.000627,0.000689,0.000671,0.000630,0.000768,0.000669,0.000697,0.000871,0.000613,0.000686,0.000686,0.000642,0.000776,0.000801,0.000790,0.000851,0.000004,0.000004 92 | 0.000046,0.000044,0.000008,0.000007,0.000642,0.000674,0.000640,0.000762,0.000664,0.000884,0.000906,0.000793,0.000610,0.000621,0.000694,0.000801,0.000649,0.000746,0.000656,0.000664,0.000004,0.000004 93 | 0.000067,0.000045,0.000009,0.000008,0.000709,0.000653,0.000659,0.000629,0.000693,0.000683,0.000945,0.000807,0.000649,0.000655,0.000672,0.000807,0.000730,0.000668,0.000764,0.000740,0.000006,0.000004 94 | 0.000041,0.000043,0.000010,0.000007,0.000687,0.000608,0.000695,0.000692,0.000648,0.000898,0.000788,0.000947,0.000694,0.000641,0.000661,0.000764,0.000653,0.000779,0.000685,0.000832,0.000005,0.000005 95 | 0.000044,0.000038,0.000007,0.000008,0.000600,0.000668,0.000689,0.000779,0.000680,0.000662,0.000659,0.000844,0.000673,0.000652,0.000705,0.000669,0.000740,0.000797,0.000687,0.001041,0.000003,0.000004 96 | 0.000044,0.000045,0.000008,0.000007,0.000655,0.000657,0.000653,0.000828,0.000665,0.000693,0.000826,0.000911,0.000688,0.000692,0.000658,0.000711,0.000658,0.000636,0.000668,0.000833,0.000004,0.000005 97 | 0.000041,0.000056,0.000007,0.000007,0.000660,0.000627,0.000650,0.000664,0.000673,0.000755,0.000674,0.000888,0.000683,0.000646,0.000733,0.000635,0.000768,0.000830,0.000692,0.000863,0.000003,0.000006 98 | 0.000044,0.000081,0.000008,0.000010,0.000554,0.000673,0.000652,0.000659,0.000646,0.000750,0.000804,0.000998,0.000699,0.000639,0.000648,0.000658,0.000791,0.000829,0.000977,0.000782,0.000004,0.000004 99 | 0.000043,0.000050,0.000008,0.000010,0.000664,0.000687,0.000626,0.000670,0.000781,0.000711,0.000709,0.000747,0.000659,0.000654,0.000672,0.000681,0.000691,0.000728,0.000929,0.000970,0.000005,0.000004 100 | 0.000043,0.000041,0.000007,0.000007,0.000665,0.000675,0.000718,0.000630,0.000691,0.000755,0.000679,0.000799,0.000672,0.000667,0.000692,0.000688,0.000683,0.000650,0.000729,0.000799,0.000003,0.000004 101 | 0.000041,0.000080,0.000006,0.000007,0.000692,0.000626,0.000667,0.000618,0.000791,0.000853,0.000764,0.000899,0.000675,0.000623,0.000654,0.000652,0.000657,0.000759,0.000865,0.000656,0.000005,0.000004 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_10000.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.000408,0.000372,0.000064,0.000055,0.000598,0.000648,0.000688,0.000626,0.000782,0.000618,0.000664,0.000817,0.000686,0.000893,0.000603,0.000649,0.000665,0.000770,0.001152,0.000902,0.000095,0.000041 3 | 0.000411,0.000479,0.000057,0.000055,0.000657,0.000621,0.000688,0.000711,0.000644,0.000604,0.000722,0.000767,0.000647,0.000697,0.000667,0.000607,0.000588,0.000632,0.000820,0.000835,0.000028,0.000033 4 | 0.000377,0.000422,0.000057,0.000065,0.000697,0.000599,0.000671,0.000674,0.000780,0.000668,0.000873,0.000788,0.000620,0.000695,0.000632,0.000677,0.000630,0.000694,0.000689,0.000944,0.000025,0.000029 5 | 0.000383,0.000321,0.000108,0.000061,0.000658,0.000648,0.000684,0.000677,0.000804,0.000733,0.000772,0.000781,0.000683,0.000601,0.000627,0.000639,0.000691,0.000782,0.000644,0.000871,0.000029,0.000029 6 | 0.000397,0.000457,0.000061,0.000085,0.000664,0.000596,0.000627,0.000688,0.000629,0.000660,0.000766,0.000811,0.000615,0.000675,0.000727,0.000741,0.000661,0.000660,0.000878,0.000840,0.000029,0.000028 7 | 0.000357,0.000362,0.000062,0.000054,0.000597,0.000634,0.000678,0.000691,0.000719,0.000783,0.000879,0.000882,0.000688,0.000626,0.000682,0.000631,0.000638,0.000777,0.000694,0.000901,0.000030,0.000030 8 | 0.000477,0.000407,0.000109,0.000054,0.000629,0.000622,0.000682,0.000555,0.000842,0.000734,0.000773,0.000614,0.000683,0.000655,0.000615,0.000614,0.000645,0.000673,0.000670,0.000740,0.000031,0.000032 9 | 0.000387,0.000320,0.000061,0.000053,0.000641,0.000605,0.000707,0.000740,0.000599,0.000703,0.000731,0.000863,0.000690,0.000647,0.000755,0.000649,0.000664,0.000762,0.000861,0.000762,0.000030,0.000027 10 | 0.000463,0.000365,0.000056,0.000089,0.000624,0.000601,0.000540,0.000711,0.000676,0.000675,0.000678,0.000818,0.000666,0.000697,0.000671,0.000638,0.000721,0.000600,0.000857,0.000913,0.000028,0.000036 11 | 0.000399,0.000415,0.000056,0.000085,0.000638,0.000648,0.000676,0.000655,0.000631,0.000640,0.000765,0.000676,0.000656,0.000702,0.000603,0.000578,0.000654,0.000662,0.000808,0.000814,0.000052,0.000034 12 | 0.000359,0.000439,0.000058,0.000054,0.000698,0.000633,0.000660,0.000726,0.000716,0.000690,0.000685,0.000821,0.000678,0.000677,0.000617,0.000793,0.000613,0.000629,0.000773,0.000798,0.000031,0.000031 13 | 0.000415,0.000405,0.000070,0.000063,0.000645,0.000717,0.000550,0.000648,0.000772,0.000786,0.000731,0.000764,0.000706,0.000671,0.000644,0.000789,0.000719,0.000668,0.000657,0.000678,0.000029,0.000034 14 | 0.000458,0.000341,0.000064,0.000054,0.000681,0.000702,0.000717,0.000699,0.000699,0.000785,0.000814,0.000798,0.000640,0.000600,0.000723,0.000782,0.000739,0.000744,0.000661,0.000886,0.000059,0.000070 15 | 0.000423,0.000473,0.000072,0.000104,0.000639,0.000668,0.000643,0.000662,0.000789,0.000656,0.000694,0.000887,0.000635,0.000634,0.000614,0.000691,0.000818,0.000602,0.000748,0.000638,0.000029,0.000031 16 | 0.000470,0.000492,0.000062,0.000088,0.000722,0.000630,0.000606,0.000733,0.000816,0.000727,0.000561,0.000889,0.000760,0.000622,0.000707,0.000561,0.000573,0.000881,0.000778,0.000926,0.000028,0.000042 17 | 0.000341,0.000438,0.000057,0.000063,0.000634,0.000683,0.000675,0.000653,0.000712,0.000587,0.001044,0.000839,0.000624,0.000671,0.000634,0.000599,0.000768,0.000741,0.000838,0.000845,0.000024,0.000023 18 | 0.000342,0.000423,0.000054,0.000050,0.000629,0.000696,0.000652,0.000853,0.000640,0.000895,0.000732,0.000705,0.000630,0.000677,0.000719,0.000700,0.000628,0.000641,0.000783,0.000773,0.000027,0.000027 19 | 0.000459,0.000428,0.000048,0.000056,0.000724,0.000534,0.000670,0.000723,0.000575,0.000638,0.000694,0.000732,0.000678,0.000658,0.000671,0.000666,0.000849,0.000669,0.000736,0.000850,0.000027,0.000025 20 | 0.000354,0.000390,0.000058,0.000054,0.000684,0.000642,0.000650,0.000779,0.000713,0.000661,0.000966,0.000835,0.000689,0.000617,0.000740,0.000623,0.000669,0.000680,0.000692,0.000851,0.000023,0.000057 21 | 0.000377,0.000358,0.000054,0.000060,0.000635,0.000644,0.000815,0.000714,0.000629,0.000669,0.000931,0.000827,0.000655,0.000701,0.000613,0.000653,0.000860,0.000700,0.000831,0.000835,0.000027,0.000026 22 | 0.000442,0.000372,0.000055,0.000069,0.000661,0.000620,0.000590,0.000642,0.000767,0.000732,0.000712,0.000810,0.000573,0.000592,0.000658,0.000741,0.000635,0.000728,0.000720,0.000919,0.000023,0.000025 23 | 0.000468,0.000369,0.000086,0.000049,0.000702,0.000658,0.000645,0.000633,0.000666,0.000647,0.000880,0.000849,0.000654,0.000650,0.000624,0.000610,0.000783,0.000591,0.000593,0.000913,0.000025,0.000034 24 | 0.000399,0.000380,0.000050,0.000058,0.000636,0.000607,0.000695,0.000667,0.000555,0.000777,0.000810,0.000659,0.000657,0.000625,0.000687,0.000744,0.000679,0.000655,0.000762,0.000948,0.000025,0.000023 25 | 0.000422,0.000377,0.000058,0.000052,0.000621,0.000690,0.000697,0.000653,0.000718,0.000661,0.000913,0.000799,0.000670,0.000656,0.000693,0.000662,0.000636,0.000734,0.000719,0.000753,0.000025,0.000025 26 | 0.000432,0.000407,0.000103,0.000048,0.000643,0.000637,0.000635,0.000699,0.000845,0.000569,0.000734,0.000794,0.000690,0.000645,0.000590,0.000631,0.000696,0.000783,0.000628,0.000644,0.000024,0.000023 27 | 0.000417,0.000397,0.000056,0.000060,0.000738,0.000707,0.000608,0.000624,0.000666,0.000769,0.000816,0.000812,0.000643,0.000688,0.000639,0.000773,0.000697,0.000650,0.000834,0.000831,0.000025,0.000028 28 | 0.000346,0.000473,0.000048,0.000056,0.000668,0.000675,0.000671,0.000603,0.000705,0.000724,0.000708,0.000935,0.000667,0.000673,0.000602,0.000619,0.000635,0.000853,0.000658,0.000817,0.000029,0.000028 29 | 0.000353,0.000394,0.000054,0.000066,0.000603,0.000690,0.000650,0.000710,0.000659,0.000796,0.000789,0.000802,0.000624,0.000664,0.000652,0.000626,0.000806,0.000800,0.000652,0.000868,0.000037,0.000055 30 | 0.000428,0.000425,0.000049,0.000048,0.000603,0.000679,0.000684,0.000664,0.000703,0.000812,0.000815,0.000859,0.000752,0.000600,0.000671,0.000834,0.000657,0.000855,0.000619,0.000937,0.000026,0.000061 31 | 0.000440,0.000432,0.000054,0.000067,0.000664,0.000663,0.000698,0.000640,0.000557,0.000693,0.000900,0.000822,0.000658,0.000652,0.000632,0.000756,0.000693,0.000835,0.000600,0.000887,0.000024,0.000027 32 | 0.000413,0.000418,0.000048,0.000053,0.000647,0.000689,0.000652,0.000713,0.000762,0.000807,0.000634,0.000873,0.000633,0.000682,0.000638,0.000636,0.000710,0.000685,0.000876,0.000807,0.000023,0.000025 33 | 0.000464,0.000349,0.000049,0.000055,0.000626,0.000663,0.000679,0.000654,0.000739,0.000626,0.000739,0.000841,0.000606,0.000677,0.000679,0.000677,0.000833,0.000806,0.000790,0.000766,0.000026,0.000023 34 | 0.000523,0.000356,0.000059,0.000050,0.000692,0.000670,0.000789,0.000659,0.000770,0.000603,0.000766,0.000768,0.000618,0.000737,0.000597,0.000736,0.000676,0.000700,0.000724,0.000833,0.000026,0.000028 35 | 0.000387,0.000398,0.000048,0.000049,0.000642,0.000614,0.000684,0.000628,0.000623,0.000602,0.000890,0.000735,0.000690,0.000568,0.000670,0.000760,0.000615,0.000825,0.000722,0.000810,0.000025,0.000026 36 | 0.000351,0.000360,0.000049,0.000045,0.000640,0.000611,0.000672,0.000683,0.000731,0.000643,0.000840,0.000752,0.000694,0.000620,0.000659,0.000624,0.000599,0.000658,0.000812,0.000949,0.000029,0.000023 37 | 0.000367,0.000370,0.000054,0.000077,0.000705,0.000652,0.000694,0.000803,0.000689,0.000671,0.000847,0.000667,0.000646,0.000618,0.000668,0.000606,0.000727,0.000823,0.000739,0.000785,0.000023,0.000026 38 | 0.000376,0.000369,0.000059,0.000055,0.000631,0.000617,0.000651,0.000731,0.000719,0.000623,0.000917,0.000831,0.000604,0.000647,0.000688,0.000709,0.000819,0.000802,0.000645,0.000860,0.000026,0.000024 39 | 0.000363,0.000420,0.000079,0.000058,0.000700,0.000639,0.000711,0.000706,0.000554,0.000777,0.000716,0.000832,0.000654,0.000669,0.000624,0.000685,0.000655,0.000841,0.001022,0.000780,0.000024,0.000029 40 | 0.000342,0.000400,0.000049,0.000052,0.000689,0.000671,0.000651,0.000609,0.000665,0.000709,0.000713,0.000926,0.000610,0.000638,0.000689,0.000673,0.000686,0.000793,0.000795,0.000747,0.000029,0.000026 41 | 0.000315,0.000446,0.000051,0.000055,0.000689,0.000681,0.000655,0.000607,0.000702,0.000598,0.000763,0.000794,0.000625,0.000656,0.000742,0.000667,0.000695,0.000865,0.000630,0.000690,0.000023,0.000023 42 | 0.000392,0.000398,0.000054,0.000053,0.000661,0.000696,0.000726,0.000673,0.000813,0.000702,0.000773,0.000816,0.000683,0.000684,0.000715,0.000684,0.000742,0.000723,0.000723,0.000772,0.000024,0.000047 43 | 0.000385,0.000664,0.000051,0.000081,0.000717,0.000650,0.000697,0.000644,0.001064,0.000703,0.000844,0.000823,0.000665,0.000630,0.000672,0.000675,0.000825,0.000803,0.000846,0.000801,0.000026,0.000039 44 | 0.000434,0.000505,0.000048,0.000049,0.000633,0.000657,0.000600,0.000634,0.000682,0.000683,0.000851,0.000623,0.000644,0.000698,0.000656,0.000628,0.000683,0.000753,0.000637,0.000739,0.000024,0.000027 45 | 0.000453,0.000421,0.000069,0.000051,0.000690,0.000697,0.000619,0.000730,0.000645,0.000668,0.000903,0.000915,0.000672,0.000611,0.000633,0.000683,0.000786,0.000770,0.000801,0.000768,0.000028,0.000030 46 | 0.000444,0.000433,0.000048,0.000050,0.000667,0.000636,0.000611,0.000729,0.000680,0.000874,0.000791,0.000825,0.000665,0.000652,0.000723,0.000645,0.000633,0.000808,0.000776,0.000839,0.000025,0.000029 47 | 0.000444,0.000441,0.000053,0.000059,0.000638,0.000695,0.000620,0.000550,0.000601,0.000670,0.000816,0.000952,0.000635,0.000696,0.000693,0.000728,0.000697,0.000657,0.000797,0.000895,0.000023,0.000023 48 | 0.000430,0.000476,0.000064,0.000049,0.000609,0.000693,0.000597,0.000654,0.000762,0.000719,0.000824,0.000950,0.000617,0.000667,0.000700,0.000735,0.000618,0.000635,0.000709,0.000778,0.000025,0.000023 49 | 0.000408,0.000398,0.000049,0.000055,0.000567,0.000724,0.000662,0.000608,0.000702,0.000637,0.000874,0.000827,0.000646,0.000621,0.000673,0.000752,0.000685,0.000690,0.000832,0.000844,0.000030,0.000023 50 | 0.000378,0.000363,0.000055,0.000056,0.000682,0.000591,0.000675,0.000641,0.000656,0.000628,0.000835,0.000800,0.000704,0.000705,0.000671,0.000750,0.000624,0.000612,0.000686,0.000908,0.000031,0.000024 51 | 0.000423,0.000351,0.000063,0.000052,0.000648,0.000592,0.000574,0.000723,0.000822,0.000758,0.000816,0.000649,0.000627,0.000649,0.000650,0.000674,0.000805,0.000698,0.000717,0.000819,0.000029,0.000053 52 | 0.000510,0.000421,0.000063,0.000096,0.000705,0.000596,0.000612,0.000729,0.000749,0.000678,0.000764,0.000748,0.000606,0.000630,0.000635,0.000650,0.000635,0.000685,0.000754,0.000856,0.000026,0.000025 53 | 0.000418,0.000524,0.000053,0.000049,0.000646,0.000685,0.000684,0.000750,0.000674,0.000893,0.000709,0.000744,0.000677,0.000588,0.000702,0.000755,0.000741,0.000616,0.000829,0.000890,0.000029,0.000024 54 | 0.000399,0.000396,0.000049,0.000083,0.000716,0.000751,0.000678,0.000644,0.000709,0.000736,0.000786,0.000917,0.000707,0.000597,0.000672,0.000640,0.000629,0.000762,0.000781,0.000847,0.000025,0.000031 55 | 0.000480,0.000448,0.000052,0.000050,0.000599,0.000598,0.000679,0.000712,0.000756,0.000812,0.000758,0.000904,0.000615,0.000595,0.000639,0.000618,0.000650,0.000758,0.000824,0.000774,0.000035,0.000024 56 | 0.000421,0.000415,0.000054,0.000048,0.000665,0.000649,0.000733,0.000796,0.000741,0.000641,0.000808,0.000715,0.000627,0.000607,0.000651,0.000749,0.000677,0.000750,0.000644,0.000915,0.000037,0.000025 57 | 0.000332,0.000385,0.000083,0.000049,0.000574,0.000622,0.000746,0.000728,0.000791,0.000806,0.000786,0.000851,0.000637,0.000673,0.000635,0.000679,0.000648,0.000682,0.000881,0.000729,0.000025,0.000031 58 | 0.000376,0.000402,0.000053,0.000060,0.000656,0.000677,0.000686,0.000670,0.000795,0.000814,0.000745,0.000804,0.000641,0.000655,0.000639,0.000750,0.000652,0.000814,0.000814,0.000938,0.000024,0.000026 59 | 0.000432,0.000497,0.000051,0.000060,0.000724,0.000640,0.000653,0.000602,0.000839,0.000704,0.000845,0.000797,0.000626,0.000657,0.000660,0.000631,0.000698,0.000636,0.000830,0.000835,0.000026,0.000027 60 | 0.000349,0.000447,0.000055,0.000069,0.000617,0.000637,0.000679,0.000768,0.000705,0.000766,0.000672,0.000801,0.000671,0.000649,0.000744,0.000771,0.000723,0.000710,0.000705,0.000821,0.000024,0.000031 61 | 0.000366,0.000402,0.000058,0.000055,0.000715,0.000709,0.000690,0.000662,0.000708,0.000711,0.000882,0.000891,0.000650,0.000583,0.000677,0.000718,0.000660,0.000627,0.000860,0.000893,0.000029,0.000025 62 | 0.000338,0.000375,0.000059,0.000049,0.000642,0.000614,0.000620,0.000675,0.000630,0.000886,0.000720,0.000865,0.000616,0.000710,0.000664,0.000676,0.000742,0.000802,0.000753,0.000982,0.000038,0.000026 63 | 0.000474,0.000448,0.000064,0.000076,0.000651,0.000679,0.000666,0.000654,0.000706,0.000857,0.000724,0.000843,0.000710,0.000641,0.000650,0.000626,0.000679,0.000615,0.000896,0.000655,0.000044,0.000032 64 | 0.000414,0.000380,0.000054,0.000055,0.000676,0.000701,0.000701,0.000572,0.000824,0.000689,0.000719,0.000936,0.000643,0.000629,0.000581,0.000793,0.000640,0.000884,0.000903,0.000869,0.000024,0.000025 65 | 0.000362,0.000343,0.000050,0.000055,0.000719,0.000711,0.000622,0.000694,0.000836,0.000686,0.000713,0.000983,0.000688,0.000616,0.000699,0.000575,0.000697,0.000761,0.000766,0.000949,0.000027,0.000025 66 | 0.000364,0.000400,0.000055,0.000049,0.000639,0.000711,0.000677,0.000657,0.000622,0.000625,0.000667,0.000824,0.000644,0.000664,0.000640,0.000699,0.000713,0.000694,0.000813,0.000759,0.000031,0.000027 67 | 0.000459,0.000360,0.000049,0.000055,0.000713,0.000667,0.000618,0.000673,0.000641,0.000702,0.000645,0.000802,0.000636,0.000692,0.000794,0.000658,0.000733,0.000726,0.000728,0.000807,0.000026,0.000039 68 | 0.000393,0.000379,0.000084,0.000047,0.000681,0.000643,0.000616,0.000632,0.000750,0.000724,0.000793,0.000822,0.000636,0.000623,0.000648,0.000703,0.000633,0.000664,0.000687,0.000853,0.000025,0.000024 69 | 0.000413,0.000432,0.000060,0.000057,0.000632,0.000639,0.000633,0.000622,0.000752,0.000819,0.000693,0.000711,0.000753,0.000712,0.000766,0.000604,0.000678,0.000803,0.000707,0.000901,0.000028,0.000025 70 | 0.000400,0.000502,0.000049,0.000091,0.000697,0.000588,0.000653,0.000614,0.000858,0.000824,0.000779,0.000886,0.000662,0.000610,0.000705,0.000685,0.000691,0.000575,0.000777,0.000946,0.000025,0.000023 71 | 0.000399,0.000340,0.000056,0.000067,0.000685,0.000713,0.000632,0.000775,0.000687,0.000670,0.000735,0.000796,0.000657,0.000638,0.000700,0.000601,0.000665,0.000769,0.000809,0.000793,0.000024,0.000024 72 | 0.000395,0.000426,0.000056,0.000048,0.000609,0.000622,0.000690,0.000555,0.000628,0.000690,0.000849,0.000848,0.000669,0.000651,0.000768,0.000672,0.000685,0.000717,0.000857,0.000696,0.000027,0.000026 73 | 0.000400,0.000362,0.000083,0.000053,0.000605,0.000630,0.000687,0.000684,0.000661,0.000824,0.000698,0.000774,0.000682,0.000703,0.000637,0.000747,0.000784,0.000847,0.000810,0.000826,0.000030,0.000026 74 | 0.000401,0.000396,0.000048,0.000054,0.000622,0.000620,0.000706,0.000776,0.000665,0.000652,0.000681,0.000860,0.000654,0.000699,0.000648,0.000793,0.000674,0.000741,0.000810,0.000705,0.000023,0.000022 75 | 0.000480,0.000345,0.000056,0.000071,0.000649,0.000626,0.000619,0.000655,0.000738,0.000563,0.000637,0.000847,0.000666,0.000661,0.000683,0.000586,0.000664,0.000600,0.000828,0.000833,0.000026,0.000024 76 | 0.000325,0.000320,0.000045,0.000045,0.000671,0.000704,0.000646,0.000699,0.000787,0.000790,0.000751,0.000958,0.000676,0.000647,0.000620,0.000715,0.000643,0.000688,0.000886,0.000869,0.000054,0.000025 77 | 0.000362,0.000409,0.000054,0.000050,0.000661,0.000617,0.000674,0.000788,0.000654,0.000873,0.000621,0.000801,0.000707,0.000648,0.000747,0.000672,0.000587,0.000720,0.000738,0.000646,0.000027,0.000029 78 | 0.000415,0.000465,0.000056,0.000048,0.000662,0.000701,0.000781,0.000653,0.000594,0.000678,0.000804,0.000829,0.000710,0.000710,0.000621,0.000699,0.000626,0.000759,0.000812,0.000913,0.000023,0.000023 79 | 0.000349,0.000386,0.000053,0.000062,0.000604,0.000621,0.000621,0.000647,0.000743,0.000817,0.000752,0.000808,0.000696,0.000693,0.000715,0.000668,0.000845,0.000689,0.000848,0.000647,0.000023,0.000023 80 | 0.000347,0.000390,0.000057,0.000048,0.000687,0.000663,0.000650,0.000661,0.000636,0.000813,0.000813,0.000754,0.000719,0.000514,0.000728,0.000683,0.000653,0.000706,0.000655,0.000867,0.000023,0.000023 81 | 0.000429,0.000460,0.000049,0.000052,0.000618,0.000606,0.000679,0.000591,0.000708,0.000648,0.000667,0.000773,0.000646,0.000671,0.000713,0.000664,0.000792,0.000723,0.000858,0.000760,0.000023,0.000076 82 | 0.000393,0.000413,0.000049,0.000049,0.000640,0.000634,0.000610,0.000674,0.000711,0.000685,0.000706,0.000912,0.000608,0.000622,0.000707,0.000664,0.000859,0.000885,0.000739,0.000749,0.000024,0.000026 83 | 0.000419,0.000364,0.000069,0.000056,0.000700,0.000690,0.000682,0.000673,0.000651,0.000696,0.000886,0.000791,0.000650,0.000587,0.000627,0.000721,0.000622,0.000800,0.000835,0.000891,0.000023,0.000025 84 | 0.000394,0.000405,0.000434,0.000063,0.000719,0.000655,0.000652,0.000693,0.000635,0.000699,0.000853,0.000735,0.000598,0.001263,0.000768,0.000669,0.001016,0.000669,0.000912,0.000748,0.000024,0.000031 85 | 0.000410,0.000402,0.000052,0.000052,0.000659,0.000645,0.000753,0.000656,0.000691,0.000677,0.000817,0.000932,0.000592,0.000679,0.000653,0.000807,0.000849,0.000694,0.000680,0.000971,0.000024,0.000025 86 | 0.000395,0.000401,0.000055,0.000055,0.000677,0.000719,0.000640,0.000596,0.000667,0.000686,0.000726,0.000879,0.000664,0.000630,0.000670,0.000702,0.000700,0.000882,0.000929,0.000769,0.000024,0.000025 87 | 0.000372,0.000298,0.000055,0.000054,0.000681,0.000667,0.000680,0.000678,0.000790,0.000710,0.000668,0.000907,0.000711,0.000653,0.000698,0.000642,0.000802,0.000651,0.000752,0.000964,0.000029,0.000024 88 | 0.000388,0.000423,0.000056,0.000054,0.000649,0.000672,0.000648,0.000708,0.000704,0.000645,0.000749,0.000747,0.000676,0.000705,0.000705,0.000744,0.000781,0.000793,0.000794,0.001002,0.000025,0.000026 89 | 0.000417,0.000434,0.000058,0.000048,0.000715,0.000699,0.000628,0.000652,0.000703,0.000672,0.000822,0.000806,0.000689,0.000671,0.000690,0.000692,0.000648,0.000824,0.000666,0.000805,0.000026,0.000026 90 | 0.000411,0.000410,0.000056,0.000056,0.000697,0.000721,0.000667,0.000686,0.000867,0.000701,0.000768,0.000941,0.000690,0.000645,0.000599,0.000620,0.000636,0.000695,0.000626,0.000821,0.000025,0.000025 91 | 0.000346,0.000389,0.000066,0.000075,0.000671,0.000715,0.000683,0.000640,0.000678,0.000686,0.000635,0.000768,0.000678,0.000673,0.000717,0.000660,0.000718,0.000827,0.000703,0.000935,0.000028,0.000025 92 | 0.000330,0.000416,0.000050,0.000083,0.000713,0.000701,0.000664,0.000693,0.000778,0.000651,0.000868,0.000832,0.000700,0.000593,0.000659,0.000653,0.000666,0.000733,0.000829,0.000809,0.000025,0.000026 93 | 0.000400,0.000399,0.000059,0.000055,0.000712,0.000717,0.000674,0.000646,0.000797,0.000656,0.000658,0.000668,0.000674,0.000643,0.000631,0.000647,0.000699,0.000810,0.000759,0.000848,0.000024,0.000025 94 | 0.000395,0.000374,0.000066,0.000057,0.000673,0.000625,0.000669,0.000787,0.000838,0.000887,0.000724,0.000806,0.000669,0.000704,0.000698,0.000659,0.000663,0.000661,0.000676,0.000729,0.000024,0.000026 95 | 0.000390,0.000358,0.000050,0.000049,0.000662,0.000730,0.000699,0.000714,0.000771,0.000783,0.000794,0.000765,0.000708,0.000679,0.000683,0.000624,0.000656,0.000692,0.000774,0.000781,0.000024,0.000025 96 | 0.000415,0.000417,0.000084,0.000060,0.000698,0.000651,0.000667,0.000627,0.000669,0.000693,0.000796,0.000754,0.000717,0.000659,0.000687,0.000651,0.000639,0.000731,0.000673,0.000654,0.000026,0.000023 97 | 0.000392,0.000323,0.000059,0.000078,0.000693,0.000710,0.000711,0.000754,0.000668,0.000742,0.000699,0.000915,0.000634,0.000678,0.000651,0.000704,0.000629,0.000653,0.000869,0.000896,0.000029,0.000025 98 | 0.000394,0.000364,0.000069,0.000056,0.000650,0.000649,0.000751,0.000668,0.000691,0.000783,0.000670,0.000739,0.000671,0.000657,0.000745,0.000679,0.000714,0.000702,0.000705,0.000974,0.000025,0.000028 99 | 0.000367,0.000393,0.000055,0.000084,0.000627,0.000666,0.000655,0.000791,0.000768,0.000767,0.000667,0.000925,0.000666,0.000610,0.000684,0.000631,0.000816,0.000670,0.000685,0.000915,0.000029,0.000026 100 | 0.000409,0.000390,0.000086,0.000051,0.000645,0.000617,0.000719,0.000753,0.000640,0.000670,0.000662,0.000924,0.000724,0.000655,0.000710,0.000644,0.000687,0.000656,0.000779,0.000768,0.000023,0.000038 101 | 0.000434,0.000404,0.000081,0.000053,0.000675,0.000655,0.000719,0.000683,0.000643,0.000813,0.000743,0.000657,0.000708,0.000721,0.000644,0.000633,0.000785,0.000666,0.000802,0.000860,0.000023,0.000029 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_100000.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.004036,0.003329,0.000637,0.000529,0.000835,0.000910,0.000672,0.000758,0.000749,0.000727,0.000756,0.000865,0.000933,0.000718,0.000784,0.000715,0.000846,0.000923,0.000979,0.001175,0.000308,0.000255 3 | 0.003817,0.004104,0.000527,0.000575,0.000930,0.000771,0.000794,0.000761,0.000948,0.000776,0.000738,0.000922,0.000890,0.000869,0.000704,0.000753,0.000794,0.000669,0.000827,0.000944,0.000304,0.000261 4 | 0.003571,0.004072,0.000554,0.000568,0.000947,0.000876,0.000761,0.000711,0.000810,0.000747,0.000847,0.000847,0.000864,0.000956,0.000806,0.000769,0.000871,0.000924,0.000860,0.000971,0.000234,0.000328 5 | 0.004143,0.003818,0.000526,0.000613,0.000923,0.000800,0.000749,0.000746,0.000775,0.000847,0.000943,0.000906,0.000857,0.000857,0.000692,0.000684,0.000788,0.000835,0.000724,0.000943,0.000253,0.000284 6 | 0.003906,0.003706,0.000598,0.000589,0.000898,0.000783,0.000803,0.000720,0.000915,0.000874,0.000736,0.000908,0.000852,0.000721,0.000849,0.000699,0.000724,0.000817,0.000817,0.000969,0.000290,0.000312 7 | 0.004025,0.003888,0.000724,0.000540,0.000900,0.000729,0.000830,0.000854,0.000806,0.000749,0.000948,0.000997,0.000920,0.000745,0.000823,0.000754,0.000744,0.000992,0.000720,0.000987,0.000308,0.000284 8 | 0.006748,0.004219,0.000917,0.000487,0.000975,0.000829,0.000775,0.000784,0.000686,0.000830,0.000733,0.000806,0.000893,0.000785,0.001884,0.000873,0.000844,0.000744,0.000896,0.000927,0.000299,0.000225 9 | 0.004092,0.003886,0.000718,0.000637,0.000937,0.000781,0.000801,0.000703,0.000700,0.000671,0.000867,0.000760,0.000951,0.000753,0.000814,0.000891,0.000898,0.000745,0.000907,0.000866,0.000407,0.000329 10 | 0.004283,0.003938,0.000616,0.000685,0.000892,0.000816,0.000710,0.000745,0.000694,0.000781,0.000840,0.000861,0.000904,0.000667,0.000749,0.000829,0.000735,0.000713,0.000701,0.000935,0.000462,0.000340 11 | 0.004238,0.003965,0.000629,0.000678,0.000841,0.000841,0.000765,0.000795,0.000856,0.000803,0.000714,0.000802,0.000909,0.000849,0.000751,0.000856,0.000705,0.000733,0.000837,0.000833,0.000357,0.000278 12 | 0.004265,0.004119,0.000653,0.000643,0.000928,0.000742,0.000706,0.000756,0.000768,0.000840,0.000799,0.000937,0.000912,0.000776,0.000775,0.000728,0.000748,0.000898,0.000923,0.000945,0.000395,0.000375 13 | 0.004061,0.003889,0.000652,0.000683,0.000889,0.000742,0.000832,0.000742,0.000678,0.000672,0.000766,0.000736,0.000916,0.000764,0.000762,0.000721,0.000839,0.000706,0.000856,0.000926,0.000287,0.000294 14 | 0.004139,0.004392,0.000604,0.000572,0.000938,0.000834,0.000833,0.000841,0.000772,0.000775,0.000753,0.000980,0.000927,0.000926,0.000880,0.000808,0.000680,0.000883,0.000684,0.000948,0.000373,0.000308 15 | 0.004033,0.004176,0.000530,0.000716,0.000892,0.000857,0.000785,0.000810,0.000699,0.000888,0.000940,0.000905,0.000908,0.000843,0.000728,0.000777,0.000913,0.000871,0.000928,0.000747,0.000262,0.000263 16 | 0.003459,0.004047,0.000574,0.000719,0.000911,0.000791,0.000772,0.000741,0.000725,0.000707,0.000832,0.000922,0.000954,0.000744,0.000809,0.000853,0.000845,0.000836,0.000737,0.000703,0.000286,0.000293 17 | 0.004405,0.004297,0.000565,0.000570,0.000923,0.000871,0.000784,0.001074,0.000793,0.000760,0.000793,0.000919,0.000893,0.000815,0.000815,0.000809,0.000907,0.000859,0.000881,0.000833,0.000292,0.000236 18 | 0.004341,0.004219,0.000468,0.000550,0.000781,0.000800,0.000849,0.000791,0.000699,0.000783,0.000665,0.000921,0.000877,0.000802,0.000749,0.000858,0.000758,0.000754,0.000902,0.000779,0.000269,0.000280 19 | 0.004433,0.004215,0.000580,0.000631,0.000884,0.000770,0.000796,0.000773,0.000785,0.000851,0.000838,0.001020,0.000752,0.000757,0.000705,0.000750,0.000897,0.000713,0.000870,0.000973,0.000362,0.000206 20 | 0.003986,0.004243,0.000584,0.000542,0.000875,0.000821,0.000800,0.000844,0.000754,0.000850,0.000870,0.000929,0.000976,0.000895,0.000733,0.000675,0.000743,0.000820,0.000750,0.000770,0.000273,0.000214 21 | 0.003882,0.004151,0.000617,0.000540,0.000747,0.000855,0.000674,0.000807,0.000775,0.000743,0.000816,0.001030,0.000920,0.000741,0.000774,0.000787,0.000826,0.000715,0.000789,0.000948,0.000256,0.000271 22 | 0.004397,0.004392,0.000564,0.000469,0.000900,0.000816,0.000858,0.000741,0.000939,0.000761,0.000923,0.000836,0.000890,0.000800,0.000843,0.000826,0.000897,0.000874,0.000848,0.000720,0.000240,0.000341 23 | 0.004134,0.004024,0.000584,0.000579,0.000898,0.000897,0.000753,0.000705,0.000799,0.000739,0.000810,0.000930,0.000878,0.000787,0.000863,0.000810,0.000743,0.000856,0.000833,0.000980,0.000345,0.000211 24 | 0.004324,0.004272,0.000502,0.000506,0.000888,0.000874,0.000824,0.000847,0.000811,0.000804,0.000931,0.000859,0.000936,0.000779,0.000895,0.000781,0.000745,0.000753,0.000849,0.000814,0.000217,0.000377 25 | 0.004385,0.003975,0.000526,0.000443,0.000784,0.000799,0.000718,0.000682,0.000728,0.000780,0.000775,0.000912,0.000909,0.000899,0.000727,0.000829,0.000846,0.000689,0.000847,0.000862,0.000288,0.000280 26 | 0.004411,0.003510,0.000521,0.000474,0.000909,0.000783,0.000826,0.000832,0.000798,0.000777,0.000794,0.000884,0.000799,0.000815,0.000785,0.000728,0.000743,0.000725,0.000928,0.000862,0.000288,0.000319 27 | 0.003514,0.004263,0.000527,0.000503,0.000920,0.000806,0.000796,0.000748,0.000711,0.000748,0.000802,0.000853,0.000880,0.000838,0.000824,0.000790,0.000899,0.000820,0.000689,0.000822,0.000208,0.000262 28 | 0.004273,0.004220,0.000533,0.000603,0.000977,0.000855,0.000802,0.000683,0.000750,0.000681,0.000806,0.000764,0.000846,0.000715,0.000907,0.000716,0.000701,0.000819,0.000938,0.000978,0.000253,0.000287 29 | 0.003689,0.004135,0.000530,0.000595,0.000827,0.000840,0.000785,0.000758,0.000798,0.000871,0.000827,0.000922,0.000897,0.000797,0.000889,0.000793,0.000691,0.000726,0.001051,0.000849,0.000218,0.000207 30 | 0.004480,0.004103,0.000618,0.000527,0.000838,0.000852,0.000840,0.000711,0.000884,0.000723,0.000757,0.000989,0.000873,0.000713,0.000664,0.000719,0.000691,0.000750,0.001042,0.000977,0.000228,0.000250 31 | 0.004397,0.004049,0.000595,0.000514,0.000917,0.000853,0.000753,0.000810,0.000762,0.000745,0.000854,0.000887,0.000880,0.000782,0.000807,0.000863,0.000917,0.000760,0.000977,0.000804,0.000315,0.000350 32 | 0.004072,0.004102,0.000600,0.000509,0.000815,0.000801,0.000891,0.000718,0.000822,0.000753,0.000825,0.000863,0.000939,0.000796,0.000822,0.000747,0.000733,0.000783,0.000910,0.000883,0.000249,0.000292 33 | 0.004093,0.004222,0.000557,0.000526,0.000790,0.000784,0.000818,0.000729,0.000800,0.000834,0.000835,0.001034,0.000833,0.000841,0.000774,0.000742,0.000876,0.000758,0.000962,0.000878,0.000291,0.000218 34 | 0.003419,0.004043,0.000576,0.000481,0.000957,0.000941,0.000749,0.000686,0.000696,0.000913,0.000740,0.000946,0.000830,0.000719,0.000911,0.000768,0.000804,0.000740,0.000747,0.000840,0.000288,0.000257 35 | 0.004374,0.003992,0.000554,0.000601,0.000874,0.000795,0.000786,0.000785,0.000756,0.000825,0.000696,0.000861,0.000884,0.000790,0.000792,0.000748,0.000910,0.000812,0.000973,0.000950,0.000310,0.000232 36 | 0.004251,0.003371,0.000570,0.000590,0.000766,0.000769,0.000784,0.000774,0.000790,0.000852,0.000855,0.000847,0.000856,0.000797,0.000885,0.000721,0.000898,0.000741,0.000689,0.000856,0.000295,0.000218 37 | 0.003591,0.004181,0.000518,0.000472,0.000886,0.000856,0.000696,0.000827,0.000818,0.000734,0.000789,0.000938,0.000827,0.000803,0.000855,0.000903,0.000801,0.000803,0.000947,0.000983,0.000325,0.000224 38 | 0.003882,0.003451,0.000526,0.000525,0.000914,0.000764,0.000812,0.000733,0.000778,0.000864,0.000989,0.000990,0.000882,0.000799,0.000838,0.000746,0.000791,0.000866,0.000932,0.000793,0.000252,0.000206 39 | 0.004307,0.004286,0.000528,0.000563,0.000836,0.000767,0.000903,0.000754,0.000981,0.000893,0.000732,0.000960,0.000964,0.000809,0.000739,0.000694,0.000815,0.000910,0.000754,0.000858,0.000281,0.000299 40 | 0.003805,0.003664,0.000616,0.000646,0.000872,0.000835,0.000738,0.000725,0.000797,0.000721,0.000846,0.000871,0.000882,0.000768,0.000732,0.000759,0.000795,0.000815,0.000887,0.000942,0.000298,0.000214 41 | 0.004062,0.004465,0.000593,0.000542,0.000817,0.000875,0.000802,0.000814,0.000771,0.000898,0.000877,0.000779,0.000904,0.000905,0.000851,0.000713,0.000809,0.000706,0.000866,0.000947,0.000279,0.000207 42 | 0.004311,0.004143,0.000575,0.000571,0.000888,0.000894,0.000756,0.000695,0.000776,0.000754,0.000757,0.001007,0.000873,0.000786,0.000848,0.000798,0.000773,0.000876,0.000859,0.000848,0.000333,0.000207 43 | 0.003935,0.004232,0.000681,0.000605,0.000792,0.000918,0.000731,0.000707,0.000794,0.000803,0.000845,0.001076,0.000916,0.000945,0.000739,0.000710,0.000744,0.000823,0.001003,0.000949,0.000273,0.000216 44 | 0.004139,0.004255,0.000572,0.000582,0.000892,0.000770,0.000942,0.000743,0.000756,0.000914,0.000704,0.001051,0.000887,0.000895,0.000724,0.000864,0.000661,0.000881,0.000936,0.000833,0.000230,0.000285 45 | 0.003797,0.003882,0.000566,0.000563,0.000812,0.000740,0.000828,0.000905,0.000719,0.000692,0.000733,0.000939,0.000882,0.000775,0.000756,0.000724,0.000743,0.000718,0.000863,0.000836,0.000214,0.000260 46 | 0.004337,0.003996,0.000562,0.000532,0.000906,0.000803,0.000795,0.000836,0.000764,0.000685,0.000808,0.000947,0.000895,0.000851,0.000845,0.000769,0.000872,0.000724,0.000847,0.000883,0.000274,0.000214 47 | 0.004346,0.003591,0.000581,0.000506,0.000871,0.000858,0.000914,0.000803,0.000876,0.000835,0.000778,0.000900,0.000876,0.001030,0.000879,0.000769,0.000890,0.000806,0.000910,0.000943,0.000216,0.000267 48 | 0.004298,0.003781,0.000562,0.000529,0.000833,0.000922,0.000777,0.000755,0.000694,0.000805,0.000968,0.000933,0.000910,0.000946,0.000766,0.000799,0.000778,0.000912,0.000837,0.000943,0.000307,0.000279 49 | 0.004146,0.004331,0.000618,0.000551,0.000826,0.000815,0.000810,0.000766,0.000718,0.000777,0.000703,0.000845,0.000996,0.000758,0.000744,0.000785,0.000728,0.000716,0.000716,0.000832,0.000211,0.000239 50 | 0.004373,0.004167,0.000584,0.000558,0.000860,0.000813,0.000740,0.000825,0.000856,0.000871,0.000846,0.000970,0.000867,0.000782,0.000699,0.000785,0.000812,0.000784,0.000796,0.000939,0.000240,0.000268 51 | 0.004190,0.003889,0.000542,0.000593,0.000927,0.000857,0.000784,0.000874,0.000791,0.000742,0.000842,0.000920,0.000749,0.000854,0.000820,0.000730,0.000745,0.000690,0.000716,0.000815,0.000222,0.000329 52 | 0.004298,0.003865,0.000530,0.000459,0.000870,0.000813,0.000908,0.000817,0.000898,0.000724,0.000962,0.000986,0.000868,0.000804,0.000801,0.000802,0.000849,0.000787,0.000900,0.000849,0.000214,0.000213 53 | 0.004239,0.004233,0.000572,0.000541,0.000853,0.000715,0.000863,0.000760,0.000705,0.000924,0.000907,0.000873,0.000896,0.000838,0.000789,0.000733,0.000792,0.000764,0.000668,0.000830,0.000271,0.000296 54 | 0.003946,0.004110,0.000597,0.000520,0.000859,0.000839,0.000659,0.000772,0.000851,0.000903,0.000747,0.000857,0.000898,0.000793,0.000741,0.000758,0.000746,0.000855,0.000860,0.000939,0.000299,0.000237 55 | 0.003715,0.004325,0.000665,0.000493,0.000878,0.000774,0.000728,0.000862,0.000696,0.000858,0.000865,0.000654,0.000845,0.000792,0.000838,0.000671,0.000751,0.000896,0.000883,0.000749,0.000215,0.000276 56 | 0.004084,0.004426,0.000616,0.000623,0.000895,0.000785,0.000813,0.000810,0.000707,0.000718,0.000932,0.000899,0.000879,0.000731,0.000741,0.000749,0.000895,0.000810,0.000660,0.000975,0.000295,0.000214 57 | 0.004039,0.004377,0.000495,0.000558,0.000894,0.000748,0.000693,0.000870,0.000909,0.000785,0.000829,0.000811,0.000873,0.000880,0.000770,0.000826,0.000783,0.000707,0.000795,0.000738,0.000214,0.000362 58 | 0.003821,0.003252,0.000507,0.000536,0.000862,0.000844,0.000840,0.000748,0.000800,0.000729,0.000776,0.001004,0.000929,0.000880,0.000692,0.000702,0.000679,0.000774,0.000679,0.000915,0.000246,0.000284 59 | 0.004240,0.004036,0.000570,0.000529,0.000812,0.000746,0.000846,0.000672,0.000845,0.000883,0.000673,0.000971,0.000863,0.000796,0.000866,0.000681,0.000822,0.000739,0.000803,0.000707,0.000314,0.000277 60 | 0.004087,0.004051,0.000472,0.000510,0.000918,0.000804,0.000809,0.000806,0.000875,0.000729,0.000783,0.000842,0.000871,0.000855,0.000808,0.000855,0.000703,0.000821,0.000931,0.000918,0.000268,0.000219 61 | 0.004259,0.004192,0.000616,0.000611,0.000892,0.000794,0.000832,0.000693,0.000966,0.000861,0.000887,0.000665,0.000859,0.000740,0.000825,0.000683,0.000743,0.000676,0.000980,0.000906,0.000258,0.000219 62 | 0.003987,0.004258,0.000474,0.000550,0.000820,0.000945,0.000813,0.000770,0.000783,0.000913,0.000847,0.000921,0.000842,0.000848,0.000800,0.000797,0.000820,0.000739,0.000740,0.000862,0.000211,0.000228 63 | 0.004418,0.004361,0.000527,0.000475,0.000915,0.000749,0.000870,0.000791,0.000708,0.000806,0.000959,0.000988,0.000817,0.000847,0.000799,0.000798,0.000900,0.000757,0.000813,0.001050,0.000217,0.000207 64 | 0.004029,0.004222,0.000624,0.000555,0.001120,0.000920,0.005249,0.000786,0.000691,0.000765,0.000890,0.001033,0.000947,0.000845,0.000772,0.000839,0.000762,0.000754,0.000938,0.000876,0.000247,0.000263 65 | 0.004141,0.003972,0.001609,0.000626,0.000860,0.001046,0.000827,0.000867,0.000829,0.000773,0.000772,0.000887,0.000836,0.000855,0.000845,0.000829,0.000746,0.000963,0.000739,0.000857,0.000246,0.000271 66 | 0.003725,0.004046,0.000564,0.000662,0.000908,0.000855,0.000796,0.000782,0.000808,0.000923,0.000970,0.000736,0.000895,0.000852,0.000852,0.000800,0.000863,0.000843,0.000877,0.000882,0.000277,0.000246 67 | 0.004230,0.004051,0.000497,0.000600,0.000824,0.000929,0.000866,0.000726,0.000975,0.000777,0.000844,0.000871,0.000964,0.000800,0.000859,0.000746,0.000739,0.000906,0.000747,0.000952,0.000221,0.000249 68 | 0.003726,0.003861,0.000629,0.000583,0.000876,0.000996,0.000738,0.000869,0.000816,0.000748,0.000852,0.000990,0.000761,0.000882,0.000773,0.000771,0.000821,0.000731,0.000873,0.001021,0.000309,0.000255 69 | 0.003681,0.004279,0.000586,0.000513,0.000918,0.000797,0.000743,0.000768,0.000698,0.000933,0.000904,0.000879,0.000875,0.000798,0.000836,0.000807,0.000923,0.000866,0.000733,0.000934,0.000314,0.000210 70 | 0.003939,0.004330,0.000632,0.000571,0.000833,0.000891,0.000799,0.000703,0.000806,0.000824,0.000841,0.000898,0.000887,0.000862,0.000799,0.000792,0.000790,0.000878,0.000890,0.000929,0.000272,0.000261 71 | 0.004212,0.003999,0.000538,0.000443,0.000891,0.000892,0.000800,0.000704,0.000736,0.000728,0.000885,0.000886,0.000932,0.000884,0.000791,0.000859,0.000801,0.000918,0.000932,0.000988,0.000225,0.000254 72 | 0.003566,0.004044,0.000600,0.000441,0.000929,0.000793,0.000750,0.000786,0.000745,0.001018,0.000750,0.000887,0.000849,0.000871,0.000779,0.000762,0.000743,0.000772,0.000764,0.000900,0.000266,0.000273 73 | 0.004266,0.004233,0.000529,0.000515,0.000918,0.000857,0.000812,0.000843,0.000715,0.000936,0.000915,0.000846,0.000909,0.000854,0.000773,0.000764,0.000908,0.000750,0.000830,0.000848,0.000334,0.000229 74 | 0.003975,0.004331,0.000612,0.000603,0.000901,0.000884,0.000806,0.000852,0.000867,0.000777,0.000842,0.000911,0.000835,0.000894,0.000844,0.000686,0.000755,0.000883,0.000843,0.000871,0.000313,0.000275 75 | 0.003815,0.004200,0.000587,0.000470,0.000909,0.000848,0.000829,0.000851,0.000921,0.000783,0.000753,0.000983,0.000868,0.000872,0.000761,0.000809,0.000861,0.000779,0.000907,0.000944,0.000246,0.000252 76 | 0.004346,0.004194,0.000574,0.000543,0.000922,0.000853,0.000757,0.000912,0.000821,0.000786,0.000944,0.000881,0.000938,0.000861,0.000732,0.000788,0.000835,0.000657,0.000945,0.000947,0.000277,0.000216 77 | 0.004316,0.004083,0.000541,0.000604,0.000932,0.000835,0.000839,0.000882,0.000777,0.000682,0.000875,0.000844,0.000897,0.000861,0.000697,0.000784,0.000757,0.000831,0.000882,0.000931,0.000271,0.000307 78 | 0.004289,0.004271,0.000559,0.000517,0.000927,0.000845,0.000880,0.000814,0.000710,0.000900,0.000886,0.000827,0.000853,0.000754,0.000786,0.000798,0.000919,0.000930,0.000798,0.000833,0.000280,0.000227 79 | 0.004394,0.004010,0.000512,0.000459,0.000927,0.000867,0.000829,0.000764,0.000752,0.000766,0.000657,0.000995,0.000869,0.001041,0.000750,0.000816,0.000850,0.000771,0.000735,0.000938,0.000277,0.000234 80 | 0.004059,0.004078,0.000601,0.000528,0.000922,0.000888,0.000764,0.000794,0.000791,0.000895,0.000919,0.000803,0.000901,0.000879,0.000960,0.000805,0.000805,0.000746,0.000793,0.000839,0.000239,0.000234 81 | 0.004137,0.004132,0.000567,0.000546,0.000966,0.000778,0.000795,0.000752,0.000739,0.000913,0.000816,0.001007,0.000875,0.000758,0.000770,0.000867,0.000759,0.000733,0.000756,0.000845,0.000270,0.000270 82 | 0.003591,0.004022,0.000544,0.000519,0.000915,0.000879,0.000827,0.000764,0.000783,0.000791,0.000776,0.000926,0.000906,0.000733,0.000855,0.000777,0.000765,0.000722,0.000756,0.000871,0.000273,0.000236 83 | 0.003575,0.003944,0.000522,0.000550,0.000895,0.000779,0.000756,0.000903,0.000737,0.000746,0.000876,0.000811,0.000850,0.000806,0.000794,0.000698,0.000864,0.000746,0.000748,0.001001,0.000207,0.000217 84 | 0.003818,0.004143,0.000538,0.000532,0.000922,0.000844,0.000902,0.000780,0.000745,0.000778,0.001012,0.000978,0.000883,0.000843,0.000784,0.000782,0.000777,0.000827,0.000852,0.000881,0.000220,0.000246 85 | 0.004390,0.004307,0.000611,0.000526,0.000908,0.000996,0.000791,0.000839,0.000719,0.000810,0.000896,0.000847,0.000861,0.000860,0.000760,0.000865,0.000800,0.000812,0.000838,0.000846,0.000240,0.000252 86 | 0.004114,0.004270,0.000483,0.000703,0.000939,0.000881,0.000864,0.000965,0.000832,0.000905,0.000915,0.000823,0.000910,0.001035,0.000798,0.000845,0.000856,0.000871,0.000897,0.000681,0.000251,0.000285 87 | 0.003854,0.004144,0.000577,0.000572,0.000859,0.000948,0.000840,0.000683,0.000869,0.000776,0.000780,0.000941,0.000967,0.000912,0.000881,0.000820,0.000810,0.000927,0.000842,0.000812,0.000277,0.000211 88 | 0.003470,0.004040,0.000614,0.000603,0.000913,0.000859,0.000784,0.000919,0.000871,0.000735,0.000964,0.000818,0.000918,0.000823,0.000780,0.000710,0.000777,0.000758,0.000818,0.000937,0.000285,0.000267 89 | 0.004355,0.004019,0.000582,0.000529,0.000839,0.000853,0.000727,0.000790,0.000839,0.000734,0.000771,0.000803,0.000898,0.000778,0.000825,0.000834,0.000719,0.000827,0.000788,0.000883,0.000332,0.000234 90 | 0.004324,0.004016,0.000556,0.000569,0.000970,0.000750,0.000757,0.000810,0.000759,0.000904,0.000823,0.000805,0.000884,0.000795,0.000788,0.000882,0.000856,0.000790,0.000778,0.000982,0.000262,0.000289 91 | 0.003888,0.004068,0.000592,0.000560,0.000787,0.000756,0.000913,0.000792,0.000735,0.000793,0.000791,0.000973,0.000915,0.000878,0.000821,0.000813,0.000772,0.000851,0.000744,0.000987,0.000207,0.000255 92 | 0.004057,0.004353,0.000614,0.000654,0.000861,0.000870,0.000945,0.000794,0.000811,0.000843,0.000981,0.000816,0.000894,0.000983,0.000863,0.000848,0.000741,0.000732,0.000717,0.000867,0.000214,0.000284 93 | 0.003714,0.004254,0.000680,0.000650,0.000883,0.000899,0.000758,0.000857,0.000829,0.000746,0.000770,0.000776,0.000871,0.000854,0.000864,0.000797,0.000818,0.000912,0.000818,0.000986,0.000224,0.000211 94 | 0.004211,0.004020,0.000614,0.000545,0.000840,0.000807,0.000816,0.000792,0.000779,0.000924,0.000930,0.000819,0.000926,0.000922,0.000751,0.000911,0.000838,0.000724,0.000845,0.000865,0.000239,0.000206 95 | 0.003896,0.004246,0.000618,0.000559,0.000904,0.000766,0.000923,0.000869,0.000870,0.000760,0.000740,0.000989,0.000952,0.000902,0.000835,0.000732,0.000783,0.000792,0.000844,0.000978,0.000297,0.000271 96 | 0.003793,0.004022,0.000509,0.000550,0.000917,0.000843,0.000788,0.000899,0.000744,0.000784,0.000930,0.000992,0.000917,0.000796,0.000833,0.000738,0.000765,0.000866,0.000718,0.000802,0.000206,0.000246 97 | 0.004190,0.003976,0.000528,0.000604,0.000847,0.000863,0.000790,0.000817,0.000697,0.000765,0.000830,0.000887,0.000844,0.000812,0.000822,0.000778,0.000865,0.000863,0.000761,0.000898,0.000287,0.000207 98 | 0.003550,0.004078,0.000597,0.000589,0.000866,0.000787,0.000806,0.000806,0.000882,0.000850,0.000954,0.000882,0.000830,0.000848,0.000793,0.000740,0.000743,0.000842,0.001053,0.000770,0.000256,0.000268 99 | 0.003876,0.003586,0.000446,0.000591,0.000946,0.000843,0.000855,0.000728,0.000793,0.000763,0.000812,0.000751,0.000914,0.000814,0.000735,0.000761,0.000763,0.000774,0.000885,0.001100,0.000275,0.000221 100 | 0.004025,0.004071,0.000552,0.000487,0.000920,0.000812,0.000872,0.000786,0.000888,0.000784,0.000883,0.001022,0.000850,0.000917,0.000801,0.000827,0.000868,0.000924,0.000738,0.001058,0.000206,0.000211 101 | 0.003901,0.004222,0.000508,0.000479,0.000901,0.000840,0.000759,0.000899,0.000951,0.000826,0.000739,0.000926,0.000956,0.000904,0.000985,0.000800,0.000728,0.000846,0.000913,0.000917,0.000242,0.000247 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_1000000.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.040705,0.033342,0.010254,0.009513,0.006806,0.005045,0.003106,0.003608,0.002237,0.002022,0.001573,0.002102,0.006580,0.004460,0.003292,0.003171,0.002379,0.001877,0.002277,0.002257,0.006370,0.006192 3 | 0.033912,0.035475,0.010808,0.010128,0.007053,0.004368,0.003117,0.002515,0.002286,0.002865,0.001973,0.002247,0.006609,0.003960,0.002967,0.002562,0.002388,0.002406,0.002257,0.002585,0.006179,0.006587 4 | 0.039303,0.034262,0.014934,0.010623,0.007349,0.004360,0.003151,0.002763,0.002815,0.002538,0.002005,0.002972,0.006985,0.004240,0.003312,0.002727,0.003151,0.002509,0.002135,0.002065,0.009163,0.006188 5 | 0.041189,0.038371,0.014842,0.013464,0.007616,0.004598,0.003695,0.002553,0.002748,0.002192,0.002273,0.002795,0.009031,0.004576,0.003988,0.002937,0.002775,0.002865,0.001987,0.001889,0.006358,0.007070 6 | 0.038962,0.038618,0.013349,0.013720,0.007566,0.004677,0.002971,0.002691,0.002979,0.002216,0.001928,0.001989,0.009202,0.004660,0.003175,0.002728,0.002807,0.002175,0.002739,0.002726,0.007538,0.008533 7 | 0.038278,0.038585,0.013687,0.013143,0.008189,0.005372,0.002857,0.003289,0.002975,0.002507,0.002515,0.002759,0.007733,0.003355,0.003993,0.002853,0.002886,0.002380,0.002849,0.002029,0.007093,0.007760 8 | 0.040922,0.039443,0.012629,0.013742,0.007321,0.004964,0.003792,0.003770,0.002170,0.001998,0.002356,0.002618,0.007222,0.003275,0.003373,0.003829,0.002132,0.002910,0.003102,0.002373,0.008767,0.006151 9 | 0.037710,0.036167,0.053306,0.011877,0.067852,0.004785,0.003925,0.002796,0.002714,0.002855,0.004009,0.002184,0.006852,0.004931,0.003033,0.003086,0.002543,0.002166,0.002210,0.001948,0.008918,0.006861 10 | 0.043636,0.036206,0.010401,0.010582,0.007286,0.003519,0.002923,0.002336,0.002504,0.002760,0.002073,0.002455,0.006647,0.005254,0.003178,0.002604,0.002810,0.002397,0.001836,0.002318,0.006574,0.006363 11 | 0.037174,0.035090,0.010276,0.009881,0.007506,0.004168,0.002540,0.002524,0.002714,0.002252,0.002649,0.002239,0.006259,0.004493,0.003390,0.002798,0.002271,0.003015,0.002293,0.002122,0.006829,0.006470 12 | 0.037662,0.037888,0.010517,0.009880,0.006593,0.003619,0.002880,0.003045,0.002415,0.002292,0.002529,0.002792,0.006622,0.004628,0.003917,0.002541,0.002464,0.002798,0.002540,0.002452,0.006682,0.006260 13 | 0.036188,0.037498,0.010750,0.010071,0.007138,0.005487,0.003475,0.002775,0.002452,0.002382,0.002555,0.001986,0.006729,0.004187,0.002950,0.002866,0.002377,0.002243,0.002967,0.001987,0.006282,0.006015 14 | 0.036252,0.037213,0.011160,0.009998,0.007391,0.004958,0.002904,0.002719,0.002857,0.002127,0.002725,0.001979,0.006966,0.004802,0.003105,0.003242,0.002281,0.002824,0.002706,0.002148,0.006738,0.006331 15 | 0.035556,0.037169,0.011027,0.010269,0.007024,0.005028,0.003208,0.002768,0.002570,0.002745,0.002739,0.002377,0.006532,0.004403,0.003540,0.002593,0.002653,0.002037,0.002436,0.002110,0.006654,0.006177 16 | 0.037387,0.035716,0.010815,0.010080,0.007384,0.004484,0.002489,0.002666,0.002595,0.002315,0.001955,0.002426,0.006817,0.004074,0.003368,0.002528,0.002367,0.002497,0.002542,0.002258,0.006659,0.006462 17 | 0.034115,0.035964,0.010514,0.010415,0.006542,0.005505,0.003610,0.002744,0.003021,0.003080,0.002501,0.002236,0.006887,0.004327,0.003408,0.002730,0.002694,0.002332,0.002067,0.002324,0.006466,0.006110 18 | 0.036571,0.037084,0.010370,0.009976,0.007160,0.003779,0.003269,0.002371,0.001931,0.002037,0.002028,0.002619,0.006515,0.004054,0.003029,0.002251,0.002771,0.002445,0.002667,0.002364,0.006359,0.005874 19 | 0.037974,0.037561,0.010340,0.009915,0.007021,0.003759,0.003584,0.002580,0.002294,0.002759,0.002070,0.002039,0.006355,0.004200,0.003385,0.002811,0.002470,0.001810,0.002445,0.001729,0.006104,0.005718 20 | 0.036011,0.037602,0.010992,0.010085,0.007269,0.005528,0.002530,0.002680,0.002498,0.002806,0.002351,0.002944,0.006822,0.003496,0.003133,0.002403,0.002238,0.002618,0.002095,0.002278,0.005890,0.005916 21 | 0.037346,0.036356,0.010665,0.010219,0.007363,0.004781,0.003290,0.003030,0.002472,0.002604,0.001922,0.002289,0.006191,0.004611,0.003109,0.002487,0.002607,0.002585,0.001981,0.002372,0.006060,0.005877 22 | 0.037185,0.045549,0.013273,0.010137,0.007344,0.005060,0.003119,0.002629,0.002394,0.002412,0.002075,0.002352,0.006910,0.003807,0.002920,0.003107,0.010875,0.002586,0.002647,0.002366,0.006341,0.006270 23 | 0.034679,0.037498,0.010588,0.009817,0.006880,0.004156,0.003056,0.002539,0.002364,0.002378,0.002187,0.002144,0.006922,0.004063,0.003097,0.002702,0.002603,0.002197,0.002578,0.002323,0.006313,0.006058 24 | 0.035445,0.037871,0.010488,0.009908,0.007066,0.004351,0.003509,0.002645,0.002349,0.002053,0.002000,0.002391,0.006753,0.004384,0.002749,0.002817,0.002034,0.002370,0.002056,0.002030,0.006527,0.006375 25 | 0.038556,0.032947,0.012477,0.011553,0.007360,0.005005,0.002831,0.002499,0.002874,0.002531,0.002076,0.002198,0.007098,0.004596,0.003780,0.002745,0.002612,0.002052,0.002726,0.002305,0.007165,0.006266 26 | 0.036037,0.036302,0.010460,0.010386,0.006653,0.004254,0.002556,0.002078,0.002152,0.002174,0.002081,0.002040,0.006922,0.004485,0.003430,0.002310,0.002508,0.002323,0.001963,0.002392,0.006738,0.006244 27 | 0.040067,0.035467,0.011709,0.010749,0.007283,0.004083,0.002503,0.003153,0.003210,0.002079,0.002302,0.002042,0.006826,0.004756,0.003473,0.002579,0.002843,0.002097,0.002677,0.001980,0.006711,0.006245 28 | 0.035822,0.039059,0.010776,0.010058,0.007358,0.004435,0.002584,0.002245,0.002227,0.002363,0.002301,0.002656,0.006588,0.004722,0.003509,0.003123,0.002763,0.002385,0.002093,0.002368,0.006542,0.006409 29 | 0.036342,0.036883,0.010632,0.010375,0.007385,0.004137,0.003076,0.002354,0.002340,0.002483,0.002288,0.002302,0.006280,0.003595,0.002825,0.002562,0.002630,0.002420,0.002062,0.002061,0.006764,0.006097 30 | 0.036450,0.036151,0.010850,0.010891,0.006772,0.004201,0.003076,0.002701,0.002674,0.001923,0.002287,0.002459,0.006913,0.003763,0.002795,0.002679,0.002206,0.002306,0.002256,0.001961,0.007054,0.006365 31 | 0.037913,0.037494,0.010719,0.010498,0.006994,0.004247,0.003209,0.002788,0.002654,0.002453,0.002463,0.002486,0.007058,0.004124,0.003145,0.002542,0.002271,0.002056,0.002155,0.001894,0.006806,0.006236 32 | 0.037131,0.035194,0.010465,0.010449,0.007475,0.004130,0.003699,0.002695,0.002713,0.002687,0.002037,0.002172,0.006577,0.004698,0.003341,0.002809,0.002755,0.002178,0.001963,0.001776,0.006250,0.006205 33 | 0.036866,0.036111,0.010834,0.010610,0.007091,0.004997,0.003225,0.002624,0.002438,0.002327,0.002326,0.002081,0.006387,0.003949,0.003273,0.003721,0.002415,0.002301,0.002276,0.002600,0.006565,0.005933 34 | 0.035951,0.036779,0.010989,0.010486,0.007411,0.004486,0.003828,0.003151,0.002338,0.002290,0.002293,0.002227,0.006904,0.004142,0.003167,0.002687,0.002395,0.002321,0.002208,0.002520,0.006574,0.005883 35 | 0.036197,0.039121,0.010816,0.010515,0.007502,0.003619,0.003256,0.002217,0.002773,0.002476,0.002395,0.002274,0.007256,0.004561,0.003677,0.002586,0.002409,0.002363,0.002309,0.002204,0.006868,0.006166 36 | 0.037737,0.037378,0.010677,0.010100,0.007295,0.004471,0.002563,0.002527,0.002201,0.002120,0.002289,0.002215,0.006984,0.004511,0.003107,0.002643,0.002343,0.002330,0.002363,0.002451,0.006063,0.005781 37 | 0.033248,0.035390,0.010970,0.010415,0.007092,0.004773,0.004113,0.002524,0.002485,0.002202,0.002472,0.002061,0.006216,0.003910,0.003340,0.002773,0.002507,0.002303,0.002424,0.002212,0.006724,0.006024 38 | 0.033355,0.036651,0.011006,0.010901,0.006875,0.004589,0.003103,0.002777,0.003078,0.002239,0.002204,0.002360,0.007073,0.004576,0.003303,0.002429,0.002401,0.002593,0.002062,0.002365,0.006531,0.006402 39 | 0.037992,0.038028,0.017601,0.012122,0.007297,0.003626,0.003626,0.002646,0.002496,0.002130,0.002365,0.002269,0.007167,0.004455,0.003347,0.002793,0.002420,0.002209,0.010041,0.002316,0.006546,0.006036 40 | 0.033459,0.037561,0.010654,0.010847,0.007423,0.003446,0.003615,0.002520,0.002867,0.002363,0.002234,0.002200,0.007226,0.005054,0.003542,0.003134,0.002266,0.002320,0.002652,0.002151,0.006448,0.006152 41 | 0.037312,0.038034,0.010939,0.010066,0.007146,0.004790,0.003505,0.002873,0.002141,0.002137,0.002130,0.002452,0.007125,0.005015,0.003226,0.003000,0.002551,0.002028,0.002364,0.002217,0.006065,0.006136 42 | 0.035242,0.037764,0.011572,0.010300,0.007594,0.003978,0.003544,0.003193,0.002543,0.002207,0.002117,0.002255,0.006894,0.004788,0.002948,0.003589,0.002552,0.002417,0.002201,0.001931,0.006517,0.005904 43 | 0.036977,0.037388,0.011215,0.010510,0.006784,0.004273,0.003327,0.002673,0.002469,0.002528,0.002187,0.002346,0.006989,0.004657,0.003294,0.002580,0.002384,0.002371,0.002392,0.002433,0.006900,0.006646 44 | 0.033436,0.040309,0.011305,0.011526,0.007990,0.004453,0.003450,0.003087,0.002775,0.002522,0.002385,0.002596,0.007503,0.005028,0.003925,0.002839,0.002474,0.002620,0.002266,0.002295,0.007139,0.006135 45 | 0.035932,0.035849,0.011176,0.010563,0.007275,0.003637,0.002925,0.002740,0.002905,0.002136,0.002120,0.002259,0.006653,0.005255,0.003594,0.002892,0.002849,0.002717,0.002221,0.002238,0.006676,0.006376 46 | 0.038235,0.034278,0.011177,0.010183,0.007746,0.005098,0.003564,0.002823,0.002932,0.002532,0.002256,0.002279,0.007907,0.005450,0.003314,0.002753,0.002293,0.002392,0.002134,0.002497,0.007555,0.006199 47 | 0.039724,0.036999,0.010697,0.012175,0.007775,0.005282,0.003243,0.002723,0.002731,0.002298,0.002229,0.002095,0.006764,0.004798,0.003401,0.003362,0.002406,0.002233,0.002509,0.002314,0.006595,0.006863 48 | 0.037559,0.034965,0.011066,0.010037,0.007226,0.003728,0.003831,0.002555,0.002427,0.002352,0.002565,0.002225,0.007179,0.004433,0.002795,0.002750,0.002423,0.002120,0.002014,0.002443,0.006356,0.005632 49 | 0.036295,0.039217,0.011591,0.010432,0.006809,0.004714,0.003323,0.002703,0.002379,0.002068,0.002151,0.002424,0.006971,0.003900,0.003079,0.002610,0.002632,0.002461,0.001918,0.002284,0.006959,0.005940 50 | 0.036062,0.035930,0.010905,0.010744,0.006640,0.004740,0.003340,0.002644,0.002424,0.002416,0.002214,0.002583,0.007002,0.004354,0.003404,0.002735,0.002263,0.002397,0.002388,0.002193,0.006733,0.006327 51 | 0.036895,0.036015,0.011329,0.010019,0.007167,0.004621,0.003356,0.002683,0.002324,0.002015,0.002115,0.002154,0.007314,0.003496,0.003325,0.002799,0.002947,0.002117,0.002113,0.002100,0.007044,0.006316 52 | 0.037914,0.037355,0.010567,0.010394,0.007537,0.005169,0.003219,0.002780,0.002675,0.002375,0.001906,0.002190,0.006723,0.005042,0.003360,0.002437,0.002520,0.002218,0.002321,0.002518,0.006688,0.005879 53 | 0.036374,0.038230,0.011273,0.010099,0.007404,0.005279,0.004136,0.002844,0.002254,0.002404,0.002306,0.002391,0.007072,0.004474,0.003316,0.003462,0.002730,0.002462,0.002377,0.002021,0.006308,0.006237 54 | 0.034266,0.033852,0.010429,0.010942,0.007512,0.004287,0.003106,0.002672,0.002139,0.002400,0.002164,0.001971,0.007047,0.004568,0.003433,0.002760,0.002330,0.002498,0.001893,0.002065,0.006920,0.006384 55 | 0.037036,0.038158,0.010523,0.010178,0.007514,0.003467,0.002602,0.002700,0.002951,0.002162,0.002451,0.002091,0.006751,0.004657,0.002586,0.002527,0.002529,0.002246,0.002176,0.002119,0.006671,0.006309 56 | 0.041258,0.033066,0.012998,0.012095,0.007473,0.004586,0.003459,0.002780,0.002928,0.002221,0.002625,0.002283,0.006641,0.005606,0.003500,0.002543,0.002644,0.002472,0.002246,0.002524,0.007208,0.006776 57 | 0.038259,0.039314,0.012403,0.012586,0.008275,0.005072,0.003237,0.002550,0.002599,0.002387,0.002382,0.002373,0.007516,0.004922,0.003463,0.002842,0.002391,0.002489,0.002115,0.002458,0.007195,0.007144 58 | 0.039782,0.039317,0.012192,0.012259,0.007640,0.004200,0.003825,0.002837,0.002228,0.002309,0.002051,0.002287,0.007487,0.005238,0.003106,0.002574,0.002336,0.002386,0.001984,0.002189,0.007133,0.006938 59 | 0.038359,0.037254,0.012538,0.010869,0.007371,0.005080,0.004071,0.002863,0.002548,0.002457,0.002546,0.002196,0.007134,0.005125,0.003098,0.002905,0.002819,0.002777,0.002593,0.002297,0.006725,0.006208 60 | 0.036578,0.035905,0.011191,0.009794,0.007377,0.004633,0.002878,0.002926,0.002286,0.002396,0.002290,0.002364,0.006844,0.004688,0.002617,0.002672,0.002459,0.002577,0.002313,0.001979,0.006806,0.005992 61 | 0.037445,0.038066,0.010649,0.010232,0.007367,0.003676,0.002867,0.002504,0.002601,0.002312,0.002383,0.001800,0.007175,0.004890,0.003396,0.002681,0.002447,0.002287,0.002297,0.002274,0.006942,0.006600 62 | 0.037596,0.034396,0.010609,0.010807,0.007168,0.005297,0.004186,0.003004,0.002661,0.002735,0.001935,0.002400,0.006684,0.004711,0.003542,0.002961,0.002496,0.002517,0.002357,0.001958,0.006516,0.006012 63 | 0.034020,0.036871,0.010897,0.010356,0.007435,0.004973,0.003712,0.002840,0.002501,0.002755,0.001945,0.001845,0.006526,0.004773,0.003327,0.002715,0.002499,0.002194,0.002253,0.002345,0.006589,0.006412 64 | 0.037887,0.036871,0.010184,0.010975,0.007650,0.004906,0.003224,0.003289,0.002750,0.002423,0.002129,0.001905,0.007216,0.005692,0.003662,0.002383,0.002446,0.002282,0.002192,0.002397,0.006742,0.007584 65 | 0.038821,0.039764,0.012846,0.011582,0.007999,0.004870,0.003446,0.002532,0.002577,0.002075,0.002328,0.002194,0.007781,0.005150,0.003695,0.002705,0.002495,0.002241,0.002240,0.002062,0.007332,0.006853 66 | 0.038496,0.037763,0.013190,0.012285,0.007764,0.004474,0.003200,0.002767,0.002491,0.002561,0.002239,0.001863,0.007352,0.003907,0.003469,0.002446,0.003111,0.002563,0.001898,0.002512,0.007227,0.006997 67 | 0.039468,0.039671,0.012805,0.012030,0.007848,0.004587,0.003139,0.002573,0.002396,0.002361,0.002116,0.002346,0.007518,0.003753,0.003888,0.002809,0.002471,0.002579,0.002178,0.001982,0.007077,0.006705 68 | 0.040949,0.038422,0.013268,0.012250,0.008065,0.005207,0.002871,0.003066,0.002373,0.002649,0.002050,0.002398,0.007663,0.005624,0.003511,0.002806,0.002328,0.002649,0.002383,0.002067,0.007208,0.006942 69 | 0.039482,0.036790,0.012950,0.012684,0.008051,0.003695,0.003302,0.003166,0.002708,0.002438,0.002553,0.002176,0.007885,0.003649,0.003506,0.002612,0.002222,0.002147,0.002377,0.002404,0.007126,0.006997 70 | 0.039631,0.039896,0.012935,0.012306,0.007853,0.004950,0.002805,0.003052,0.002739,0.002202,0.002187,0.002081,0.007747,0.005083,0.003419,0.003327,0.002470,0.002252,0.002241,0.002465,0.007460,0.006500 71 | 0.038174,0.037601,0.012995,0.012827,0.008221,0.004817,0.003532,0.002995,0.002482,0.002492,0.002335,0.002340,0.007917,0.005388,0.003657,0.003169,0.002699,0.002364,0.002721,0.001981,0.007460,0.007315 72 | 0.037357,0.036594,0.014386,0.012632,0.008559,0.004876,0.003584,0.002997,0.002824,0.002307,0.002276,0.002207,0.008202,0.004745,0.003558,0.003045,0.002654,0.002675,0.002573,0.002343,0.007813,0.007338 73 | 0.035983,0.036094,0.013417,0.012489,0.008235,0.004681,0.003951,0.003202,0.002707,0.002374,0.002132,0.002548,0.007715,0.004667,0.003663,0.002836,0.002407,0.002233,0.002505,0.002499,0.007252,0.007000 74 | 0.038519,0.036856,0.013400,0.012055,0.007978,0.004414,0.003558,0.002777,0.002865,0.002640,0.002164,0.002293,0.007625,0.004545,0.003345,0.002879,0.002557,0.002648,0.002105,0.002326,0.007369,0.006858 75 | 0.035581,0.036978,0.013853,0.012351,0.008247,0.005049,0.003611,0.003133,0.002821,0.002308,0.002554,0.002364,0.008295,0.004798,0.003546,0.003033,0.002684,0.002625,0.002529,0.002149,0.007610,0.007569 76 | 0.037515,0.036398,0.014057,0.012852,0.008559,0.004863,0.003533,0.003563,0.002725,0.002734,0.002795,0.002569,0.008284,0.004826,0.003537,0.002931,0.002780,0.002614,0.002652,0.002550,0.008063,0.007176 77 | 0.036591,0.038825,0.014392,0.013370,0.008751,0.005829,0.003673,0.002918,0.003212,0.002379,0.002493,0.002353,0.008037,0.004891,0.003754,0.003011,0.002445,0.002717,0.002309,0.002449,0.008240,0.007616 78 | 0.037580,0.036659,0.013715,0.012807,0.008230,0.005223,0.003668,0.002931,0.002703,0.002458,0.002378,0.002550,0.007972,0.004890,0.003862,0.002884,0.002860,0.002667,0.002754,0.002458,0.008026,0.007447 79 | 0.036842,0.036721,0.013598,0.013285,0.008957,0.005013,0.003687,0.003109,0.002688,0.002510,0.002487,0.002538,0.008023,0.004767,0.003724,0.003023,0.002812,0.002496,0.002426,0.002280,0.008039,0.007501 80 | 0.035498,0.037283,0.013287,0.012052,0.007996,0.004767,0.003413,0.002852,0.002484,0.002778,0.002413,0.002545,0.008081,0.004706,0.003871,0.003049,0.002592,0.002313,0.002283,0.002450,0.007798,0.007463 81 | 0.037151,0.037082,0.013887,0.013509,0.008655,0.005009,0.003784,0.002912,0.002601,0.002746,0.002632,0.002376,0.008204,0.004945,0.003531,0.003037,0.002641,0.002305,0.002450,0.002598,0.008124,0.007480 82 | 0.036707,0.034938,0.013314,0.013562,0.008479,0.004928,0.003676,0.003024,0.002647,0.002617,0.002507,0.002379,0.008257,0.004704,0.003744,0.003032,0.002728,0.002289,0.002639,0.002364,0.007260,0.007600 83 | 0.034836,0.036013,0.011527,0.011064,0.007970,0.005012,0.003471,0.003014,0.003084,0.002867,0.002399,0.002608,0.007394,0.004868,0.003751,0.002996,0.002601,0.002303,0.002431,0.002406,0.007375,0.006794 84 | 0.034037,0.035876,0.011848,0.011563,0.007904,0.005342,0.003569,0.003119,0.002536,0.002662,0.002499,0.002403,0.007692,0.004624,0.003578,0.002845,0.002745,0.002435,0.002463,0.002517,0.007396,0.007040 85 | 0.034842,0.033053,0.012451,0.011412,0.007960,0.004873,0.003463,0.003422,0.003010,0.002397,0.002596,0.002503,0.007396,0.004791,0.003887,0.003114,0.002587,0.002303,0.002448,0.002479,0.007391,0.006979 86 | 0.034505,0.035012,0.011929,0.010360,0.007429,0.004560,0.003435,0.002986,0.002774,0.002502,0.002541,0.002040,0.007568,0.004590,0.003600,0.002837,0.002692,0.002231,0.002218,0.002248,0.006696,0.006383 87 | 0.033597,0.033934,0.011381,0.010748,0.007330,0.004396,0.003733,0.002876,0.002356,0.002373,0.002380,0.002196,0.007222,0.004648,0.003347,0.002812,0.002822,0.002582,0.002515,0.002152,0.006817,0.006363 88 | 0.034320,0.033413,0.011974,0.010751,0.007605,0.004831,0.003333,0.003001,0.002799,0.002709,0.002034,0.002204,0.007538,0.004747,0.003473,0.002878,0.002845,0.002543,0.002360,0.002480,0.006967,0.007031 89 | 0.034334,0.033694,0.011271,0.010949,0.007484,0.004946,0.003388,0.002984,0.002657,0.002559,0.002273,0.002448,0.007494,0.004765,0.003714,0.002971,0.002554,0.002731,0.002389,0.002359,0.007011,0.006777 90 | 0.033743,0.033749,0.011154,0.010539,0.007534,0.004568,0.003425,0.002856,0.003054,0.002599,0.002149,0.002036,0.006917,0.004896,0.003410,0.003159,0.002836,0.002359,0.002311,0.002419,0.007143,0.006935 91 | 0.034133,0.034932,0.012209,0.011078,0.008054,0.004952,0.003576,0.002667,0.002840,0.002487,0.002250,0.002360,0.007584,0.004810,0.003472,0.002951,0.002653,0.002457,0.002165,0.002358,0.007215,0.006804 92 | 0.033608,0.036103,0.012085,0.012074,0.007801,0.004712,0.003711,0.003714,0.002744,0.002519,0.002396,0.002635,0.007481,0.004830,0.003735,0.003730,0.002665,0.002501,0.002419,0.002513,0.007088,0.007043 93 | 0.034703,0.034932,0.011377,0.010994,0.008018,0.004840,0.003509,0.003245,0.002676,0.002468,0.002420,0.002455,0.007670,0.004918,0.003677,0.002818,0.002787,0.002558,0.002598,0.002342,0.007121,0.006803 94 | 0.035438,0.033533,0.011563,0.011321,0.007785,0.004719,0.003562,0.003109,0.002557,0.002318,0.002420,0.002482,0.007463,0.004937,0.003699,0.002900,0.002572,0.002645,0.002586,0.002213,0.007201,0.006741 95 | 0.035843,0.033497,0.010965,0.011530,0.007651,0.004593,0.003397,0.003049,0.002625,0.002562,0.002670,0.002306,0.007823,0.004933,0.003636,0.002692,0.002802,0.002871,0.002534,0.002293,0.006976,0.006482 96 | 0.033737,0.035442,0.012332,0.012114,0.007997,0.005022,0.003726,0.002698,0.002628,0.002686,0.002312,0.002477,0.007158,0.004552,0.003010,0.003483,0.003002,0.002341,0.002386,0.002422,0.007162,0.006591 97 | 0.033978,0.033668,0.011308,0.011077,0.008091,0.004836,0.003738,0.002846,0.003049,0.002374,0.002337,0.002674,0.007576,0.004907,0.003778,0.002889,0.002613,0.002889,0.002566,0.002375,0.007057,0.006955 98 | 0.034693,0.034804,0.012306,0.011471,0.007986,0.004845,0.003683,0.003266,0.002699,0.002959,0.002503,0.002520,0.007368,0.004608,0.003677,0.002856,0.002581,0.002538,0.002261,0.002671,0.007189,0.007002 99 | 0.034169,0.034942,0.011705,0.012064,0.008080,0.005061,0.003640,0.002703,0.002818,0.002641,0.002623,0.002087,0.007547,0.004654,0.003421,0.003030,0.002965,0.002792,0.002644,0.002342,0.007170,0.006807 100 | 0.033998,0.033186,0.012110,0.011293,0.007969,0.004664,0.003724,0.003242,0.002775,0.002314,0.002386,0.002172,0.007172,0.004476,0.003523,0.002929,0.002658,0.002470,0.002525,0.002467,0.006663,0.006844 101 | 0.034050,0.034342,0.012124,0.011301,0.007683,0.004781,0.003698,0.002985,0.003108,0.002751,0.002344,0.002233,0.007522,0.005026,0.003311,0.002927,0.003126,0.002306,0.002103,0.002391,0.007266,0.006705 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_10000000.csv: -------------------------------------------------------------------------------- 1 | ForLoop_prod_num_1,ForLoop_sum_num_1,ListUtil_prod_num_1,ListUtil_sum_num_1,OMP_prod_num_01,OMP_prod_num_02,OMP_prod_num_03,OMP_prod_num_04,OMP_prod_num_05,OMP_prod_num_06,OMP_prod_num_07,OMP_prod_num_08,OMP_sum_num_01,OMP_sum_num_02,OMP_sum_num_03,OMP_sum_num_04,OMP_sum_num_05,OMP_sum_num_06,OMP_sum_num_07,OMP_sum_num_08,StC_prod_num_1,StC_sum_num_1 2 | 0.337648,0.355061,0.139657,0.133662,0.072523,0.037582,0.027023,0.022063,0.020698,0.020420,0.019565,0.019035,0.066230,0.042006,0.024425,0.021127,0.018418,0.020590,0.018090,0.017633,0.076894,0.070461 3 | 0.357102,0.325845,0.170002,0.276311,0.076905,0.046651,0.027002,0.121698,0.130405,0.016903,0.021987,0.014967,0.087833,0.046175,0.030377,0.031876,0.045547,0.031733,0.020690,0.028656,0.080310,0.087310 4 | 0.376613,0.458939,0.292447,0.140549,0.091494,0.044331,0.088991,0.022472,0.017956,0.017609,0.014643,0.014534,0.115393,0.039249,0.027112,0.019783,0.023988,0.015891,0.014869,0.018969,0.065019,0.128568 5 | 0.368452,0.363498,0.228613,0.134382,0.070234,0.042550,0.054247,0.021889,0.020715,0.016574,0.015006,0.019344,0.070014,0.039783,0.029710,0.022836,0.020225,0.016744,0.040482,0.015981,0.069213,0.083592 6 | 0.356883,0.432897,0.183584,0.133446,0.100942,0.045993,0.048464,0.023996,0.021180,0.017633,0.015095,0.016378,0.070557,0.043063,0.026862,0.021530,0.019335,0.016912,0.018179,0.030482,0.064705,0.070631 7 | 0.379023,0.368255,0.156379,0.173728,0.067961,0.039169,0.027752,0.022454,0.018715,0.017030,0.033427,0.015147,0.070939,0.037739,0.026259,0.021116,0.019018,0.016502,0.015590,0.022227,0.069825,0.070202 8 | 0.343992,0.408433,0.151878,0.150620,0.065619,0.039142,0.026180,0.063974,0.018560,0.016675,0.016504,0.014950,0.066516,0.038107,0.027546,0.022768,0.017885,0.020776,0.016251,0.015383,0.064320,0.071049 9 | 0.340324,0.389965,0.136388,0.153198,0.069879,0.037139,0.050837,0.021606,0.018229,0.017624,0.015832,0.015285,0.072207,0.038756,0.034505,0.020896,0.024798,0.016854,0.016490,0.015257,0.070404,0.070357 10 | 0.332856,0.366417,0.165452,0.129581,0.070685,0.039854,0.026998,0.025596,0.018472,0.017725,0.016118,0.015251,0.070574,0.038440,0.027205,0.022084,0.018803,0.017291,0.016106,0.025247,0.102619,0.069895 11 | 0.324586,0.324657,0.132276,0.129479,0.064295,0.038091,0.027802,0.022228,0.018914,0.016591,0.015620,0.015482,0.064619,0.038479,0.029020,0.021465,0.018750,0.017006,0.016390,0.015376,0.072549,0.069274 12 | 0.349665,0.330395,0.114713,0.129917,0.064313,0.036305,0.027473,0.022106,0.018681,0.017504,0.015759,0.017765,0.064906,0.040534,0.026335,0.021001,0.020955,0.020049,0.016164,0.021119,0.063845,0.065647 13 | 0.342674,0.326096,0.132172,0.128656,0.075182,0.038266,0.026997,0.022054,0.032066,0.017317,0.015949,0.015407,0.064570,0.038949,0.026557,0.020820,0.018687,0.020680,0.015727,0.015224,0.064059,0.069189 14 | 0.331194,0.337178,0.174477,0.130400,0.077730,0.037866,0.027142,0.021230,0.018885,0.017326,0.015827,0.015632,0.106435,0.037967,0.027577,0.021863,0.018816,0.016563,0.015555,0.015126,0.070015,0.070757 15 | 0.341362,0.397643,0.117080,0.163637,0.083097,0.052552,0.027646,0.021715,0.019581,0.017104,0.016196,0.015530,0.109350,0.038213,0.029004,0.021668,0.020146,0.016952,0.015931,0.015634,0.068158,0.072710 16 | 0.335143,0.325430,0.132274,0.130229,0.066284,0.038006,0.027191,0.022513,0.018433,0.029421,0.016392,0.015753,0.064802,0.039492,0.027262,0.021687,0.018573,0.017191,0.015954,0.016110,0.069433,0.081884 17 | 0.338624,0.324947,0.115214,0.128937,0.071468,0.038041,0.026733,0.044472,0.029730,0.017326,0.015989,0.015292,0.064600,0.036470,0.028197,0.021723,0.050684,0.017517,0.016302,0.015860,0.066186,0.069719 18 | 0.336175,0.333148,0.151567,0.128498,0.073568,0.039518,0.027268,0.024867,0.019168,0.018148,0.016663,0.020166,0.064829,0.038674,0.028518,0.022938,0.020402,0.018029,0.017515,0.015224,0.073907,0.072039 19 | 0.339426,0.360755,0.114931,0.130087,0.093425,0.068095,0.025749,0.048092,0.021224,0.016578,0.017225,0.015824,0.065058,0.039729,0.027101,0.022194,0.018517,0.016740,0.016523,0.015283,0.108890,0.088673 20 | 0.335231,0.385461,0.175532,0.139463,0.065045,0.037695,0.026590,0.022896,0.018286,0.016822,0.016286,0.014780,0.064586,0.040002,0.027232,0.021547,0.018645,0.016647,0.016183,0.015459,0.065196,0.064456 21 | 0.342673,0.324352,0.113403,0.113366,0.064700,0.036273,0.027022,0.022700,0.020379,0.016700,0.024626,0.015546,0.065193,0.038108,0.026052,0.022172,0.019229,0.017010,0.015602,0.015277,0.066298,0.064366 22 | 0.325427,0.326563,0.114119,0.112088,0.072670,0.039165,0.025580,0.020577,0.018866,0.016880,0.016095,0.015150,0.064776,0.039166,0.026435,0.021339,0.018584,0.017460,0.038364,0.015582,0.070746,0.070197 23 | 0.330740,0.329157,0.132579,0.157246,0.071991,0.038991,0.027656,0.047623,0.018426,0.016718,0.016097,0.015155,0.071452,0.039234,0.026622,0.022484,0.019286,0.016843,0.015715,0.015032,0.069662,0.102924 24 | 0.314821,0.326808,0.132578,0.113003,0.070935,0.040849,0.026525,0.021830,0.018686,0.016798,0.015647,0.016332,0.071774,0.040937,0.025493,0.022868,0.018577,0.016888,0.017291,0.015063,0.078706,0.068474 25 | 0.329702,0.388580,0.111661,0.129999,0.064684,0.075835,0.027272,0.021134,0.020582,0.017117,0.016673,0.015147,0.066266,0.079040,0.027582,0.024241,0.018027,0.018822,0.017465,0.015577,0.064364,0.063857 26 | 0.354582,0.371388,0.116225,0.153034,0.065125,0.037640,0.027621,0.022018,0.018313,0.017009,0.016298,0.016129,0.084861,0.038444,0.025673,0.022564,0.018255,0.017221,0.016761,0.015397,0.072008,0.064485 27 | 0.320543,0.319403,0.131830,0.111473,0.064521,0.038609,0.026644,0.021758,0.018757,0.016956,0.016089,0.015173,0.065187,0.037929,0.026173,0.021798,0.018573,0.018407,0.015504,0.015709,0.064191,0.066487 28 | 0.328042,0.349069,0.112556,0.110867,0.064913,0.038649,0.026695,0.021643,0.018879,0.016658,0.015755,0.015783,0.066013,0.038168,0.026406,0.021965,0.017984,0.017541,0.016040,0.015357,0.064033,0.064296 29 | 0.315532,0.322173,0.114251,0.111721,0.064995,0.037330,0.026437,0.022066,0.018558,0.016919,0.015995,0.015268,0.067553,0.035837,0.028051,0.020775,0.018574,0.016416,0.015855,0.015163,0.065878,0.064424 30 | 0.323634,0.324851,0.139181,0.110299,0.064659,0.038599,0.027949,0.022071,0.018726,0.017431,0.015750,0.014901,0.064651,0.037783,0.026125,0.021835,0.018567,0.016834,0.015818,0.015384,0.064235,0.064131 31 | 0.321204,0.339551,0.123288,0.123738,0.084592,0.039140,0.026459,0.020369,0.019092,0.016710,0.015680,0.015250,0.070814,0.039363,0.027925,0.021189,0.019123,0.016585,0.015757,0.015931,0.063918,0.064783 32 | 0.320613,0.362521,0.136150,0.129063,0.071112,0.036786,0.026574,0.021509,0.018385,0.016735,0.016038,0.015022,0.064674,0.036883,0.028044,0.021347,0.018835,0.027163,0.016404,0.015660,0.070717,0.064252 33 | 0.320668,0.324909,0.112739,0.110521,0.064749,0.035830,0.027042,0.021627,0.018500,0.016713,0.016005,0.015014,0.064970,0.043000,0.026276,0.021948,0.019080,0.016427,0.016024,0.014803,0.064142,0.066799 34 | 0.330509,0.398075,0.114669,0.129543,0.070431,0.038945,0.027266,0.020900,0.019194,0.016441,0.016152,0.033401,0.070860,0.039770,0.027709,0.021255,0.018814,0.017365,0.015588,0.015344,0.113054,0.070105 35 | 0.361046,0.344854,0.131135,0.111623,0.065002,0.034869,0.025384,0.021143,0.018312,0.016480,0.015870,0.015732,0.066117,0.036317,0.025555,0.024150,0.018668,0.016560,0.017015,0.019014,0.064241,0.063982 36 | 0.317021,0.384239,0.122269,0.112460,0.064982,0.036213,0.027454,0.021392,0.018126,0.017770,0.015998,0.015221,0.064810,0.035196,0.027953,0.025924,0.018998,0.016811,0.015962,0.015277,0.064103,0.064160 37 | 0.329587,0.325268,0.115877,0.133721,0.070993,0.039522,0.026871,0.022188,0.018362,0.016697,0.015933,0.015267,0.111760,0.037981,0.025929,0.021080,0.019111,0.020234,0.019156,0.035333,0.064306,0.064535 38 | 0.366961,0.338407,0.156459,0.128915,0.064963,0.038792,0.027292,0.021089,0.018515,0.016495,0.016554,0.015056,0.068726,0.038467,0.027039,0.021312,0.021009,0.016634,0.015633,0.015693,0.064689,0.071101 39 | 0.313697,0.346326,0.115004,0.129133,0.064701,0.040752,0.028946,0.021857,0.018609,0.016869,0.015744,0.015221,0.065136,0.037452,0.027196,0.022798,0.019083,0.016823,0.016702,0.014576,0.064423,0.064144 40 | 0.327280,0.325788,0.113193,0.112302,0.066573,0.038374,0.026272,0.021522,0.018468,0.017507,0.017081,0.015775,0.064720,0.039268,0.026465,0.022155,0.018496,0.016657,0.015732,0.015273,0.064100,0.064246 41 | 0.330690,0.325654,0.114831,0.111566,0.064567,0.039857,0.028324,0.021392,0.018712,0.016976,0.015954,0.015562,0.064767,0.040917,0.026727,0.021784,0.018760,0.016711,0.016061,0.015860,0.066455,0.064182 42 | 0.321180,0.351747,0.112190,0.110746,0.064919,0.039360,0.028773,0.022054,0.019622,0.017011,0.015787,0.015264,0.064768,0.040772,0.027133,0.020539,0.019084,0.016579,0.015751,0.015311,0.066034,0.064109 43 | 0.322272,0.321475,0.111594,0.111031,0.064937,0.036678,0.028040,0.021595,0.018749,0.017427,0.015911,0.015316,0.069175,0.036863,0.025406,0.021938,0.018413,0.016585,0.015910,0.015276,0.064737,0.066422 44 | 0.322772,0.321445,0.117149,0.129994,0.064600,0.039219,0.027339,0.020683,0.018413,0.017363,0.016534,0.014997,0.064664,0.038227,0.025518,0.021150,0.018592,0.016720,0.015743,0.016060,0.066849,0.064149 45 | 0.315796,0.319406,0.109792,0.108859,0.063171,0.035758,0.028613,0.022740,0.019371,0.016871,0.016201,0.015176,0.063248,0.039351,0.032771,0.022868,0.019008,0.017167,0.015988,0.014916,0.062621,0.063656 46 | 0.322602,0.322909,0.110944,0.108825,0.063369,0.038755,0.027659,0.021673,0.017873,0.016610,0.015920,0.015142,0.063358,0.036785,0.025882,0.021246,0.018222,0.017053,0.016216,0.015235,0.067924,0.063626 47 | 0.317392,0.326669,0.110080,0.108578,0.066166,0.038542,0.026775,0.020815,0.017833,0.017198,0.015675,0.015563,0.063330,0.038657,0.026388,0.021620,0.018509,0.016701,0.015758,0.015341,0.062610,0.062718 48 | 0.319172,0.323922,0.112771,0.108730,0.063784,0.036664,0.026720,0.021022,0.018769,0.016952,0.015879,0.015168,0.063342,0.038886,0.026149,0.022047,0.018214,0.016712,0.016071,0.014956,0.067566,0.062555 49 | 0.319793,0.324806,0.110593,0.108310,0.063342,0.038496,0.028430,0.023045,0.018646,0.016418,0.016092,0.015181,0.063246,0.035538,0.027099,0.021726,0.017909,0.016865,0.016059,0.015248,0.066974,0.062559 50 | 0.314163,0.328738,0.118182,0.107224,0.063333,0.038128,0.026561,0.021232,0.021587,0.016310,0.016470,0.016013,0.063063,0.039143,0.027682,0.025547,0.018714,0.016727,0.016143,0.014856,0.062465,0.062471 51 | 0.312711,0.316308,0.110218,0.113891,0.063074,0.036497,0.028170,0.025920,0.019370,0.018323,0.016698,0.015606,0.063253,0.039307,0.026121,0.021218,0.018951,0.016697,0.015762,0.016276,0.062552,0.062510 52 | 0.310832,0.316180,0.112483,0.109315,0.065615,0.036983,0.026609,0.022492,0.019932,0.016250,0.015672,0.015373,0.064054,0.037638,0.032357,0.021356,0.020982,0.017304,0.016595,0.015646,0.062407,0.062717 53 | 0.320116,0.329559,0.112326,0.116557,0.063123,0.035975,0.026806,0.023642,0.018468,0.020109,0.015628,0.016039,0.063697,0.038400,0.027573,0.022447,0.021647,0.017009,0.016264,0.015696,0.064182,0.062520 54 | 0.313904,0.319452,0.109052,0.125343,0.063548,0.037827,0.027184,0.020984,0.019005,0.017931,0.015666,0.016035,0.063585,0.036793,0.027850,0.022975,0.018410,0.016506,0.015701,0.017526,0.067288,0.064550 55 | 0.313823,0.317492,0.110794,0.111679,0.063513,0.036239,0.026633,0.021873,0.018034,0.016530,0.016051,0.015385,0.065315,0.036929,0.027086,0.021222,0.018690,0.016933,0.016701,0.015200,0.062414,0.062261 56 | 0.319360,0.320115,0.109336,0.114686,0.063120,0.037329,0.029227,0.024000,0.019267,0.016302,0.015642,0.015656,0.063074,0.038180,0.029921,0.021455,0.018499,0.017889,0.016024,0.015738,0.062172,0.067571 57 | 0.315915,0.316604,0.108849,0.108270,0.063922,0.036555,0.025428,0.021167,0.019140,0.016542,0.015900,0.015550,0.063636,0.036161,0.026877,0.020922,0.018014,0.016576,0.015739,0.015809,0.064814,0.062578 58 | 0.316681,0.319174,0.112256,0.108901,0.066082,0.038706,0.029831,0.021678,0.018295,0.016819,0.016548,0.014606,0.063135,0.038610,0.026214,0.021940,0.018498,0.018502,0.016643,0.015054,0.062811,0.065789 59 | 0.318142,0.322774,0.109483,0.112753,0.063202,0.038986,0.032330,0.021696,0.017990,0.019755,0.016841,0.015107,0.063006,0.036722,0.028242,0.021675,0.018793,0.016889,0.015790,0.015514,0.069250,0.062355 60 | 0.324944,0.320857,0.109533,0.111318,0.063364,0.038353,0.026081,0.021753,0.019288,0.016539,0.016198,0.015696,0.063302,0.038763,0.026514,0.022234,0.018980,0.016944,0.016888,0.015334,0.062585,0.065050 61 | 0.320673,0.319625,0.108737,0.108631,0.063446,0.038077,0.027103,0.022245,0.019714,0.017803,0.015568,0.015472,0.066608,0.038593,0.026836,0.021907,0.019731,0.016657,0.015751,0.016198,0.062537,0.062617 62 | 0.321662,0.324892,0.113336,0.109594,0.063924,0.039445,0.027401,0.021996,0.018206,0.016790,0.016169,0.015908,0.069720,0.037926,0.027521,0.021538,0.018690,0.017520,0.016145,0.015541,0.067196,0.062527 63 | 0.325093,0.326908,0.112039,0.130611,0.063525,0.036353,0.026855,0.021600,0.018691,0.016882,0.015768,0.015144,0.063488,0.039113,0.027377,0.021654,0.018946,0.017500,0.015819,0.015944,0.067817,0.062540 64 | 0.319288,0.326280,0.109555,0.107825,0.065230,0.037453,0.025888,0.022157,0.018593,0.016984,0.016102,0.015472,0.063516,0.039039,0.026167,0.022382,0.018437,0.016724,0.015609,0.015127,0.066835,0.062615 65 | 0.338462,0.325414,0.114662,0.112024,0.063974,0.038134,0.026775,0.021964,0.018827,0.017635,0.016014,0.015435,0.068848,0.038389,0.027301,0.021348,0.019148,0.016808,0.016082,0.015175,0.067339,0.063991 66 | 0.375547,0.327671,0.110679,0.109392,0.066773,0.044679,0.027204,0.021896,0.018587,0.016386,0.016102,0.015551,0.063635,0.038853,0.027323,0.021884,0.018655,0.018022,0.015851,0.015224,0.063200,0.063105 67 | 0.359113,0.321217,0.110186,0.113421,0.070498,0.038288,0.027955,0.059877,0.018515,0.016568,0.015923,0.015350,0.064853,0.039382,0.026515,0.021561,0.018271,0.017123,0.015841,0.021189,0.063145,0.062940 68 | 0.319572,0.386885,0.132624,0.124907,0.068664,0.038507,0.027401,0.021825,0.018706,0.016808,0.015877,0.015108,0.069056,0.040318,0.033295,0.021421,0.018682,0.016906,0.015692,0.015243,0.067826,0.066317 69 | 0.315693,0.337681,0.127237,0.109939,0.064295,0.036574,0.027422,0.022667,0.018692,0.017242,0.015954,0.015640,0.064243,0.036972,0.027861,0.021149,0.018983,0.016681,0.015601,0.015160,0.063741,0.067461 70 | 0.320001,0.327366,0.110598,0.108897,0.063897,0.038601,0.027999,0.021610,0.019877,0.016465,0.025689,0.014897,0.068932,0.036906,0.026358,0.021109,0.018992,0.017513,0.019275,0.015149,0.063672,0.063318 71 | 0.332591,0.330536,0.127618,0.127210,0.069247,0.039128,0.027447,0.021863,0.034094,0.016730,0.015903,0.015202,0.072804,0.064915,0.027276,0.022051,0.018424,0.017213,0.016154,0.015519,0.069925,0.068725 72 | 0.333354,0.338519,0.110121,0.110237,0.063689,0.038735,0.027019,0.021824,0.018924,0.017157,0.016595,0.015188,0.068309,0.040442,0.027518,0.021965,0.018601,0.032399,0.015966,0.015570,0.069110,0.065518 73 | 0.321879,0.359018,0.111574,0.109926,0.090140,0.035619,0.032067,0.021184,0.018861,0.017262,0.018112,0.015317,0.064329,0.038852,0.027194,0.022117,0.018006,0.016692,0.015912,0.015262,0.066234,0.062913 74 | 0.317789,0.353901,0.127111,0.126571,0.081498,0.036894,0.027408,0.022171,0.018889,0.017866,0.016769,0.015414,0.072011,0.038414,0.027719,0.022738,0.018370,0.017383,0.015984,0.015499,0.068135,0.063348 75 | 0.314373,0.325355,0.109690,0.108730,0.064413,0.037207,0.027023,0.022159,0.018625,0.018962,0.016026,0.015325,0.068339,0.037680,0.026515,0.021694,0.018133,0.016905,0.016376,0.015593,0.122264,0.065142 76 | 0.320811,0.323509,0.129622,0.129198,0.065198,0.039078,0.027875,0.022189,0.019346,0.016831,0.015922,0.015963,0.071987,0.038784,0.026978,0.021267,0.018727,0.016877,0.016123,0.015568,0.063462,0.108732 77 | 0.316525,0.349384,0.128471,0.130272,0.069506,0.040712,0.027903,0.021744,0.017508,0.017034,0.016229,0.028719,0.067104,0.038513,0.027671,0.021580,0.018402,0.016808,0.015939,0.015749,0.062876,0.066591 78 | 0.341995,0.370972,0.110188,0.162918,0.073964,0.038043,0.026952,0.021626,0.018115,0.016715,0.016430,0.015430,0.064291,0.038063,0.027400,0.021126,0.019119,0.017014,0.016232,0.014719,0.062653,0.063576 79 | 0.314732,0.378734,0.131697,0.125121,0.071241,0.040581,0.027148,0.022414,0.018719,0.016489,0.016088,0.015557,0.064281,0.038345,0.027032,0.021163,0.018322,0.016863,0.015600,0.016072,0.069884,0.069976 80 | 0.312248,0.329154,0.109886,0.114687,0.063767,0.038365,0.027195,0.021347,0.019075,0.017002,0.015604,0.015675,0.063802,0.038568,0.028056,0.021882,0.017956,0.017088,0.016325,0.015487,0.067658,0.068009 81 | 0.314535,0.324833,0.110858,0.108912,0.063347,0.036879,0.025676,0.021892,0.018605,0.016843,0.015892,0.015548,0.063854,0.035446,0.027421,0.021496,0.018164,0.016890,0.015513,0.015537,0.066327,0.062954 82 | 0.317816,0.320834,0.110067,0.108474,0.064063,0.038734,0.027264,0.021582,0.019145,0.016720,0.016567,0.015469,0.064201,0.034549,0.027005,0.021355,0.019661,0.016671,0.015759,0.016082,0.067564,0.066927 83 | 0.312407,0.326611,0.114061,0.114237,0.064136,0.036507,0.026245,0.020961,0.018991,0.016607,0.015872,0.015720,0.068294,0.037877,0.027284,0.021443,0.019191,0.017234,0.016699,0.015070,0.063957,0.069200 84 | 0.315935,0.350550,0.128893,0.111533,0.063427,0.038177,0.026333,0.022586,0.018862,0.017529,0.016750,0.015021,0.063978,0.037181,0.026995,0.021832,0.018735,0.016704,0.016008,0.015053,0.064693,0.068533 85 | 0.321517,0.319094,0.114431,0.108784,0.063699,0.035353,0.025626,0.021436,0.019421,0.016750,0.015576,0.015679,0.064200,0.035245,0.025947,0.021521,0.018379,0.016640,0.016147,0.015563,0.063756,0.063592 86 | 0.332631,0.326336,0.113993,0.126130,0.063266,0.038931,0.027265,0.022437,0.018145,0.016783,0.015762,0.015336,0.068584,0.039369,0.026612,0.021604,0.018759,0.016766,0.016123,0.015248,0.063261,0.070843 87 | 0.332185,0.349323,0.127168,0.131330,0.064250,0.037549,0.026376,0.022546,0.019091,0.016676,0.016594,0.015156,0.067233,0.037506,0.027466,0.020960,0.018903,0.016744,0.016220,0.015283,0.063300,0.068561 88 | 0.337586,0.326029,0.131107,0.117742,0.068135,0.036703,0.027001,0.021964,0.018780,0.017178,0.016519,0.015563,0.063226,0.036383,0.028706,0.021845,0.018910,0.017604,0.016029,0.015506,0.062917,0.062564 89 | 0.335759,0.354707,0.128189,0.125400,0.063562,0.038842,0.027646,0.022819,0.018044,0.016789,0.017426,0.015613,0.068705,0.039557,0.026570,0.022411,0.018667,0.017104,0.015865,0.015590,0.064701,0.068130 90 | 0.320785,0.350270,0.133819,0.108911,0.068772,0.038620,0.027271,0.024829,0.018381,0.017422,0.016721,0.015397,0.063953,0.038334,0.025301,0.021771,0.018226,0.017583,0.015750,0.015652,0.067713,0.067175 91 | 0.318535,0.357977,0.127747,0.108487,0.063469,0.038670,0.027396,0.021660,0.017988,0.017540,0.016038,0.015341,0.070934,0.037953,0.026635,0.021149,0.018075,0.016640,0.016341,0.015377,0.069348,0.067849 92 | 0.331134,0.345136,0.133067,0.131185,0.068105,0.037414,0.028320,0.022895,0.018658,0.016520,0.015594,0.015202,0.068836,0.039099,0.026735,0.020658,0.019243,0.017069,0.016065,0.015357,0.066660,0.068386 93 | 0.330306,0.333479,0.127017,0.129710,0.068366,0.040207,0.028240,0.022723,0.018882,0.017454,0.016140,0.018333,0.068645,0.039784,0.028159,0.021428,0.024085,0.017888,0.016192,0.015269,0.069105,0.067402 94 | 0.340981,0.353078,0.127978,0.108893,0.067972,0.038117,0.026584,0.026944,0.018983,0.017370,0.016307,0.015020,0.068042,0.039515,0.027546,0.020865,0.020598,0.016340,0.016044,0.017512,0.068746,0.068231 95 | 0.330833,0.347270,0.131146,0.128103,0.068854,0.039176,0.026714,0.022554,0.019363,0.017271,0.015957,0.014957,0.069266,0.040364,0.027682,0.021501,0.019220,0.017076,0.016066,0.015459,0.067658,0.068046 96 | 0.313794,0.338034,0.128564,0.125252,0.069258,0.039994,0.026370,0.023063,0.019254,0.017493,0.016001,0.015265,0.072327,0.038964,0.027659,0.021282,0.018968,0.016837,0.015745,0.015210,0.067657,0.066867 97 | 0.314841,0.356610,0.111535,0.128639,0.064133,0.039116,0.026075,0.021691,0.018423,0.016946,0.016639,0.015953,0.068520,0.040191,0.027257,0.020932,0.018335,0.016844,0.015430,0.015350,0.063198,0.067001 98 | 0.313603,0.328551,0.132920,0.125495,0.066441,0.037357,0.027189,0.022191,0.018288,0.017463,0.016647,0.015508,0.063252,0.038448,0.028168,0.021909,0.019040,0.016557,0.015633,0.015917,0.067891,0.069491 99 | 0.316991,0.320120,0.111615,0.112513,0.068716,0.038495,0.026202,0.022162,0.018588,0.016855,0.016492,0.014942,0.067866,0.038862,0.027109,0.021964,0.018103,0.017306,0.015949,0.015581,0.063239,0.067343 100 | 0.322590,0.354888,0.128697,0.126224,0.067441,0.036796,0.028030,0.022573,0.018376,0.016356,0.016129,0.015128,0.064337,0.037843,0.026044,0.021111,0.018666,0.016966,0.015816,0.015592,0.063060,0.068140 101 | 0.322064,0.320785,0.112802,0.125787,0.063972,0.038240,0.026368,0.020980,0.018477,0.016729,0.015610,0.015431,0.066784,0.036780,0.027278,0.021557,0.018509,0.016623,0.016248,0.015858,0.062498,0.063899 102 | -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_limited.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chrisarg/perlAssembly/9b41a989d4cef8bafa3279afdbc4c06e21d76cd2/ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_limited.png -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_limited_color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chrisarg/perlAssembly/9b41a989d4cef8bafa3279afdbc4c06e21d76cd2/ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_limited_color.png -------------------------------------------------------------------------------- /ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_ratio_limited_color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chrisarg/perlAssembly/9b41a989d4cef8bafa3279afdbc4c06e21d76cd2/ListUtil_OMP_DataFiles/Xeon2597/ListUtil_OMP_ratio_limited_color.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # perlAssembly 2 | 3 | This is probably one of the things that should never be allowed to exist, but why not use Perl and its capabilities to inline foreign code, to FAFO with assembly without a build system? Everything in a single file! In the process one may find ways to use Perl to enhance NASM and vice versa. But for now, I make no such claims : I am just using the perlAssembly git repo to illustrate how one can use Perl to drive (and learn to code!) assembly programs from a single file. 4 | 5 | ## x86-64 examples 6 | 7 | ### Adding Two Integers 8 | ##### Script: addIntegers.pl 9 | Simple integer addition in Perl - this is the Hello World version of this git repo 10 | 11 | ### The sum of an array of integers 12 | ##### Scripts: addArrayofIntegers.pl & addArrayOfIntegers\_C.pl 13 | Explore multiple equivalent ways to add *large* arrays of short integers (-100 to 100 in this implementat) in Perl: 14 | * ASM\_blank : tests the speed of calling ASM from Perl (no computations are done) 15 | * ASM : passes the integers as bytes and then uses conversion operations and scalar floating point addition 16 | * ASM\_doubles : passes the array as a packed string of doubles and do scalar double floating addition in assembly 17 | * ASM\_doubles\_AVX: passes the array as a packed string of doubles and do packed floating point addition in assembly 18 | * ForLoop : standard for loop in Perl 19 | * ListUtil: sum function from list utilities 20 | * PDL : uses summation in PDL 21 | 22 | Scenarios w\_alloc : allocate memory for each iteration to test the speed of pack, those marked 23 | as wo\_alloc, use a pre-computed data structure to pass the array to the underlying code. 24 | Benchmarks of the first scenario give the true cost of offloading summation to of a Perl array to a given 25 | function when the source data are in Perl. Timing the second scenario benchmarks speed of the 26 | underlying implementation. 27 | 28 | The script illustrates 29 | * an important (but not the only one!) strategy to create a data structure 30 | that is suitable for Assembly to work with, i.e. a standard array of the appropriate type, 31 | in which one element is laid adjacent to the previous one in memory 32 | * the emulation of declaring a pointer as constant in the interface of a C function. In the 33 | AVX code, we don't FAFO with the pointer (RSI in the calling convention) to the array directly, 34 | but first load its address to another register that we manipulate at will. 35 | 36 | 37 | #### Results 38 | Those were obtained on the i7 with the following topology 39 | 40 | ![Topology of system](i7.png) 41 | 42 | And here are the timings! 43 | 44 | | | mean | median | stddev | 45 | |------------------------------|--------|--------|--------| 46 | |ASM\_blank | 2.3e-06| 2.0e-06| 1.1e-06| 47 | |ASM\_doubles\_AVX\_w\_alloc | 3.6e-03| 3.5e-03| 4.2e-04| 48 | |ASM\_doubles\_AVX\_wo\_alloc | 3.0e-04| 2.9e-04| 2.7e-05| 49 | |ASM\_doubles\_w\_alloc | 4.3e-03| 4.1e-03| 4.5e-04| 50 | |ASM\_doubles\_wo\_alloc | 8.9e-04| 8.7e-04| 3.0e-05| 51 | |ASM\_w\_alloc | 4.3e-03| 4.2e-03| 4.5e-04| 52 | |ASM\_wo\_alloc | 9.2e-04| 9.1e-04| 4.1e-05| 53 | |ForLoop | 1.9e-02| 1.9e-02| 2.6e-04| 54 | |ListUtil | 4.5e-03| 4.5e-03| 1.4e-04| 55 | |PDL\_w\_alloc | 2.1e-02| 2.1e-02| 6.7e-04| 56 | |PDL\_wo\_alloc | 9.2e-04| 9.0e-04| 3.9e-05| 57 | 58 | Let's say we wanted to do this toy experiment in pure C (using Inline::C of course!) 59 | This code obtains the integers as a packed "string" of doubles and forms the sum in C 60 | ```C 61 | double sum_array_C(char *array_in, size_t length) { 62 | double sum = 0.0; 63 | double * array = (double *) array_in; 64 | for (size_t i = 0; i < length; i++) { 65 | sum += array[i]; 66 | } 67 | return sum; 68 | } 69 | ``` 70 | 71 | Here are the timing results: 72 | 73 | | | mean | median | stddev | 74 | |------------------------------|--------|--------|--------| 75 | |C\_doubles\_w\_alloc |4.1e-03 |4.1e-03 | 2.3e-04| 76 | |C\_doubles\_wo\_alloc |9.0e-04 |8.7e-04 | 4.6e-05| 77 | 78 | 79 | What if we used SIMD directives and parallel loop constructs in OpenMP? This was done in 80 | the file addArrayOfIntegers\_C.pl. All three combinations were tested, i.e. SIMD directives 81 | alone (the C equivalent of the AVX code), OpenMP parallel loop threads and SIMD+OpenMP. 82 | Here are the timings! 83 | 84 | | | mean | median | stddev | 85 | |------------------------------|--------|--------|--------| 86 | |C\_OMP\_w\_alloc |4.0e-03 | 3.7e-03| 1.4e-03| 87 | |C\_OMP\_wo\_alloc |3.1e-04 | 2.3e-04| 9.5e-04| 88 | |C\_SIMD\_OMP\_w\_alloc |4.0e-03 | 3.8e-03| 8.6e-04| 89 | |C\_SIMD\_OMP\_wo\_alloc |3.1e-04 | 2.5e-04| 8.5e-04| 90 | |C\_SIMD\_w\_alloc |4.1e-03 | 4.0e-03| 2.4e-04| 91 | |C\_SIMD\_wo\_alloc |5.0e-04 | 5.0e-04| 8.9e-05| 92 | 93 | #### Discussion of the sum of an array of integers example 94 | * For calculations such as this, the price that must be paid is all in memory currency: it 95 | takes time to generate these large arrays, and for code with low arithmetic intensity this 96 | time dominates the numeric calculation time. 97 | * Look how insanely effective sum in List::Util is : even though it has to walk the Perl 98 | array whose elements (the *doubles*, not the AV*) are not stored in a contiguous area in memory, 99 | it is no more than 3x slower than the equivalent C code C\_doubles\_wo\_alloc. 100 | * Look how optimized PDL is compared to the C code in the scenario without memory allocation. 101 | * Manual SIMD coded in assembly is 40% faster than the equivalent SIMD code in OpenMP (but it is 102 | much more painful to write) 103 | * The threaded OpenMP version achieved equivalent performance to the single thread AVX assembly 104 | programs, with no obvious improvement from combining SIMD+parallel loop for pragmas in OpenMP. 105 | * For the example considered here, it thus makes ZERO senso to offload a calculation as simple as a 106 | summation because ListUtil is already within 15% of the assembly solution (at a latter iteration 107 | we will also test AVX2 and AVX512 packed addition to see if we can improve the results). 108 | * If however, one was managing the array, not as a Perl array, but as an area in memory through 109 | a Perl object, then one COULD consider offloading. It may be fun to consider an example in 110 | which one adds the output of a function that has an efficient PDL and assembly implementation 111 | to see how the calculus changes (in the to-do list for now). 112 | 113 | ### Parallel reductions over numerical data using ListUtil , Inline and OpenMP 114 | ##### Script: ListUtil_OMP.pl and analyze_ListUtil_OMP.R 115 | Exploration of reductions for numerical data using Perl Loops, Inline and OpenMP 116 | Version 0.01 was created for the [London 2024 Perl and Raku Workshop](https://act.yapc.eu/lpw2024/) on a Xeon E2597v4 with the 117 | following topology: 118 | ![image](https://github.com/user-attachments/assets/aa1cfde3-8f0d-4d22-b9f6-29fc2d5884c0) 119 | 120 | and empirical roofline diagram: 121 | 122 | ![image](https://github.com/user-attachments/assets/6c93e210-33d7-460c-92b7-5483a0460ff1) 123 | 124 | Write up of the scenario and additional results will be uploaded after the workup. 125 | Version 0.02 will likely drop _after_ the [Winter 2024 Perl Community conference](https://science.perlcommunity.org/spj). 126 | 127 | 128 | 129 | ### Disclaimer 130 | The code here is NOT meant to be portable. I code in Linux and in x86-64, so if you are looking into Window's ABI or ARM, you will be disappointed. But as my knowledge of ARM assembly grows, I intend to rewrite some examples in Arm assembly! 131 | -------------------------------------------------------------------------------- /addArrayofIntegers.pl: -------------------------------------------------------------------------------- 1 | #!/home/chrisarg/perl5/perlbrew/perls/current/bin/perl 2 | use v5.36; 3 | 4 | use List::Util qw(sum); 5 | use Benchmark::CSV; 6 | use PDL::Lite; 7 | use PDL::NiceSlice; 8 | use PDL::IO::Misc; 9 | use PDL::IO::CSV ':all'; 10 | use PDL::Stats::Basic; 11 | use Time::HiRes qw(time); 12 | use Inline C => 'DATA'; 13 | use Inline 14 | ASM => 'DATA', 15 | AS => 'nasm', 16 | ASFLAGS => '-f elf64', 17 | PROTO => { 18 | sum_array => 'double(char *,size_t)', 19 | sum_array_blank => 'double(char *,size_t)', 20 | sum_array_doubles => 'double(char *,size_t)', 21 | sum_array_doubles_AVX_unaligned => 'double(char *,size_t)', 22 | 23 | }; 24 | 25 | my $benchmark = Benchmark::CSV->new( 26 | output => './addArrayofIntegers.csv', 27 | sample_size => 1, 28 | ); 29 | 30 | my $num_elements = 1_000_003; 31 | ## Create an array of $num_elements random integers, between -100, 100 32 | my @array = map { int( rand(200) ) - 100 } 1 .. $num_elements; 33 | 34 | my $array_byte_ASM = pack "c*", @array; 35 | my $array_double_ASM = pack "d*", @array; 36 | 37 | my $ndarray = pdl( \@array ); 38 | 39 | 40 | $benchmark->add_instance( 41 | 'ASM_wo_alloc' => sub { 42 | sum_array( $array_byte_ASM, scalar @array ); 43 | }, 44 | ); 45 | $benchmark->add_instance( 46 | 'ASM_doubles_wo_alloc' => sub { 47 | sum_array_doubles( $array_double_ASM, scalar @array ); 48 | }, 49 | ); 50 | $benchmark->add_instance( 51 | 'ASM_blank' => sub { 52 | sum_array_blank( $array_double_ASM, scalar @array ); 53 | }, 54 | ); 55 | $benchmark->add_instance( 56 | 'ASM_w_alloc' => sub { 57 | my $array = pack "d*", @array; 58 | sum_array( $array, scalar @array ); 59 | }, 60 | ); 61 | $benchmark->add_instance( 62 | 'ASM_doubles_w_alloc' => sub { 63 | my $array = pack "d*", @array; 64 | sum_array_doubles( $array, scalar @array ); 65 | }, 66 | ); 67 | $benchmark->add_instance( 68 | 'ASM_doubles_AVX_w_alloc' => sub { 69 | my $array = pack "d*", @array; 70 | sum_array_doubles_AVX_unaligned( $array, scalar @array ); 71 | }, 72 | ); 73 | $benchmark->add_instance( 74 | 'ASM_doubles_AVX_wo_alloc' => sub { 75 | sum_array_doubles_AVX_unaligned( $array_double_ASM, scalar @array ); 76 | }, 77 | ); 78 | $benchmark->add_instance( 79 | 'C_doubles_w_alloc' => sub { 80 | my $array_double_ASM = pack "d*", @array; 81 | sum_array_C( $array_double_ASM, scalar @array ); 82 | }, 83 | ); 84 | $benchmark->add_instance( 'C_doubles_wo_alloc' => 85 | sub { sum_array_C( $array_double_ASM, scalar @array ) }, ); 86 | $benchmark->add_instance( 'ListUtil' => sub { sum(@array) }, ); 87 | $benchmark->add_instance( 'PDL_wo_alloc' => sub { $ndarray->sum }, ); 88 | $benchmark->add_instance( 'PDL_w_alloc' => sub { pdl( \@array )->sum }, ); 89 | $benchmark->add_instance( 90 | 'ForLoop' => sub { 91 | my $sum = 0; 92 | foreach my $i (@array) { 93 | $sum += $i; 94 | } 95 | }, 96 | ); 97 | 98 | $benchmark->run_iterations(100); 99 | 100 | # Load the CSV file 101 | 102 | my @data = rcsv1D( 'addArrayofIntegers.csv', { text2bad => 1, header => 1 } ); 103 | 104 | my %summary_stats = (); 105 | 106 | foreach my $col ( 0 .. $#data ) { 107 | my $pdl = pdl( $data[$col] ); 108 | my $mean = $pdl->average; 109 | my $stddev = $pdl->stdv_unbiased; 110 | my $median = $pdl->median; 111 | $summary_stats{ $data[$col]->hdr->{col_name} } = 112 | { mean => $mean, stddev => $stddev, median => $median }; 113 | } 114 | 115 | # Get the column names from the first row 116 | my @column_names = sort keys %{ $summary_stats{ ( keys %summary_stats )[0] } }; 117 | 118 | # Define the width for each column 119 | my $width_name = 24; 120 | my $width_col = 10; 121 | 122 | # Print the column names 123 | printf "%-${width_name}s", ''; 124 | printf "%${width_col}s", $_ for @column_names; 125 | print "\n"; 126 | 127 | # Print each row 128 | foreach my $row_name ( sort keys %summary_stats ) { 129 | printf "%-${width_name}s", $row_name; 130 | printf "%${width_col}.1e", $summary_stats{$row_name}{$_} for @column_names; 131 | print "\n"; 132 | } 133 | 134 | unlink 'addArrayofIntegers.csv'; 135 | ## load the CSV file and print a summary of the results using PDL 136 | 137 | __DATA__ 138 | __C__ 139 | 140 | double sum_array_C(char *array_in, size_t length) { 141 | double sum = 0.0; 142 | double * array = (double *) array_in; 143 | for (size_t i = 0; i < length; i++) { 144 | sum += array[i]; 145 | } 146 | return sum; 147 | } 148 | __ASM__ 149 | NSE equ 4 ; number of SIMD double elements per iteration 150 | DOUBLE equ 8 ; number of bytes per double 151 | 152 | ; Use RIP-relative memory addressing 153 | default rel 154 | 155 | ; Mark stack as non-executable for Binutils 2.39+ 156 | section .note.GNU-stack noalloc noexec nowrite progbits 157 | 158 | SECTION .text 159 | 160 | global sum_array 161 | sum_array: 162 | ; Initialize xmm0 to 0 (this will hold our sum) 163 | xorpd xmm0, xmm0 164 | 165 | ; Loop over each element of the array 166 | .loop: 167 | ; Check if we've processed all elements 168 | test rsi, rsi 169 | jz .end 170 | 171 | ; Load the current element into eax (as an 8-bit integer) 172 | movsx eax, byte [rdi] 173 | 174 | ; Convert the integer in eax to a double in xmm1 175 | cvtsi2sd xmm1, eax 176 | 177 | ; Add the value in xmm1 to our running total in xmm0 178 | addsd xmm0, xmm1 179 | 180 | ; Move to the next element 181 | add rdi, 1 182 | 183 | ; Decrement our counter 184 | dec rsi 185 | 186 | jmp .loop 187 | .end: 188 | ret 189 | 190 | global sum_array_doubles 191 | sum_array_doubles: ; based on Kusswurm listing 5-7c 192 | ; Initialize 193 | vxorpd xmm0, xmm0, xmm0 ; sum = 0.0 194 | sub rdi, 8 ; rdi = &array[-1] 195 | 196 | Loop1: 197 | add rdi, DOUBLE 198 | vaddsd xmm0, xmm0, qword [rdi] 199 | sub rsi, 1 200 | jnz Loop1 201 | ret 202 | 203 | 204 | global sum_array_doubles_AVX_unaligned 205 | sum_array_doubles_AVX_unaligned: ; based on Kusswurm listing 9-4d 206 | vxorpd ymm0, ymm0, ymm0 ; sum = 0.0 207 | 208 | ; i = 0 in the comments of this block 209 | lea r10,[rdi - DOUBLE] ; r10 = &array[i-1] 210 | cmp rsi, NSE ; check if we have at least NSE elements 211 | jb Remainder_AVX ; if not, jump to remainder 212 | lea r10, [rdi-NSE * DOUBLE] ; r10 = &array[i-NSE] 213 | 214 | 215 | Loop1_AVX: 216 | add r10, DOUBLE * NSE ; r10 = &array[i] 217 | vaddpd ymm0, ymm0, [r10] ; sum += array[i] 218 | sub rsi, NSE ; decrement the counter 219 | cmp rsi, NSE ; check if we have at least NSE elements 220 | jae Loop1_AVX ; if so, loop again 221 | 222 | ; Reduce packed sum using SIMD addition 223 | vextractf128 xmm1, ymm0, 1 ; extract the high 128 bits 224 | vaddpd xmm2, xmm1, xmm0 ; sum += high 128 bits 225 | vhaddpd xmm0, xmm2, xmm2 ; sum += low 128 bits 226 | test rsi, rsi ; check if we have any elements left 227 | jz End_AVX ; if not, jump to the end 228 | 229 | add r10, DOUBLE * NSE - DOUBLE ; r10 = &array[i-1] 230 | 231 | 232 | ; Handle the remaining elements 233 | Remainder_AVX: 234 | add r10, DOUBLE 235 | vaddsd xmm0, xmm0, qword [r10] 236 | sub rsi, 1 237 | jnz Remainder_AVX 238 | 239 | End_AVX: 240 | ;vmovsd xmm0, xmm5 241 | ret 242 | 243 | global sum_array_blank 244 | sum_array_blank: 245 | ; Initialize sum to 0 246 | vxorpd xmm0, xmm0, xmm0 247 | ret ; send a zero back 248 | -------------------------------------------------------------------------------- /addArrayofIntegers_C.pl: -------------------------------------------------------------------------------- 1 | #!/home/chrisarg/perl5/perlbrew/perls/current/bin/perl 2 | use v5.36; 3 | 4 | use List::Util qw(sum); 5 | use Benchmark::CSV; 6 | use PDL::Lite; 7 | use PDL::NiceSlice; 8 | use PDL::IO::Misc; 9 | use PDL::IO::CSV ':all'; 10 | use PDL::Stats::Basic; 11 | use Time::HiRes qw(time); 12 | use OpenMP::Environment; 13 | use Inline ( 14 | C => 'DATA', 15 | ccflagsex => q{-fopenmp}, 16 | lddlflags => join( q{ }, $Config::Config{lddlflags}, q{-fopenmp} ), 17 | myextlib => '' 18 | ); 19 | 20 | my $openmp_env = OpenMP::Environment->new; 21 | $openmp_env->omp_num_threads(16); 22 | 23 | my $benchmark = Benchmark::CSV->new( 24 | output => './addArrayofIntegers.csv', 25 | sample_size => 1, 26 | ); 27 | 28 | my $num_elements = 1_000_003; 29 | 30 | ## Create an array of $num_elements random integers, between -100, 100 31 | my @array = map { int( rand(200) ) - 100 } 1 .. $num_elements; 32 | my $array_double_ASM = pack "d*", @array; 33 | 34 | 35 | say "Starting benchmark"; 36 | $benchmark->add_instance( 37 | 'C_SIMD_wo_alloc' => sub { 38 | sum_array_SIMD_C( $array_double_ASM, scalar @array ); 39 | }, 40 | ); 41 | $benchmark->add_instance( 42 | 'C_SIMD_w_alloc' => sub { 43 | my $array_double_ASM = pack "d*", @array; 44 | sum_array_SIMD_C( $array_double_ASM, scalar @array ); 45 | }, 46 | ); 47 | $benchmark->add_instance( 48 | 'C_SIMD_OMP_wo_alloc' => sub { 49 | sum_array_SIMD_OMP_C( $array_double_ASM, scalar @array ); 50 | }, 51 | ); 52 | $benchmark->add_instance( 53 | 'C_SIMD_OMP_w_alloc' => sub { 54 | my $array_double_ASM = pack "d*", @array; 55 | sum_array_SIMD_OMP_C( $array_double_ASM, scalar @array ); 56 | }, 57 | ); 58 | 59 | $benchmark->add_instance( 60 | 'C_OMP_wo_alloc' => sub { 61 | sum_array_OMP_C( $array_double_ASM, scalar @array ); 62 | }, 63 | ); 64 | $benchmark->add_instance( 65 | 'C_OMP_w_alloc' => sub { 66 | my $array_double_ASM = pack "d*", @array; 67 | sum_array_OMP_C( $array_double_ASM, scalar @array ); 68 | }, 69 | ); 70 | 71 | $benchmark->run_iterations(1000); 72 | 73 | # Load the CSV file 74 | 75 | my @data = rcsv1D( 'addArrayofIntegers.csv', { text2bad => 1, header => 1 } ); 76 | 77 | my %summary_stats = (); 78 | 79 | foreach my $col ( 0 .. $#data ) { 80 | my $pdl = pdl( $data[$col] ); 81 | my $mean = $pdl->average; 82 | my $stddev = $pdl->stdv_unbiased; 83 | my $median = $pdl->median; 84 | $summary_stats{ $data[$col]->hdr->{col_name} } = 85 | { mean => $mean, stddev => $stddev, median => $median }; 86 | } 87 | 88 | # Get the column names from the first row 89 | my @column_names = sort keys %{ $summary_stats{ ( keys %summary_stats )[0] } }; 90 | 91 | # Define the width for each column 92 | my $width_name = 24; 93 | my $width_col = 10; 94 | 95 | # Print the column names 96 | printf "%-${width_name}s", ''; 97 | printf "%${width_col}s", $_ for @column_names; 98 | print "\n"; 99 | 100 | # Print each row 101 | foreach my $row_name ( sort keys %summary_stats ) { 102 | printf "%-${width_name}s", $row_name; 103 | printf "%${width_col}.1e", $summary_stats{$row_name}{$_} for @column_names; 104 | print "\n"; 105 | } 106 | 107 | unlink 'addArrayofIntegers.csv'; 108 | ## load the CSV file and print a summary of the results using PDL 109 | 110 | __DATA__ 111 | __C__ 112 | #include 113 | 114 | 115 | 116 | 117 | void _ENV_set_num_threads() { 118 | char *num; 119 | num = getenv("OMP_NUM_THREADS"); 120 | omp_set_num_threads(atoi(num)); 121 | } 122 | 123 | 124 | double sum_array_SIMD_C(char *array_in, size_t length) { 125 | double sum = 0.0; 126 | double * array = (double *) array_in; 127 | #pragma omp simd reduction(+:sum) 128 | for (size_t i = 0; i < length; i++) { 129 | sum += array[i]; 130 | } 131 | return sum; 132 | } 133 | 134 | double sum_array_SIMD_OMP_C(char *array_in, size_t length) { 135 | double sum = 0.0; 136 | double * array = (double *) array_in; 137 | _ENV_set_num_threads(); 138 | #pragma omp parallel for simd reduction(+:sum) schedule(static,8) 139 | for (size_t i = 0; i < length; i++) { 140 | sum += array[i]; 141 | } 142 | return sum; 143 | } 144 | 145 | double sum_array_OMP_C(char *array_in, size_t length) { 146 | double sum = 0.0; 147 | double * array = (double *) array_in; 148 | _ENV_set_num_threads(); 149 | #pragma omp parallel for reduction(+:sum) schedule(static,8) 150 | for (size_t i = 0; i < length; i++) { 151 | sum += array[i]; 152 | } 153 | return sum; 154 | } 155 | -------------------------------------------------------------------------------- /addIntegers.pl: -------------------------------------------------------------------------------- 1 | #!/home/chrisarg/perl5/perlbrew/perls/current/bin/perl 2 | use strict; 3 | use warnings; 4 | use v5.36; 5 | use Inline 6 | ASM => 'DATA', 7 | AS => 'nasm', 8 | ASFLAGS => '-f elf64', 9 | PROTO => { 10 | add => 'I16(I16,I16)', 11 | add8 => 'I16(I8,I8)', 12 | }; 13 | 14 | print "9 + 16 = ", add( 9, 16 ), "\n"; 15 | print "9 + 16 = ", add8( 9, 16 ), "\n"; 16 | 17 | my @val = ( 1, 2, 3, 4, 5 ); 18 | my $s = pack( 'C*', @val ); 19 | say length($s); 20 | __DATA__ 21 | __ASM__ 22 | ; Use RIP-relative memory addressing 23 | default rel 24 | 25 | ; Mark stack as non-executable for Binutils 2.39+ 26 | section .note.GNU-stack noalloc noexec nowrite progbits 27 | 28 | SECTION .text 29 | 30 | global add 31 | add: 32 | add edi, esi 33 | mov eax, edi 34 | ret 35 | 36 | global add8 37 | add8: 38 | add dil, sil 39 | movzx eax, dil 40 | ret 41 | -------------------------------------------------------------------------------- /analyze_ListUtil_OMP.R: -------------------------------------------------------------------------------- 1 | library(data.table) 2 | library(ggplot2) 3 | library(viridis) 4 | 5 | rm(list=ls()) 6 | data <- melt(rbindlist(lapply(list.files(pattern = "ListUtil_OMP_.*\\.csv"), function(file) { 7 | size <- as.integer(gsub("ListUtil_OMP_([[:digit:]]+).csv", "\\1", file)) 8 | dt <- fread(file) 9 | dt[, Size := size] 10 | })), id.vars = "Size") 11 | 12 | setnames(data, c("variable", "value"), c("variable", "Time")) 13 | 14 | ## split the value of the Function column, using the "_" to separate the new columns 15 | data[, c("Code", "Function", "space", "Nthreads") := tstrsplit(variable, "_", fixed = TRUE)] 16 | data$Size <- factor(data$Size) 17 | data[Code == "OMP", Code := paste("OMP", Nthreads, sep = "_")] 18 | data$Code <- factor(data$Code, levels = c("ForLoop", "ListUtil", "StC", paste( 19 | "OMP", c("01", "02", "03", "04", "05", "06", "07", "08"), sep = "_" 20 | ))) 21 | 22 | ggplot(data, aes(x = Code, y = Time)) + geom_boxplot() + 23 | scale_y_log10(breaks = 10 ^ (-6:-1)) + facet_grid(Size ~ Function) + theme_bw() + 24 | ylab("Time (sec)") + xlab("Code") + coord_flip() 25 | ggsave( 26 | "ListUtil_OMP.png", 27 | width = 6, 28 | height = 10, 29 | units = "in", 30 | dpi = 600 31 | ) 32 | 33 | ggplot(data[is.element(Size, c("100", "10000", "1000000")), ], aes(x = Code, y = Time)) + geom_boxplot() + 34 | scale_y_log10(breaks = 10 ^ (-6:-1)) + facet_grid(Size ~ Function) + theme_bw() + 35 | ylab("Time (sec)") + xlab("Code") + coord_flip() 36 | ggsave( 37 | "ListUtil_OMP_limited.png", 38 | width = 6, 39 | height = 8, 40 | units = "in", 41 | dpi = 600 42 | ) 43 | 44 | 45 | 46 | ggplot(data[is.element(Size, c("100", "10000", "1000000")), ], aes(x = Code, y = Time, color = 47 | Size)) + geom_boxplot() + 48 | scale_y_log10(breaks = 10 ^ (-6:-1)) + facet_grid(Function ~ .) + theme_bw() + 49 | ylab("Time (sec)") + xlab("Code") + scale_color_viridis(discrete = TRUE) 50 | ggsave( 51 | "ListUtil_OMP_limited_color.png", 52 | width = 10, 53 | height = 6, 54 | units = "in", 55 | dpi = 600 56 | ) 57 | ## scale the time for all the data to that of the ForLoop with the same Size 58 | data_scale <- copy(data) 59 | data_scale <- data_scale[, Time := Time / Time[Code == "ForLoop"], by = .(Size, Function)] 60 | 61 | ggplot(data_scale[is.element(Size, c("100", "10000", "1000000")) & 62 | Code != "ForLoop", ], aes(x = Code, y = Time, color = Size)) + geom_boxplot() + 63 | scale_y_log10() + facet_grid(Function ~ .) + theme_bw() + 64 | ylab("Timing Ratio (vs ForLoop of the same size)") + xlab("Code") + scale_color_viridis(discrete = TRUE) 65 | ggsave( 66 | "ListUtil_OMP_ratio_limited_color.png", 67 | width = 10, 68 | height = 6, 69 | units = "in", 70 | dpi = 600 71 | ) 72 | 73 | 74 | ## scale the data to the Time with the same Code at Size = 100 75 | data_scale_size <- copy(data) 76 | data_scale_size <- data_scale_size[, Time := Time / Time[Size == "100" ], by = .(Function, Code)] 77 | ggplot(data_scale_size[is.element(Size, c( "10000", "1000000")) , ], aes(x = Code, y = Time, color = Size)) + geom_boxplot() + 78 | scale_y_log10() + facet_grid(Function ~ .) + theme_bw() + 79 | ylab("Timing Ratio (vs Code of size = 100)") + xlab("Code") + scale_color_viridis(discrete = TRUE) 80 | -------------------------------------------------------------------------------- /i7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chrisarg/perlAssembly/9b41a989d4cef8bafa3279afdbc4c06e21d76cd2/i7.png --------------------------------------------------------------------------------