From ae1e7353f189f6acb7a7ea57170a3d0210498065 Mon Sep 17 00:00:00 2001 From: clac <clac16@inf.ufpr.br> Date: Thu, 13 Feb 2025 23:58:51 -0300 Subject: [PATCH] Altera scripts e arquivos .csv --- resultados/calcula-media-aritmetica.py | 73 ------------------ resultados/media-aritmetica-resultados.csv | 64 +++++++-------- resultados/media-aritmetica-resultados.ods | Bin 34305 -> 28380 bytes resultados/resultados-1.csv | 32 ++++++++ resultados/resultados-1.txt | 31 -------- resultados/resultados-2.csv | 32 ++++++++ resultados/resultados-2.txt | 31 -------- resultados/resultados-3.csv | 32 ++++++++ resultados/resultados-3.txt | 31 -------- resultados/resultados-4.csv | 32 ++++++++ resultados/resultados-4.txt | 31 -------- resultados/resultados-5.csv | 32 ++++++++ resultados/resultados-5.txt | 31 -------- resultados/resultados-6.csv | 32 ++++++++ resultados/resultados-6.txt | 31 -------- resultados/resultados-7.csv | 32 ++++++++ resultados/resultados-7.txt | 31 -------- resultados/resultados-8.csv | 32 ++++++++ resultados/resultados-8.txt | 31 -------- resultados/scrips/calcula-media-aritmetica.py | 57 ++++++++++++++ .../calcula-media-geometrica-resumida.py | 6 +- scripts/executa-benchmarks.sh | 18 +++-- 22 files changed, 362 insertions(+), 360 deletions(-) delete mode 100644 resultados/calcula-media-aritmetica.py create mode 100644 resultados/resultados-1.csv delete mode 100644 resultados/resultados-1.txt create mode 100644 resultados/resultados-2.csv delete mode 100644 resultados/resultados-2.txt create mode 100644 resultados/resultados-3.csv delete mode 100644 resultados/resultados-3.txt create mode 100644 resultados/resultados-4.csv delete mode 100644 resultados/resultados-4.txt create mode 100644 resultados/resultados-5.csv delete mode 100644 resultados/resultados-5.txt create mode 100644 resultados/resultados-6.csv delete mode 100644 resultados/resultados-6.txt create mode 100644 resultados/resultados-7.csv delete mode 100644 resultados/resultados-7.txt create mode 100644 resultados/resultados-8.csv delete mode 100644 resultados/resultados-8.txt create mode 100644 resultados/scrips/calcula-media-aritmetica.py rename resultados/{ => scrips}/calcula-media-geometrica-resumida.py (93%) mode change 100755 => 100644 scripts/executa-benchmarks.sh diff --git a/resultados/calcula-media-aritmetica.py b/resultados/calcula-media-aritmetica.py deleted file mode 100644 index 227abb0..0000000 --- a/resultados/calcula-media-aritmetica.py +++ /dev/null @@ -1,73 +0,0 @@ -import csv -import numpy as np - -# Function to process the files and calculate the mean for each field -def compute_means(file_pattern, num_files): - # Create a list to store the data from each file - data = [] - - # Read each file and parse its content - for i in range(1, num_files + 1): - file_name = file_pattern.format(i) - with open(file_name, newline='', encoding='utf-8') as f: - reader = csv.reader(f, delimiter=',') - file_data = [] - - for row in reader: - # Strip leading/trailing spaces from each field and convert to float - cleaned_row = [field.strip() for field in row] - file_data.append(cleaned_row) - - data.append(file_data) - - # Assuming the structure is consistent across all files, i.e., same rows and columns - num_rows = len(data[0]) # Number of rows - num_columns = len(data[0][0]) # Number of columns (excluding the identifier) - - # We need to store the means for each field (row, column) - means = [] - - # Iterate over each row and each column (excluding the first column, which is the identifier) - for row_index in range(num_rows): - row_means = [] - - for col_index in range(1, num_columns): # Starting from 1 to exclude the first column - values = [] - for file_data in data: - # Extract the value from the current row and column (skip the identifier) - value = file_data[row_index][col_index] - try: - values.append(float(value)) - except ValueError: - values.append(np.nan) # Handle any non-numeric values (e.g., NaN or missing data) - - # Calculate the mean for the current field (ignoring NaN values) - mean_value = np.nanmean(values) - row_means.append(mean_value) - - means.append(row_means) - - return means - -# Function to save the computed means to a new CSV file -def save_means_to_file(means, file_name="media-aritmetica-resultados.csv"): - with open(file_name, 'w', newline='', encoding='utf-8') as f: - writer = csv.writer(f) - - # Assuming we have the same rows and columns as the original files, - # write the means to a new file. - for row in means: - writer.writerow(row) - -# Main function to execute the program -if __name__ == "__main__": - file_pattern = "resultados-{}.txt" - num_files = 8 - - # Step 1: Compute the means - means = compute_means(file_pattern, num_files) - - # Step 2: Save the results to a CSV file - save_means_to_file(means, "media-aritmetica-resultados.csv") - - print("Mean values have been computed and saved to 'media-aritmetica-resultados.csv'.") diff --git a/resultados/media-aritmetica-resultados.csv b/resultados/media-aritmetica-resultados.csv index efdc50f..beca2c3 100644 --- a/resultados/media-aritmetica-resultados.csv +++ b/resultados/media-aritmetica-resultados.csv @@ -1,31 +1,33 @@ -54.0575865,80.269402875,65.29348075,41.984116125,17.492292374999998,68.967586625,26.073479499999998,79.531276875,55.229268250000004,73.5807325,943.512319125,13.3442785,36.0202375,69.141846375,105.53603237499999,97.289959625,29.046996375,84.2533 -54.535483875,80.30704600000001,65.184893375,36.9962695,17.451967,68.387720375,24.0729805,75.08912325,55.222643250000004,72.725264875,119.78372825,12.882898874999999,36.415440375,64.713094375,106.71398450000001,98.4140175,27.812697625,47.657726499999995 -56.419839875,80.48792125,65.018643125,36.603948,17.131321375,68.50713837500001,18.953525749999997,74.631956375,55.18948825,70.45099937500001,113.695025625,12.992983500000001,36.471948874999995,65.19245950000001,106.04635687499999,97.260926625,27.759517875,47.837911999999996 -53.696982500000004,80.80059125000001,65.31779475,35.841965875,17.26776,68.63110412500001,15.428213375,75.00076575,55.202157875,72.066719875,116.613697875,12.592605500000001,36.641510874999994,64.21245525,104.74575225000001,97.26143575,32.034340375,85.046417875 -55.3778855,81.068910625,65.30921562500001,32.782573125,7.537032375,68.42837,15.311445625000001,70.603765375,74.89530562499999,67.100786125,284.3608545,12.801912249999999,36.93483125,63.998846875,98.49818425000001,97.324552125,31.9737605,42.642759999999996 -53.86609575,80.686112125,65.43100675,34.860663625,17.4389905,68.524170125,15.533133124999999,79.242802875,55.1076085,73.345900625,323.01339699999994,14.226176625,37.172854,65.482077875,104.13633175,97.286928875,32.169093875,85.13343425 -54.420659625,80.623083875,65.36021675,36.56552725,16.860769375000004,68.41668525,15.170219625,74.15504974999999,52.98827,71.15762824999999,103.275402125,12.557514375,36.711581875,64.96624887499999,105.44645550000001,97.29615025000001,33.28650575,51.74530675 -54.408401625,80.684225875,66.14554625,40.139319,12.748899125000001,68.60355412499999,24.8776775,79.31791425,55.103305375000005,73.629980375,935.1917311249999,13.475893124999999,37.195795499999996,61.543413125,105.99623062500001,97.671061375,28.737475500000002,87.595763625 -55.601819250000005,80.31059862499998,66.21938700000001,36.909119000000004,13.677337125000001,68.65473237500001,26.02367075,73.72456075000001,55.114595875000006,73.96311825,120.178963375,12.659228124999998,36.274797125,61.772251874999995,105.842445125,97.635069125,27.305870624999997,47.69024375000001 -54.59898375,80.26533412500001,66.28050075,36.944706375,12.413997124999998,68.49958537500001,22.860390125000002,73.982573375,55.091922249999996,71.39176025,109.784214375,12.873761,36.711210124999994,62.07518675,105.53036449999999,97.638687875,27.288487125,47.701918250000006 -54.682385374999996,80.50213475,66.38396675000001,34.60209987500001,13.820328374999999,68.586844875,15.808045625000002,75.658513875,52.152182625,72.82833624999999,105.470980125,12.62895175,36.630450499999995,61.8368885,104.78545837499999,97.671219625,32.186434875,84.96141287500001 -55.5253745,80.77220025,66.119946125,36.006670375,8.857771249999999,68.04749187499999,16.488607125,69.70971725,73.32275625,67.770182375,258.478490625,12.292683625,36.148844749999995,61.653099125000004,101.919389375,98.53985599999999,32.255855875,42.383792375 -55.083313875,81.70413587499999,66.277011125,34.842391750000004,13.799460625,68.45249662500001,15.844996875,79.290652625,52.139705125,72.79204100000001,372.36559712499997,13.19009,37.195570000000004,62.179384125,104.07697487499999,97.64651975000001,32.039807875,84.936503 -54.533464249999994,80.65052112500001,66.26576212500001,34.965851625,13.569634625,68.175222625,16.198060374999997,73.9341745,52.15530575,71.210808875,103.956588375,12.716342000000001,36.439132,62.08235775,106.1487015,97.64464625,33.38457700000001,50.46225375 -57.3295415,80.1631415,73.7718155,36.028619875000004,12.0411215,68.42527175,23.5616055,86.981322,60.922813624999996,67.23815425000001,532.426389125,13.372001125,33.682726125,73.171719,103.4557425,97.520157625,46.73670125,80.37153562499999 -54.579467875000006,81.39678462500001,69.67910487500001,35.474751125,12.109987749999998,68.548533375,22.617232875,82.847804,60.885882124999995,57.021607375,201.909432875,13.288126375,33.71121599999999,59.3861415,95.931493875,98.00415724999999,49.97707525,83.84897575 -54.40058425,81.882952625,64.80604650000001,35.040052,8.885011,68.319228375,24.572967375,79.53407974999999,60.961679625,56.884825750000005,91.21050762499999,13.204973875,33.542271875,57.413765125,87.185493125,97.4925815,47.966589,84.69887399999999 -53.221504,80.03849225,69.38679475,35.487873375,8.940487625,68.183290375,19.013646,74.70955375,60.906544,56.70610275,361.353566625,12.640282875,33.634826624999995,58.4668365,94.79009625,97.760524875,50.3018125,82.52584625 -54.105290625,80.20937574999999,62.791747125,35.127335,8.87422625,68.541043375,20.704590625,74.01913987500001,61.040328625,56.877397,361.288106,12.701408,33.60241125,57.888290624999996,85.176164375,97.49378825,48.407930125,58.283103625 -53.413474625,80.39481525,64.099337375,34.265876125000005,9.017613749999999,68.33021500000001,14.93630225,75.04605187499999,56.549231500000005,56.619073625,319.27826200000004,12.3161955,33.570815875,57.038627125000005,84.397733625,97.480839,47.949529375000004,58.28474225 -53.557711999999995,81.4960635,64.189020625,33.367515125000004,5.355178625,69.129807375,15.511537875,69.1038925,59.586580874999996,31.88062925,280.93333662500004,4.08873075,33.478429875,45.828518,78.196163625,97.24119099999999,43.689170375,41.975445 -53.680088125,80.27508325,63.902898750000006,33.94937725,8.880813625,68.449409,14.880102875,79.189519375,56.599762625,56.45280687499999,171.36080325,12.90638675,33.93415075,58.924518250000006,83.7220535,97.49274187500001,48.105183375,59.94294775 -54.09256525,80.5955855,64.5757205,34.017207875,9.232557624999998,68.54190887499999,14.888251625,76.8124885,56.568837125,56.950878625,1022.554685625,12.560817875,33.386580124999995,56.592043000000004,85.3055815,97.740021375,47.906887624999996,82.496808625 -54.439522375,79.83218225,62.607384874999994,36.070982125,9.176462625,68.747399,14.671020500000001,77.20048875,58.07718425,56.29045,722.4658986249999,12.520714875,33.427921375,56.97212725,83.407227625,97.515211375,47.290403875,82.4326875 -56.6028205,80.71442837499998,65.34778,41.432836875,14.027513625000001,69.11013775,21.761735375,82.497765125,52.05476175,73.73119324999999,724.073896,14.66997025,26.988823500000002,63.740027500000004,83.70100649999999,97.7009065,47.624863749999996,55.89577800000001 -56.34846725,81.229151125,56.72894875,41.638092125,10.894515375000001,68.28970375,17.7506155,73.40909925,49.04184025000001,68.98283975000001,85.208261,14.016098625,27.103762500000002,72.449911375,80.971886375,97.658076125,49.6089975,60.374067499999995 -54.6214585,81.184737375,64.84900475,34.80920975,5.258229625,67.92835662499999,13.291763,67.38596824999999,67.075495125,28.593608125,58.55307775,0.413734375,26.732371,60.810555625,46.0085045,98.513446125,29.3478605,43.3892415 -53.097521125,81.15931837500001,55.543291249999996,35.691221375,13.620295125,68.58095087500001,12.026318,74.0554215,48.99252975,67.97031725,243.69112625,14.205103124999999,26.874172125,71.6643145,75.109126,97.6907275,43.91252575,49.91537175 -54.195513625000004,80.812483375,55.884344375000005,35.731520625,10.872942,68.05976562500001,17.545721125,72.9063755,49.005384875,69.419065375,84.39141337500001,14.000012250000001,26.445344125000002,71.89201975,79.646403875,97.65392725,19.38606,60.130503625 -53.408662375000006,81.20175675,64.50118375,35.136647374999995,13.6758115,67.985451,12.040985374999998,72.98895875,49.004785375,69.579773,58.87350525,13.777832125,26.254206375000003,72.228684875,60.089526375,100.625049875,23.831408875,50.178052125 -54.331747625000006,81.791669625,64.41886862499999,35.373409875,13.631527875,67.961009875,12.065621499999999,74.28341337500001,49.011679625,68.3285305,58.3110195,14.076113625,26.516636125,72.16414725000001,59.48092725,97.6675935,23.520407,50.2770445 +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +CompiladorFlags,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan +aocc -O1,54.0575865,80.269402875,65.29348075,41.984116125,17.492292374999998,68.967586625,26.073479499999998,79.531276875,55.229268250000004,73.5807325,943.512319125,13.3442785,36.0202375,69.141846375,105.53603237499999,97.289959625,29.046996375,84.2533 +aocc -O2,54.535483875,80.30704600000001,65.184893375,36.9962695,17.451967,68.387720375,24.0729805,75.08912325,55.222643250000004,72.725264875,119.78372825,12.882898874999999,36.415440375,64.713094375,106.71398450000001,98.4140175,27.812697625,47.657726499999995 +aocc -O3,56.419839875,80.48792125,65.018643125,36.603948,17.131321375,68.50713837500001,18.953525749999997,74.631956375,55.18948825,70.45099937500001,113.695025625,12.992983500000001,36.471948874999995,65.19245950000001,106.04635687499999,97.260926625,27.759517875,47.837911999999996 +aocc -O3 -march=native,53.696982500000004,80.80059125000001,65.31779475,35.841965875,17.26776,68.63110412500001,15.428213375,75.00076575,55.202157875,72.066719875,116.613697875,12.592605500000001,36.641510874999994,64.21245525,104.74575225000001,97.26143575,32.034340375,85.046417875 +aocc -O3 -march=native -ffast-math,55.3778855,81.068910625,65.30921562500001,32.782573125,7.537032375,68.42837,15.311445625000001,70.603765375,74.89530562499999,67.100786125,284.3608545,12.801912249999999,36.93483125,63.998846875,98.49818425000001,97.324552125,31.9737605,42.642759999999996 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,53.86609575,80.686112125,65.43100675,34.860663625,17.4389905,68.524170125,15.533133124999999,79.242802875,55.1076085,73.345900625,323.01339699999994,14.226176625,37.172854,65.482077875,104.13633175,97.286928875,32.169093875,85.13343425 +aocc -O3 -mfma,54.420659625,80.623083875,65.36021675,36.56552725,16.860769375000004,68.41668525,15.170219625,74.15504974999999,52.98827,71.15762824999999,103.275402125,12.557514375,36.711581875,64.96624887499999,105.44645550000001,97.29615025000001,33.28650575,51.74530675 +clang -O1,54.408401625,80.684225875,66.14554625,40.139319,12.748899125000001,68.60355412499999,24.8776775,79.31791425,55.103305375000005,73.629980375,935.1917311249999,13.475893124999999,37.195795499999996,61.543413125,105.99623062500001,97.671061375,28.737475500000002,87.595763625 +clang -O2,55.601819250000005,80.31059862499998,66.21938700000001,36.909119000000004,13.677337125000001,68.65473237500001,26.02367075,73.72456075000001,55.114595875000006,73.96311825,120.178963375,12.659228124999998,36.274797125,61.772251874999995,105.842445125,97.635069125,27.305870624999997,47.69024375000001 +clang -O3,54.59898375,80.26533412500001,66.28050075,36.944706375,12.413997124999998,68.49958537500001,22.860390125000002,73.982573375,55.091922249999996,71.39176025,109.784214375,12.873761,36.711210124999994,62.07518675,105.53036449999999,97.638687875,27.288487125,47.701918250000006 +clang -O3 -march=native,54.682385374999996,80.50213475,66.38396675000001,34.60209987500001,13.820328374999999,68.586844875,15.808045625000002,75.658513875,52.152182625,72.82833624999999,105.470980125,12.62895175,36.630450499999995,61.8368885,104.78545837499999,97.671219625,32.186434875,84.96141287500001 +clang -O3 -march=native -ffast-math,55.5253745,80.77220025,66.119946125,36.006670375,8.857771249999999,68.04749187499999,16.488607125,69.70971725,73.32275625,67.770182375,258.478490625,12.292683625,36.148844749999995,61.653099125000004,101.919389375,98.53985599999999,32.255855875,42.383792375 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,55.083313875,81.70413587499999,66.277011125,34.842391750000004,13.799460625,68.45249662500001,15.844996875,79.290652625,52.139705125,72.79204100000001,372.36559712499997,13.19009,37.195570000000004,62.179384125,104.07697487499999,97.64651975000001,32.039807875,84.936503 +clang -O3 -mfma,54.533464249999994,80.65052112500001,66.26576212500001,34.965851625,13.569634625,68.175222625,16.198060374999997,73.9341745,52.15530575,71.210808875,103.956588375,12.716342000000001,36.439132,62.08235775,106.1487015,97.64464625,33.38457700000001,50.46225375 +gcc -O1,57.3295415,80.1631415,73.7718155,36.028619875000004,12.0411215,68.42527175,23.5616055,86.981322,60.922813624999996,67.23815425000001,532.426389125,13.372001125,33.682726125,73.171719,103.4557425,97.520157625,46.73670125,80.37153562499999 +gcc -O2,54.579467875000006,81.39678462500001,69.67910487500001,35.474751125,12.109987749999998,68.548533375,22.617232875,82.847804,60.885882124999995,57.021607375,201.909432875,13.288126375,33.71121599999999,59.3861415,95.931493875,98.00415724999999,49.97707525,83.84897575 +gcc -O2 -funroll-loops,54.40058425,81.882952625,64.80604650000001,35.040052,8.885011,68.319228375,24.572967375,79.53407974999999,60.961679625,56.884825750000005,91.21050762499999,13.204973875,33.542271875,57.413765125,87.185493125,97.4925815,47.966589,84.69887399999999 +gcc -O3,53.221504,80.03849225,69.38679475,35.487873375,8.940487625,68.183290375,19.013646,74.70955375,60.906544,56.70610275,361.353566625,12.640282875,33.634826624999995,58.4668365,94.79009625,97.760524875,50.3018125,82.52584625 +gcc -O3 -funroll-loops,54.105290625,80.20937574999999,62.791747125,35.127335,8.87422625,68.541043375,20.704590625,74.01913987500001,61.040328625,56.877397,361.288106,12.701408,33.60241125,57.888290624999996,85.176164375,97.49378825,48.407930125,58.283103625 +gcc -O3 -funroll-loops -march=native,53.413474625,80.39481525,64.099337375,34.265876125000005,9.017613749999999,68.33021500000001,14.93630225,75.04605187499999,56.549231500000005,56.619073625,319.27826200000004,12.3161955,33.570815875,57.038627125000005,84.397733625,97.480839,47.949529375000004,58.28474225 +gcc -O3 -funroll-loops -march=native -ffast-math,53.557711999999995,81.4960635,64.189020625,33.367515125000004,5.355178625,69.129807375,15.511537875,69.1038925,59.586580874999996,31.88062925,280.93333662500004,4.08873075,33.478429875,45.828518,78.196163625,97.24119099999999,43.689170375,41.975445 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,53.680088125,80.27508325,63.902898750000006,33.94937725,8.880813625,68.449409,14.880102875,79.189519375,56.599762625,56.45280687499999,171.36080325,12.90638675,33.93415075,58.924518250000006,83.7220535,97.49274187500001,48.105183375,59.94294775 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,54.09256525,80.5955855,64.5757205,34.017207875,9.232557624999998,68.54190887499999,14.888251625,76.8124885,56.568837125,56.950878625,1022.554685625,12.560817875,33.386580124999995,56.592043000000004,85.3055815,97.740021375,47.906887624999996,82.496808625 +gcc -O3 -funroll-loops -mfma,54.439522375,79.83218225,62.607384874999994,36.070982125,9.176462625,68.747399,14.671020500000001,77.20048875,58.07718425,56.29045,722.4658986249999,12.520714875,33.427921375,56.97212725,83.407227625,97.515211375,47.290403875,82.4326875 +icx -O1 -fp-model=precise,56.6028205,80.71442837499998,65.34778,41.432836875,14.027513625000001,69.11013775,21.761735375,82.497765125,52.05476175,73.73119324999999,724.073896,14.66997025,26.988823500000002,63.740027500000004,83.70100649999999,97.7009065,47.624863749999996,55.89577800000001 +icx -O2 -fp-model=precise,56.34846725,81.229151125,56.72894875,41.638092125,10.894515375000001,68.28970375,17.7506155,73.40909925,49.04184025000001,68.98283975000001,85.208261,14.016098625,27.103762500000002,72.449911375,80.971886375,97.658076125,49.6089975,60.374067499999995 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,54.6214585,81.184737375,64.84900475,34.80920975,5.258229625,67.92835662499999,13.291763,67.38596824999999,67.075495125,28.593608125,58.55307775,0.413734375,26.732371,60.810555625,46.0085045,98.513446125,29.3478605,43.3892415 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,53.097521125,81.15931837500001,55.543291249999996,35.691221375,13.620295125,68.58095087500001,12.026318,74.0554215,48.99252975,67.97031725,243.69112625,14.205103124999999,26.874172125,71.6643145,75.109126,97.6907275,43.91252575,49.91537175 +icx -O3 -fp-model=precise,54.195513625000004,80.812483375,55.884344375000005,35.731520625,10.872942,68.05976562500001,17.545721125,72.9063755,49.005384875,69.419065375,84.39141337500001,14.000012250000001,26.445344125000002,71.89201975,79.646403875,97.65392725,19.38606,60.130503625 +icx -O3 -march=core-avx2 -fp-model=precise,53.408662375000006,81.20175675,64.50118375,35.136647374999995,13.6758115,67.985451,12.040985374999998,72.98895875,49.004785375,69.579773,58.87350525,13.777832125,26.254206375000003,72.228684875,60.089526375,100.625049875,23.831408875,50.178052125 +icx -O3 -march=native -fp-model=precise,54.331747625000006,81.791669625,64.41886862499999,35.373409875,13.631527875,67.961009875,12.065621499999999,74.28341337500001,49.011679625,68.3285305,58.3110195,14.076113625,26.516636125,72.16414725000001,59.48092725,97.6675935,23.520407,50.2770445 diff --git a/resultados/media-aritmetica-resultados.ods b/resultados/media-aritmetica-resultados.ods index b957aab6b703b2cff43bc687216475e3addba96f..8c039f6628173f9f850d45e8777c1a8b7b4fa195 100644 GIT binary patch delta 27218 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 HW`RTiU})SW delta 33119 zcmca}m$9*ji8sKTnMH(wfrEiTVT0>L-auv$m8dvbI-83dNoKM&qd7=w@_I(aiSI<f zOlwBP$(A{M$jT-r8iS?QGn#_viHVAn)fk09OpwOOr*n9aRZo^@vI5Ixv&z&*NA};| zC0h4>y@AM<jK)h*Hr;QJ@x43y_U*JKu3}$4Hciu*DbXe3ackbm_4+$9r>`kY+jPZv zhKtSf4{QE-bbUD;{@rq>tf2Uei@oCKnDg5*&ItKz?*0Dq@%n_9dvE=Fr|KOnv$*uo zBj>&qEKYU;Drw&>7be9Ps0d6AcxA^oXI;IdNW>b=GZQ0DSDfW?nfqdw_U3C@zSTNM zobvYUopSWncmL&=|7@9IJnyIc{oh?|D!Zoddwi~9(geGA8XRJE&(s5)3XZ(^a>(<} z`_y~dg6qPx<AY_h4}EG}=ltJJok3P`>Y>8!8IPU(O79n3m-UxCzuZgv-mV<Jr*#LG zFa0leYH$6&&)<3<o8O$X>g=<9%lZw&Rs}P)9d><w%KZG)^kCDw+)P1iNz=pw9?52E z+xBMJ7U~G<3;P=EmG;}RXj<p94<@gIBz|-)PxG|N^5pT1DT~`E#_nelEcClW;pvVK zhbtqdZJy-(eO*UISl{+3vKdLox;o`|=?fh1V(Ao%Hm_Pyf83Y<>dDfTGhScXwCVYp z4LO-<FTV&yw|`!7g|nQc_xg=f*L}Y7_+4FEVR-gcn_A68AMtpV(#W_Ig4XM6`?!v! z&g@AxvlKm^lb~{>`h>c=tFgJ!DkgKwr5l!7y9@b=hV3bhJfx?Q*KM~|?p5q1=Y7sK zMei20%;oYoRMPvM`mer9H<9NFQ-YRY`q5o#xw|$`+Iq6&VeZ{CGmW$yxsq9gM1(ii zX1>vwo&GFx<=u+>4}68P6K}G6w3-VaKeO@K44a%i_6M3e_iy>(v)DYlWbF^fHjPIX z_bMK>v}P2DL>&9wTizn`TJUNA>~DRZ%ch=<`~Nw9Gyi(_+-ze%!*`Az^;7J7OZP8O zUSiNJ<G*1;Qk{|Z--UZ_mu+q+x~HPi%APbmbX|J(8o4F~x0Z^&y$v#HGGf&M1z`$$ zhC*RphhzmNi7Fg)a$1%4Goh|GQ`EBcQmkd}bBC`>&rD$b*JBnZAriD*&|@?6nG469 zL(Gr7aZs(lQ8C}H;%y$Ih{UCPzv@>?Ol3NraYbU$<tG{QzxO4DS{-^_9($C_nRA!C zPT#a&llES3n6&G7uCUi7`+F~$UYvY0rR4RVM?21Jt<6h$Gh=P*lQ(`hoh9y9=!=D$ zU;l7w_R5pFbCaCBPUUX#dK~in`H@7%h{S0xr!aoaaXliZ_J$>57MIGwy;`#jV%lbW zyHqd#sw8<?R88Wn#yP4Pk3|hu_g>vt6nd0{e^MvYs;Hx!No}H&lK5laA8kDLX+d^S z^xlswVHfp2H)}Fk_dU3KOnB1ch$>^_@GrgXfvaD$HfA<m(OFbx6V<vY=zUL+2a8tm zlPMiq?`!S)`wuibJZM?TwK*(LSmP(7W%`UD{m?J<_3^!@9%?cc&hcX~IalQ2{&7t& z!$oC*1_ez)_VSKkS<A=%*JaF`6sJzm-XLvu^CO?)#>L^^_!E7;Je5fH)poDX&a;&M z?^SeR?xf@!3%R!bim8&ivTE_vnVNNmIrkV^ejc9meuj&4(&i$Tsrgb4!S^}Lq_$jo zu;U|(vc*P@Y4y%^?G^$->*v-#nltwshuWj<8b5U3JY-a#vm&<CfIn~gc2xnhh@>Ug zn)rCNKICTQ9Vnc&EK??;i^*<6VHs0(%jUf$ix<0YnHHg|87*!QsGrf0(rQ+)ao3?O zjyDZ8ufFb%Q*vA>qfnUa=DK>}|6|rkjio<%&q~?`^;#ajG(VwU_tPKlhxby?tFE4< zb|7|#Rh`wD*I$!=DZS*mXPc(`_sWIkHmeQJBu&4mc&k_Gh2x?F*@kD|1oy4H_a?QY znI%1<t5-aW)wb47N+tXBFTpu~tedi8`Z)aEPkXJfd%||T_1Y5K<6rnZ*n)Iq*?9Zn z_p%r`h`;c!7I6(Pdzo<SO#N!jQx$xkS8FyU>_}FTT$6k`c<zeW?IG7wd-JMFdH&W; z-)eH9+Ef1B{*;SSR!=L`E|!^X+H4@k+Q`4)pdq)u7F)PS{C0^~KX&H0Z{hRWdn7AG z|F_$>mH@ZM3w!D=1h^$He4}c1y?wItPr<wWjMvQ%&CA^OUDr_k=DN9d*+2N|kCjV? zuh*NMy?ck2<qShE&KrUXJB#`j@%ajE(9Udr81PEM|4NYYjQeq-Ma!;F-z<LG;cty$ znEsdas*L(npG(hq-)}zSsTZ^MC%d=Ds#^DQBgrMx7oRHfX<yOKR9MXNHQ6=b?8_Br zcBk1~aQWR7WAXOh^65wOQm@=gYgoKAv#8#~-a~``kvr?^{f5(GQg)aA7TVF3%p86` zT-)5-@dL*JH};d+-K*A%u(jVhFWPqXRbk=}$-1vz0gM&r1deRH$L+&+uzq1(<c~Fp zKlEh&YCrF(|63UU?#w(@j+Os>Zk(HYb7JkywpYs|_RjtN?^*M~54E2odf(Xc9&U~H zpWW&0RloI{&_he_uT2iTZ*+1O=-rN}b6k+6efzymK=(xl-F;;Xg#PZd2)MkbzW>M% z>HY78s!g`;y<K@swXXD(<<qP4W$sUyTfJNT_qS~S_674-9GSG>iBZd(IbY&BT2>!_ zb9e62>5f;XN30T9l3y5N9d69-UN+&o+{LW{OP*XTzHAu1y8iS&d*f0GQ|`1tgJ_mz zwl^#C4=0ET2&_6*D^e3S?S?l~^%UjmV|iBpw(mT6E5V?zgYCZbp2sVWuDK}{!}+9q zq4kmcv$_8^NCb-BoVa>Hg->kB!d-oLDoX<v7al)Xz$t$4(Vm3smyVw0@)L;J!ul|& zaaqQmEN;EP4Ko&f+@&i~zdr0^ML_QZ-*5viXA`v@>*EAVg*)9`gWWi+7qaktE3B10 z^wf|4XkMea^y<|)RXf7WZ-^Xt9`H!Q;?T{-+cI9P&~-FCr^v|KXecDD|LIkG!Q(6L z@)uWT+cg|uFPp&o`JPzii?0Ty{3~W(Z{uJu3in;l)ptuPH~Q3!UEG&lyy~AeTmR#K zcJWnJ;`t}VCyagWX4Y=LIQO!7boTOptC!kld~aX7=~)f8_uaFt+h+Ps{^O^o_Qc?q z{prNNZ|g1guZ#P4-OT;lueNDidCuxrH-G29;xD;Siv3(-o7LA#AHN;fSn=K@?fL54 z@+{%rCl+e#*3cKZ<#zS*jjPSSDqb|&B-j7@w)CHrd*Xl5>K2~w->$9>*Z*6#I9D^u zF(Wlzb<<AXH*dURJ{X8UkMNc7cK*Nk&Nlv2&don>Uziz|{W{|HuB<2NO<SiG--+5k zd2TUhb^d-Gqe<&mOxFK=Byd^Yajo0(vz;zK$p4@5Z~1q2)3DEfmixVtl9KkV>e#l% zV?oKjSM~W%ua=9xSIQ4FYE)KXFAY`cSm!9v_~6!Uw#N1K%?F|uN^Gy6XW9JubF8-7 z^-_to>+`NBn#A8@S^czhM}&rG_TOl$yWw|y|JQYNm7o0jn(5cK=Ve=0anIP6Z}0S{ zZpr80`<r(Cl@IV{=a|g!U*rlW1H&OJ1_ns;lY@hU1=RkW9K$46KjCa%vjb1d`%11Y zmWPF^G6NLamCl9!Vk!Bkwz{eJ+Oh+;!xb|{U01F8=V^IM>THei?6)_}4r*7Fwakoi z-N?njdzJ6|%vVR-zGuzWH`}-E<vNY#jkyzo<8S-Oy6g&hohY&Bp`OzI>#M(3t$pmG z?)f5H`cq3#ui~emr`-xOY`N+a9>=Qp8CcxAYW#JQ=CqZJeaE)VT$;YoNA`>szt3Lt z4}wvXA9iS!$po=mELYCnbWQTYYK@D!9!pnlJH7not`c4i+vFG8ed}-B>zwfTOTfqE zr%!E|i~htedY8ICBz&&kssB9}1h^LbIbFlA{yzHN`%VAe3;a*ns+{DwET8dd@H~~v z+2K=uKH>$1)RylVm)IB?7@C=pLJAyEvzevpC!Nl_Z6M(K{V!MJ*|0~>o0NnnF_i?C zOjKfh#c)&7#4_+^&=SYMiJ!l>&hzBb-}RX1{D*UU6DrFyeZMg6yL>LJLyg5XVQKI! zGtnxWnqKab@OrJgpEplCFm-Y*x7iV07Qxu4Wb1nsOMP1FS__^@@E@MQlliEoSyE9m zZ-bEIk$Qcpw(}V?CEB&GRG*&vqU8A6jD?RKi^|z{dwnpU=AV6b>!jINc79J23KD8= zEL?HeWMM_BzT0j4>t>68|CRIKuKjAx?E{6~H{WL|A1>Z|G5G6#v1xDAgirsBeW1DO zdWrk`(v>RVN)Bf^ZXazqno_=?+D}7W<>u2VVy=Flh1N${)~m93vFFZ?_!`IZHs|l- zfSSc`ti9`}{jmC27_iTaId-r2|AW*2@t7wZ?0!&FyWU?;ZrN7D(?ZkksJ(d>cl%#a zjn=2+d9Lp}9^c%3UxE3Y#Ll0WvKJ?9JF#c4g?5ho8g8W*dKr?we--@Ll3rFxYq?y! zGbQ27wbLH^w%pAWiPq=PI8@qcuhO&r@3UX}pvW?0_pj+>WMJUNh%8xNh5F)0W+HX( z*Pr;Yb@EX~mDm|Avd#t*xE1$J{GfK5eX)}FIu+(~>)+pSn5AlQQfkj-KXd(q+rG?Q zytsI}-acLDA`^B!gT>QNofHqXWO`*NfB8YsM%}+ZR)1Ri^ET^jpAGE1^D7HELgct7 z2wirN(RFrmJ)B(9)a<SLY|Ft32NpR7)^jXU+{@P8khjb<u0Jp3NLc<fmdiJn8cj9I z3eoC5`snndFWiqEpDu}8AHHe*?1eoWr#EVT>)M=C5E`02_3G!-FW$V|+_N@(rs1}K zf4xkWdlf6UpZzpj{Por~|74Rn6SZb9{`z{#jirYqvd<Xm#4TC&X4dz=GVI)Mgf3Vp zbi1B<R=?OsX-9~`RIlK@EB3JdRD2LU<3!N}_Z!nM$6ioZe--()fA7cYhUS-k_p+}> zz5TQK$8p83KEtnxod3*pBi`Iwmctita`O2Cp6-47k1m@abJ-ztnN;B?=Q+z3MAt-} zQ2ijd_`d%`g(Rh;A5W@p*&thd@W%vB9mB=_*5zBGa?JO)*Vo<JIelx=g<0w!WzKXY zWGYA<_{QcVIo)fs!hPw!&pqk>5z77>xuu@6ec#}h(tIl^Xw!#=1Ifpnv^$Ho<?siv zPpptOP5$ya(ot{$L(uO!@jrVMjz62CyGtg2H{WzarVcINlgSzx(pP31@$F;vuC!;j zQ_LykX8bhCCQ8`F#j!p~J3;tz!vWo83yihId(L|)TuqzOq%OIgb%uy5TgC0P5)Pxk z4Mu#rd>PApRX*&V;o);>X`;f;+h6$(%Ie3v&)9Q5Qsc)O^)pQ_ej-(!Y)7A5OqQ`X z))F+dJ;zZfc)tJd)~bUi{-4&~Q_(ubVOgCsUnW~%Q{VEGV+SIS?YG!d&+YY*-Deu> zT4T9mES=Uz(s!zS6Y;m)XX%=2eCWqJo7aD~MA`l>$@|^+YKp>-trwy@-us-rJ}v6X zNrgl|#wD$Hgd*N||BhIucgM$Rx?rMH-h&(M9%;U|GCrPK@;=RczITfz&iH7!(S#}L zjDypmZAP+92e@|VUlWbY6yXu*Ia2?Aid?<OmnFA9SfB2%eR%f9*N-yYG2i%E_Rape zXw~MX>(e4;aDH7jC-Bdl^-K2)UHo6EwCmlxH*yLNb^DyRRS6bPk$Td<<&=rjjieKX zQ?H-NRer^&=@`4XLuDI7U8{-~qusPMy&dAhD#d>@3x9kQDSYDjAXm&y#^se6-@Jfw zr+V=k-vk%m{>L86+`^ppoIA1PwZaCS`4@KIsJ@ZUR@bfakMq#3<uhN&73lu#4W3&l z{@d<?_|)6`d#k!L1Qu_v-BZfRy=BGnzTjV$E4D>$@b0y6`{K*A$7yYi&3;zKWtlx% zJr@@K+x_|b*DvxH^*8psRJ@p`!ng9En5{$Is#x~z^)n}(?iFA)cw)eK?%;l@Z~QlG z-*&J5+BnV9b<dJpkJv2E?)hV|Y+ldif>^GF^Mj`ST~o6C%d9tImuJfU^f)B@xtQs9 zrej814fBNa8k)+M=Yz~2FpE5^{Gk`{;D&Wn|DEnL0<H&2&p8RF?5R~NI`H&Oi#yY~ zY+WBg|0&OcUjL1&53GIE=GWv_-gtL+Urd&O{)K;2>$kmnEtWa++;M03S!K&R>*xKR zWw*`LclJ*HS!r#hIVGiEPhOdpd&}#>3m;kgZ?E01b{_A)elhq`)dwe`-?8eM?O$1X z=iGSzN=xeM<As-JRbTO#=jM{z-n{d=>XGWO=`ZuQ@1FB3cDEg0>BG?ax6<WH)E{eg z&UZT&|L?IwY49BF(!%Pcov+h<?_^$_pI2)6-Kn|4wwZVBzFmh_sy|*A?7EmyGU`_E z+U-{SSF29>pM5V8y#Myjjk~R6t(!TVe&2azm33<MHABBW?<O4xEqNbyzGGSDvTKq& zy34N?eW^NL7**b8JU60jZ?a9z)t>r!n+taPot3(pp4>e*`f6dt(yelDBzKlu_5EBi zZ>!F2xvaUdR!Sz$`}dWl=|8TTW%okz+s$TQIlcO?rFCCR<C<q@@Le<Ei|s1lyjsZh zeofw~JD1H87xCQvnQ#8x+wQBz=AH4s8UvhEqh>{JFi+TIU9MSCvcs$MQboR_gzT!_ zfs@K*(?d^h-yHthFRZe>cn1IbCq9v!lOOATvo1OJ_Dkr!JAJF4+?CGx2d?;kh5ufp z$i~1>sR66_p(AurN|WLpShN@zSSITW8%i-TFfcIIb1*Y7FmPBkIx;XYqy_kdxH2;{ zPp%S{Rtydfj*gB_PEO9w&Mq!4uCA_bX=&;1?w&k(^6c5O7cX8sd7H3${k+ims~8v* z7(87ZLn>~)o!eP9+e5%LccbZVzPrBq|Nl?_ylP^~&1rK})MlR8k@ZYtTgwEVex_H~ zK0Ud)Z>#M`wFJfu8yRjyFy!bkn29k+b2s#|9yrF7kc>t68!v0Z^14l5nqw-8Yn>Ti zSmb|-sIR;~pCx~tGuHt#*T;KapE~wn<BPrVr@i9EJU;AxpPYYuCToEY<CU%2-to_( z=l)!EAv6C`YRB7uySf(gzE6Jnch1LWR!bP}>@quabawehFSGod=!2iFt^Vfc`Igxm zRPW!w(5KlD)HBtf<b-;0)`yt87aaZVRhD+$V3vttP&3<Cf8J)@=WRDsPOU#Z;qe-O zuLZI5x0UcZ)FnL3Zb+_bSo7-CWT{DkSN3`Ts`%s?yY$^Ny#)<cKG7~`&q%*%U@|!T z=K0mr^WJ^F9(U1r@ov3`&*~24Z<9Zk_mub8M2BsQxenBB>G}OoDCZ61jXrIL<Hzl* z8MZldAJ}Vo@2;#=#_`0*^>4rawP~=r>>xb7^az)Q25-(=ZeAIOfB6{+w|+V>UuScC z+-H8HFf-w!6Z2weDT&t0jw;O(7D7K_GZo7AexAU2yD)RX&PxYg+48oq7c6>owlqg7 z!)|Hg6s;p=8B#N9-I$L*-?!FM_sa#7g1r|Us@vIKEqp(dtw?1;Z>EBDHA6il(%x=h zswmxb|H-+ADUZ&6<+W|lon&)%?RKY>nNNAkTo`p?Pq5qB?>ot*Cm{AE^;voY!@+|G zl(`n1Of$HzH*?de@|OaNLN}(pJo?{VQBp<8CWrO%0cEa)+kXnu7^7G1nR0~5ZS($p zF_{b2&!5RA7sTKk)-5gdqUP$n_4Q1%mrN@BVR`W7K?%bTY}WG_bcFW0RWzKvt@4C9 zN4BrTb6&jnTcx7k*-z5{+<v;}V4pgJxPP|X%~dzF8ub{h-ujrt8#n!_dG+j{$;11Z z2cI(D{^-ZJDZ|(J=Q^I5jrqk)dslVOQeyCq{Pgd+hr;cLnGbI7V))f+s89_~ul3vw zZ+~oUeE&u~W5I0uxXI5fK3!kd_|yM_!{izKQw%GPCLUSu%iJw3rSa9q;%a7;h$zeK zn6UM~Z_W-;K6)eCNN3BJ53;L{pZb+y6s5fK#<`fZKMf`Z*#{Zj1LHChf@|HF=jKm# zToNm5DO?`==-P^i&^wFQDQLB4m}oxb+oAWae)SFInuurntk(vwOKM<$czN0H6M-B4 z@-n_CH`(w*kT-{Gz2CXzm$b8mH3RLZ@!#_?3#vO2FZQXk=+?r!YrJfuc$cp}e=RV; zRxAG}`{KrL)7Z?)GZ)--V4f>~`OLQ7=^q4VmQ)71uXf?Tm~$|@gxBC%UF7xBkGx!` zgx7A`)HSExYsJNk%R7#k2TokhoB#9p!p4pNBBgFzKA5{?QEhkZtKhpy7hTo~G)U~7 z?8wlnduo$T6GKq%^X)I*FoxJo+4po!)A1#ZKXrL!7F(MX?7MW}mr{e`<-f)Lxl4{m zgzjvX-#L$I!-W3Q$ko3pud16K{Q6wIGwE<7*E+*$52+V*eQfns_P%w_R}J!*Zxv1b z>Q&Azyo}F+!S&|+myBYc)*6N`J$`IE@4WBEp)*c*ZB%k+x+xdUkbkSKR!H-Y`GN@# zmB6uhd%7^g?!0%Rf0%!(oXG#WH=UPh!ms7~Rwn-ZTgZ6l?vdJQsU@?or{3g$T)uGE zgLQ4!E@Xb%o3N;^J8o<J{43?AE$PO`PS$%dxXqgF-o>zTdh@2vrJ;pym!}w?tgw|b zf4jEixejA???MZO)~2hWOvj{L%LRnAql2GjD8AoN|J6Imar&*ksLQP}%-)^sCWj|X zc{t_nQGtEofy&qZOkUUYHayZHC{gRqq_CF_$BiaB9EdC}<FsbK<9EzaqW)*W!p23N zuiaAarMmXrsGsF)rakGRYN+H|w<iYIJFQM%%-+G2y=H#f%81JbRci!X>%N(WxvaJL zs(1KPT({BM?ZL~KLNY#W(H5*)lE3{yWbBjDJD>P|Gc(O77c;m#;Y7*D!!2`DR)21+ znJLX7apkDKiNWVjmCUa<D{o}@np4ABZ+B(K<ww>NoR$`Pm}?$7Gdt?R^S|eqF0^it z(9EmJwd(otVao4Zr92Lfmud6a^^^S>+C>jO)~vC%;cj3tI{NK5>w>OH84724V<vsR zbKq{<CVr*@M~0#^8ZG-nuClT{{I0j&ZxY|z9Lsc;Mz&oa;ukcY3Uw8<l*~xD`t!!t z!q9rv)QG^h3%HV4woJSFNa^sUb$P2!Cc1KXJvRMS=E(4aVeSXM-@*nN--6vFj;m%L zILP~FzpA=z`Q*+k^TZYvY8^QEcF&ut`&YsxTp}46*&l0cv*tC4^x)uRy3uuPHaBlf zm!<oxhKbU#87J0#-pybY#l7xh$mAa~ar>in!dis+>i00$?l$2_Xk+-{_u#xpyI80A zTKU7tS6AJ5k$uij+H>(FDcQ%pXK!sc5y&a8jN)M5eyG3cn{>v4;xG0gO*IS;9=yBx zVn*4P(}f#19=cxg>6wT^P48A4{p9}L9N{I?pB##1xcKbD+fRM0ACCJm)`qQ1+OT8R z;SU#LM5ev_v+Q+k{lkXa4!eG2Z(dXOJpCby$%_1i6SS;&lpOYXaXg)1YZYJRm8>{F z-{|!7U7r>$dR~32x%q^4b=<|EOP_XR$+Y>1Sza+ZIwdk`<D#lX(+_W#o?fvwtj79Y zV*TR4C;9!tyZGlleEeJSHPgQ;jTxmM>)V=S-!rB$=IAth=TwYQJttTHpfB?1DhoSa zpK_@R{n_@~5e)5%8o%lBx+rAyot2f^;c`l<yEEvE+3~wA`(=4^=Fis5-L&WQ<6QOT zocP&n=j1OO_{l6a<A<ng(|O^xF3Y5<n2#T~W+wc~HVKHD@;{B`Z^xIduBDH5CdJQY zQ`_&ttk`fwzrm*S+f{>kGv#hG)@LRZ&u6<=)v!=`*>TtS;|m&-YFwFr_h&2+uG8iG z^|P#iDP=;sS53UsiDM=cdJ_fkwlJ_YJl-<0YzUdJlQJu5{>KaDdye*LFo;W8?91bN zllOaPSp8`UXT?yZif&nd2I;8sp#9qvg;m|!N>x``r-UuwdXm$m)f%&<YUc(9J`IM8 zl~Wox`z;+`9GfPV!TlysJ<9dDtBf1hA;krv85&H9)^~1LXfZXhU&w9eW4O|%e>Xs4 z%lFjS<)$JWhfS|M7iPV^ktJb;j)<;gu1QX6tr)|+;QEDn60-B1GYz;H*}pLyw_#2A z&-Zs$@ZtMg?nQsvB@x@8znsC|<%6K}n+S&EA_pc-={)u{HtI_5mP7}WU%UD|OJ~Zz zU18jCB1lWd$G@rlfc$&22~~S7gm3N1@SYrLwm(xnxc)L%mz((l)}CoLKmSI%FwM^K zs=8-&-$G>1mpgCjTO%26n~OE<{w*!uv6(%=I;EN8>Q93g&-bxM{F=D#-&>0hz6Ts_ z52QQBwX1DRHBm^5xF)Fmpn$0$_M$L%fatT5pLLmDJ;iHRKRxwN`_=!Ier{&w%=d5b zDL1UT@RC7F!)<bs#q<D)AJfCF_Vc~$R-G&G>4I{fG^5;xz$a~*>+3%-q(v5QXb{vn z@Mxzh$AP@EeDOCI6-0b?Jn=1ak$Uk$WWuz`HxdK5IOk+0%oWK{@Ctq~LHmKr(dai7 z%NZ&vEcFvN<=2Td^lqKM==5C&-9x4fQe8zQKPJp|nrt^uJaO^5v%<SCAJCHi^m<O1 z`lV%EZuWNNxo7V#=r5Pv@omSO`uIJsmdbCtTG4&6_w%AWwy*2{c1&Tg{Zf0p<3Y3w z)9YhmHT(V_W7^<*(ej<xX`P1N%m;7tYyQ+H^B=JOfBS;N_q=lbzXEEfd3~7sUoonE zwB%jm$06umDw}yP?fCM>s^yLEM0sn>g!G@w@Yv|^o^kul$Qz??5^%oB_JH}4#)tJs z{I@pxhI~-7*5h4sELv*C<8l*$Fta^p`}~<F?>4!>cjIU7!SBuOOBz=jeC*Fy(Dh1f z(w?(?p3K{)W-O4-&v@XQ`@oM`lkdRwhWl-7&wQBo&t|xD++@P}-)ER^^yxNiKW-ua z`3>WZeG?hB`4|6Pb7%d(slOg_-Tkxi{e_s&PaEnjeq3fN$epwNg<wjnz|6k~xqOrC z0**ZpHJ7M5W8tt|L*$LxpV!xOWj0P;p151B;rkWO0*jxLsg94Fn3v9DUvA}lvGLvy zU%l1W|Gx2E#V+$=8V|Sb-?F$x{c4L%WqRlCJo96tQsYa3vo6f11@HKGI6m3u*Dfu! zBjy)N6_?06z52zzY!k~$p9na<5!&u{bk!rf)wLmff~$BQ>KI)=S}Xdyw)5W>znzD? z*b~|zO{4!h4was<4O3OGO#Y_9RjjYWU~PNPx>d;_#6CWoc{WqUfuA9dYRx7ZG3hz6 z{!CGR+Wse1asG-8M|P<;TCBB;c0bU%>sjxA38ov9jCt48yUsPq&t{&zrR3t)@C}A9 zgkSubk+v<@#&pu@C8xWsqEy!@eh3p^$9U|H{_9<O`!YQkehXPG<nCQo$Qk%lCN}e? zoQgaHr$d!q*qaaDt0S6g8cZt~bVUuFel&XM7W|i$y~F08bbpdd(A`6tDn+dfM>^t~ zp$(}r#+<~?`q1TyZ#Cq-?iclbRG!Op$|*HNbhWZ+q8vkI!;S7=YRVbir&4{g?B_32 zo%N?xY!0hI%C7o%D?8svtkx>uk+f$X(<=prs7F^`PF{56@E?_rjGIMblD|1vHZrHO z_8(2~@-1!Bjc_pDf5G9hm}u;uwW*e|k6JE2F<0q)XtqE%JhFa$Nx6Y&Z?Uf4ziKX( zNA)^SZu5HUY$}Oue*V{|$1`lY=tkQ#6@l-?vFD<n|K>_K>#}dJJM;JE8v9OOnZ;~r zj5+abZ2z(!C(pKJxGlc4asBaQJL?^pKdw7k`(xI=>X-KZJ92+$?pG9jzv1}u#*Kd` zu)V4_Dd-H7-mhgb`~AD;^^rx>PyKIZ)4Of5<G%xQ?y7s256FFZ-^%8<pz&`j>rSP> zyP4mjH5{hheX?!I67jcPGg_oiWS)89vqhCPO=_L3@sj_YY<)^UO{Hd>c3_ST`T8+o z6VJUzcD!#sJ20OwpSiB*`ahG0dvjkc&(ZM`4&5?+d+_B;yQ<<lHDz-`7W%BL*B8E* z-tW!)yWGTJ|H8&b)+OEI*1UTTELiBEIcfWhFp+F7J4yYf2RvRvo6mi(s670|ivQ)* zjIdb+sfVsFZA@ScmzrUscyG!o&E@?@Os743)X%AWT%omg`;kh+iFUizv<071+r^f^ zXk*8_MgGEpC$_v>f+j_M5V|UNJfy5`QA&LUgO9p0;}Zb}mX4A|4lA`{ST-^2v*6X4 zcmINePLFo8+V!`eZ%mVF?*81B#}#kG5WDaQ-&C(RjQhlROYB{luQ%FVFkKp>eR--x zqHggk|NN-u7k7(j$90{%(tYY{i~hwAxeS*bw&{B^|E*W#^pTjs3hJ)^+r@B0R6c~^ zT21|~a{Je!Iijl{F%&Z&y}h^k^Xo~ek*p`Kr{0{K^KVT8V@)n&M5ZT$Le-7QvoDKe z-MnD-V%LBF$#=P0J|!nl`Y0q_F#DLbY=NHB-zTg~cqclC9S#>hFlkz+o67oAr%FCo zMk@N)9}ArsXX7YkP{-8OUGN^(;N4f7w`@zj=Vv{4pUQal+tY;@815P{vG-f^vOMWr zX`NHPYYz806M>7r^y(Hi&YXT;I-uY850}mlo1crU*Ehe-F6A=)ZF*qJ<&E+Q7s{44 zI^SfK+4G%aYO<T+AJ&W?Jk3U#$^HrqhQD^%u5W&;&3V9y;lRNLM`_uojO_UdyNnJj z*eR{QyuLwFz4m_K@_?IP_pQ`t^01l2$?-e<@3!^LZ@uR-xx8Lob~g3V_8nYu3Lke| zTfOMD>x0iJ+mt>#=j2@bb=~B{BgPj@3+zFPITKF1GG1us-jU{6()z_Z;rE(1mtNm} z(3Qq-T9@&?{?O(ECaE1O0{kw_w!PqJ-BP;bj_<eE?o9RKy|bC`S=|q3a1K)CZg1Le z$Zc@x)3HQ}BiPz9xW`t?G#FQ`TA^|9@->?eA8#=2$oyY8`Lp@lT}$nIPe}De-3wqB zYdFI-r8=ioL+94U)akGM#RJ1MR_&`dyIi#K{K9Nz_IS6rl8nR4le*O!e`|+GK3Q=v zUW4gj&I9M`Y^RR2aXDV8e!II$?(44dr@qhrW^Oyo#n8II>SnrK{ISYgTJGh~E^M~G zq|?wmpXtJ)?cFat<f}~DOO7txw_hMc*yk>j^gcF=O$-67EolPYL5mJ-7l<sK`!`Uf zvc8G?u<H@S{z{vo!WCs#zTa+pruS=`==#94`QnRr`n@>7l(9+kZKZe3V}}cuHa0&G zFp%ax@IR>DW83?Oj1|x8^(DS!#XPy=U-EVTSLM?Wq^lTYyVZ`%%va6&+_U{kA#1|x zte4*o8fJVCiDhQwJo{26>3+Y7XqWlbMAiw@t@>-~Ltkt$|7aBBwttnykG~ydf5kp8 zndfZY6_eENSa@t(2XpqV_i4^K7CIA>c1`wWzZb+VCzE;3MBs13`3Lu(6>fJmakz8T z<Z12`-qJS*CrSu=GpC44{V10`KWE#*_&Mg1@eDG*q!yfNv-wzi>G)*-S6a0@xlhby z+NJS$UuH$j<HmY+_jBAA4~Pa!?Ul{T`ziZ~p-;{FTkUaY20kC=?C65#=lMDemqqUO zt2q^^OvqG_zU;8=y(+`K_xE?3=-gp#2`u<+f6&M9Zv4d^Ik6pzTi48Pu3#wbXEWQm z`@PPqJYMd=nT)ruFK*;B5tzB~(=@hk?=u(l1z85JoiKN~UHl%I`dcTrrzY3j^)3`V z5E8~^*C>~2|BQjNwxaFr>&pk2Hn$2W_4$ggy?k=*`L!#%)*icY^4}xIKQmSs79}tG zxWlg3C~Dc6fGIQICT1plGB&yJ=;kV0?glYmvycf<doCZ{rpTXQmY$^l!01R!i~AYD z&$(NV*aUuCn7M#!GSgrFj0ZF7mxzTX2{d>+ovc_?cqRXd(WA954QfJE)^^Lf@&Bqh z@p7Wtq+fQ&9Zv3e-23;1Nx@%1-WH1!%qI8d=x{1routO*wck}vPGK=?0oMVJ$ocD1 zE2ac?n9hEnabq6~Z;82yLA^J#V#CiX*VVm64<BUyVJGX_`;6&%c7w!R);29``+B|e zx#BMkC9@8yH@Yuxd}Yf!=l&&!l^G{<3%TsioNLijvXxu9?esr2_eSRD-`#tbyxp+m z$&p9-Ud-v|)c+ZoT)4~me#d_)(J<TgsWaI&)fO^-cz9Z_;q4ET4}UN2J6Z7Yy~zDT z_3r!$7nL>6t_{x+J(7E<Pp6^sMgjN!GL9cJ>t|ay`2ARRM&PmY^?<a><Dw38`79UY zTe(d3pPe0hK<uXXe1{E8>v;e0O?8|UaiHSfb#W<+>dE$nxeq30F5oq}aPJzMnCJS% zd&56Cy?rEP$0}nXpI{x%o*x~ql;b}y{^2kCMVgG+PdWvk+;M-m<2u8lTLruUPpw}2 znDkHYQLwMKzr3g6<n@!c=KpZ}aKN(B*V(q|{!^B!P;t|p{|e=04wVHkmTZ1+k@!B^ zpGWZLH%HM4$zlg|8XzT+wF&Q@`GO@28$Uf&yU;6NA~yZjoMNWR#c~~NYWbN7^I!bd zRMwyB7$g1TDvJTH+69NNZERxyWO+?8_r3jjz)Rn@slL4^@}u9LzuU|LzAygz`>~p8 zI;*`E?-{m<F_{TJotV#7OJ!U-Gbfw*@xHD=%Q>eNXS!5=W9Z{@z7`<3!Cr6qGV7P7 zvfg~AHGxtVdlxl+-D+mQzqL`ptzvoS3Fa6sXAYSKMjdkEolKi|Nq(G^DE{Hb)<*e@ z2fq4%2gt6K*Jm-Gjg#&Oc9>VDcP!6c^y7r{A<`bJ9C8!prr1n-_OP1u{_@7W9Tyy$ zH!Zl!yhGy(o0>F>gUQ99QiE3xQ%x*b14;|Zf@OWOk9Jusf8w~Fag&$0p_<FS#f{6Y zO$4g<`-gll36_pnWZzJ+le@#YzTx!aPbMolT$fip+}+&1ys`dpv{c02rHvN6XYOr1 zdg-R*zlEk!st49-N0+chmeju#G?{98O-L@?@Stdd;5&g&8<<`=GPgdzbs%56!SwX! zw@iQUyw4Ho*siN8d~|)N#Gzvg6U@XK(zl;w+M&<#*Rg8F#=QEc@yq*f`M(o3&Hkv* zvEaOsly;u?#JF}g--~|&>z4=ooS&iK+GBs~_Y1${<`e4!7-lbOzWzq>z;pu#Vecai z+VSFkZqpxItuI(}IWccdAfNkMM`nXgh4`!cISzQrUg9wMDz@c{(uGsgzvlVfygN~% zYVk&^8rJ(J?`GA!=?PX#QF(Bd_12`Fy;c)${@r||ZZ*TPB}_~)mxTT%oVHnAe~$gh zImUx5Yq<|-*sOdUam|`nq*U$0x|~U#t!|S<TbrC`TcmFa3aR7n_l|kqd2^H2?k$Q& zp3Er$OtyTUQ_rk$JX<?`p>*Nwi&EAT#cw{Cw5vzV#6bIUuJzKWH7#P7M4Non?`7`~ zXZZMPx3J)x#6=wmrFKWI&1Fjxzp1rLjIDle3D?m@AJyjb>Mo4Ccwm#7OGLYS)Pfgn zk5q$C%nNgw|5xG95?h1BDCe+i=Bt=H`nCodJf0_hD%9P{@g{@j&yYk>t%dn3h4;z* zSj%K!c$IBd1B2f3#Ou?HcOAH7*#9VCds$P+#*nSmuFSznj1T8-<ecj?J8RR)rNJ2s z8d*5n>JOzxI=?PYWb{b-AbcS(u#4x$3mLtfSr?|<V*TFS>Xu~?b(Htu(vVw69xMC1 zM$R*NzwN#@!{byZAA#kGKQg_m6JA`i<>pw<u*-~rw<NC2_M*cU2G{%t+w3koRPFEg zc_C_3!d(_3R%Xj9CLmm@z`|Fy%JbV-y)F3{9coV1+SLEf6lV}?;$Ptz6szTO%X&?T zhN+(IDyxcytKF*8_2Q;J>u$JT!{y-??;1BDKYZiGlc~(x1!Gyv_G!%Nx;8!7Ve;>v znc@x$8W$Z-J#u<a!wuzdm-#wBn)=TCT2f=yci4ON4RJ=7+1d)zS=Z~{I2v2~jUn$l zgEQx}Jx8aWw=ViypB&V3ev<C{t@pJVri#|S+72BUTl;@PYUB>yGn*b3t-to|9>+z| zWyiIDsx|&Hk2$7!zi$=KIcZ_lRWUyIu70stuKVd|$-M55MTMO<m#dUKE~G!zI>vP? z%H`URzH1d_@3<d8o7@QfRM>cEOTfcBzO-+<w;o&N4-Okx!{F+gxGa^~_!}p7CE9 z<Au97KFOQ^ZZBp}Ke+qzLuSWnju+==Joetke1<pW_dSCX8-@0@GSua%*E=zvtzX=D ztZt1%?RQfH*3_RaU#eLO(!YOyIg>5T-kCZ6I@`ZZrwbGXzIdB#@bme+E97I{+k>ZO zcG^2LGjFZ-Wxo1;VdJ-8srnt32kI6zmj0f{mQ|zq-HG|EF0aYQ9jb>bbt5h@`LfPU zNUZ%?EHc$%rfbE?$d~gkA27Xe;L-Gqgn!9W7U~N?MrahZv^X&D-s1WByUB%|<v!e+ z_bxd2EUwhMHTlM}4b$AFbmq<9C9p=wH^%$`kDhje)a>Pn>67+sw_n`I!CKFw9JBQA zb&~?o|MS>p8T0noEp2?6Eydx`(6l-7XCQ;}BIm|?+|klLYpU+mEXtWt*_A$h^2erV z**Y)g!;D2s8-2eTn;2BOGC$Sj)yd09h~M!=Jwu_k;@4)Af&<$R+-qn1wzb5w(QzB+ zzGT-3!6!4~-hFzdVmfarlbYCpbdwA9dzLny&X%(HGlOm2c9VcT%NqX)OYLA`ydlfJ ze{tj2S}BXtWPyeyLdQDq*{d`6mHz76F-wJUN!1C32Va#K=EeM6o{_NovO}dev-0Jq z<|Z5dx3E2u5nih|^{u-}K#c=)un<G&)@Lg<3x!sGU&2<Tx|`va(ALh)ea(j=80_7d zkJf+f<2MP2$w>Gw$*WT)rSadEH^zA5<pWN47dL*im3mR5`0~Hq(Wo}X(;vUOI==1O zpfvaLt{gx88+&3N+?+M>`?vXv8s9x${@-5e#KBYcp3MKB))o0M?>FNu>33v~REv>5 z@l8CNSysO3{tf02`~K%KRor~M>0b5W1+HgAkDW}}QLjJQR<mS(<L`2l4X^FiN$Ea4 z&n;S;^GJTGP+duCP@B1u>D3=w_tY-bmO66!)20=3!c#T-Zzw!^`}UT|ESKJWzSs12 z#i)f{otx`tA9MK-C;RU5x2|{C%Q?;WUq8#vd}j8+{CCRzU(#Ir>bSn#+WUXe_0;Wu znpMPw=lO3D6|t?UuZ&krQ54uQ;j@!Sk&WN+)dmKOUUUg?80{0ksT%i4X_tA7|H9BO zbsmm?0`~+QaJ#WE@6xsPp>|O&l`0PtHkNboHZCw^X>!{yk{f0f-RYfXnPkbqpv&5{ zBZy<+#n}Nnrd~R9yXl&RY3}Va>kgP-6zS61Yo)qs8tWt1qfYae-m71`B8OX{d(|@0 zr%UDM8|NNsiZI`pZFA$yrR*26(FzYj?XUg_E>3tR)KylO!MMcizR%W@%6qE2>awP< zIn9;-q4d@@KQ=?p`)u;AB1dFTGB-S(CdeAOI__v#{H{YnJhzS?+o`xeEHAuw|CX+; z9bZl@Kbk&w{-fzF6TCGnrnKjLs`q@<;KF`s?aoUFE~+<dY0X!E!#e-zwPTl3xw7vp z;{Ek1aN3tUzq$UVn})Uu@C0#)<ZpCty)<cWbYRpE%TJMsx>8Y1=?VopYzwlY%ym1X z*f%V<*wdCDUE0E)^!mee`|>UNjylIK_dM7bpnL6Wi@=Wfk7p;JeE9l{t?9)h_k)ku zvz}{UeetuvMq<j0;vheP?>4W#T3HCW+8zA(I&+sv7YpwiCLS;6#hy)$F3it81$kz5 zFhBcZk;rJ$b)`@^p(%O;!?fcyT5kkzZ+CU`K7UhH`GwK^31UpVS8~~-WHKI1W8nL- zLi*dh*4JAuh2INrdEXJYl*2~<qQw<Y2bV1i4%P>!&C&@dGF&Ab=bh^y+raZBv$k=2 zVrchioxYN0ec?}hk9-4ne$j5avE0K#a*fqXryaVJ*bg5(xzpmyoT;g+Yc?z|-kf2z zc9Qq^;<%HHsXrMQIDI``97E<58a!p*v!&~9p~1xiUOZ-Xp)yr@qPrI|%wcI@y(7xD zbnCnO4<5MGA2t^M?c|)eI8j^Q#2}QFBlSAJvF8@yUd#0!7gl?49AH29@j~JPN44*) z7gvgGv53#zwKT7@y>3Ed>?J||a50vIjjL{jCof&Sv908Y5KDpMiLeFlG|gYEsQvcq zXNchD7yVNNlxoETqmEw)uB<3L`A_T9Uq*HIABV)HBEsWrch+n3Eh}G?{>8gpVAXRM zu0Y>@4~~PXHQK7F{V_&O-)b7>Ovo3`VlF)N;i@0A=&y@jnN92(Cu`@}GJJC8irM)v zzM3<7c6O5EtpriN-F-)PcnY})iJduj`q87mpQ3(P7jj8#e7ETH^L;CX?Uo%n72L`q z@--!{h(qO5aEijM2^tIPD|9|K{`-FX+<!gp14mw{YCf#zF7&<IBx0bsh=W=A(x;+M zUd9zWGV*K~g4(lU%HCTxzMCWz);?v!EGZX}&cml%YZo@|Xu8LL$7uDh3MK!GOFcNV zzqJU|@0@->Q$hEY*{xr~veRz|d(RJj==5>ZqHgvRpR8UUy7w;l6n`_rH`e->D;t)~ zyY_c$=6~zhkex>Di*okd-z@RP`TacExmk}Eb#3j=S|kzPB9p$OtRy?=!V8`Y7hidZ zH_k4bvTb8};J#D8?p@XmyuEktt0yfv0V(N0<<o7i>|b7cZ%OO>e2)I&ci+Se^;h3; zVzbcgWi=DNbs|42{%hH00lR~VXJ`Fe-dexS;Ow7eu4hVJZ)SbjDPQ|Q>eyWIJzG}r zYc5THCiu@UDsJ^`l`@@#?H|~>_w!j@%d0*aQa-y${ebSve=notwFIuD1b;g2mpS=| z{J)Nzk2(Jp1-5*tUpM{#xB4E=2#bf)GZk*jFKj$#%$LId;rR!J*RLE|3hLeOEN^`5 zfAN6)`}!R5Ye$7D7#M3D-q!W9?UR!ES#0uQlb)Q$htP}#_3q5#7aW8$67KF@+E^je z!M1Ec<I~es`U3v1HRiq66ZhuzPY`H&^v=KEf%$5+6vvEDjJ#W1n2*{@RTwSwy)%=o zuRJs1W>t&C>JxezcQZaVzG3-SwfKZFPtj>z-jcWOCIa=!j_a2umS;YY@H)KC#6YKD zX=BJebK!}K>kUnL`KSH1X7XU-z0>Xd`m^M2p~ao|E*;2R-YBAAzquhh_rcE4H`P)* z_AP33k-Tf#QZLF7kUw{&X&U37slg6k1bIc~UvT){#dgoEyUv-}--Y?QwMl{afg&*m z$A{_f9)4gj2?)7fe=J}@<4bL+7x5Vj_AYG96wP>`b?@Q<Hcct{%Lg{IYj`sJ5W3qa zaa(*@<1h7$1uTuXrH{_ZT=27n?H7Nh!Zp_~XIqwkI5_QggM2TWRo?j{CKI+BUUo1e zuo4I{wp9;WIJE7*x$2v|=(9`Zo%`-rO}=C-_HFZ*^@+C2Yq!l0t7tj@SZV^h7VqxK zefgKSEIgSvLw(wQ8_D{6osTbBovyj(Ui|dUdv<T`>vdXE?wc!adH>$Mh@-UeSWxKo zuNP|bt|y-PuGV?^ifGlMPxH5G1u`3nDsTF`eV2@eag6@y`dt~f&qi!~d!ZvZO!dm< zX&HZS<a@BX@7?(NRNK}M99tW+yh5h_PKlkAow!0x-S=&5{;WT1CeEAh=Gn*i^ufj) z|Hm~>tq*h-hq}N1)KZqW*KzXx8(%Y4&*^`+^V$k_i>Y48cfuEKtB?$^ShDPlLwIQB z?56Jr?u$F989qF#$<u$T-YIF{-8b99GezHqGMvi^`Qj|JFeu46Hayg4@y=acx1KNB z!+iN*$r|2eCb52uZNCZ@y$ML3vD`4#n>(>%#w_7k9Mbx;d(7{#*57Atc{gK2iTs|M z>Q0Mg{=8v4x13?BT6gbZjs^SXOrE0Eykd^Z)hqYb>#q!0A@Ovj)+xT_4HrJuTlR3= zIn6hFhgR28&c6o&`OG?ZY!_^ExE90rgF((=;hoDR`_`{|U9!W7Ur&B_`l<EdKc6rb zTv%)-@O9Djk8`AY7X%vn^q*{z(toeRvSC4}ew5vO5vjaMJOK<H7bjfF-@N_BtM+$y zH!kx$zvsXFA?6h;&Sz~2GQIe;??PIMxWVuGwPzncD|*}C_VRV{?f2ZV%ZwNO%({H^ zn2T?<lX|Y<k{xV2<}fWPI<m$7PuAsK-J)(zi@6LZCmUUnFrLLzd9wNe<1;p?_0>H0 zmNNF~`);^ix5Vf`oy6|blV|+5dA{qmYtz9uSGJ1hZ#&$;9Ql2c+mZ7tjEYVlO-*=a zyz6XmdAfBypNUVMgzR2c?c>Fp=3B~qII7gRKkQYy(7v<3cQF<Gi+!)=!}D{g)+PBC z7E75Euz`=?tC?nOt4>c|{H;#*SDWand-rS$=SMrP`*kP!*|SIg&RzO$-~TrM(1Pz_ z$17(saXg7sTle_$qjUco*mlj|@#FnY;WNz-6Qmz8aMhQ;|D1Y%%NG8N);%5vwjO_8 zFl$T5bBl&6pC5#{PqsS7c>K#X%~=~wzjv`b&^fcSH7qCGQjzb%WfuM}<_DisI+)kk z@>f+%@JML#SkP-$`}WHAepm11pRergW;pipN=XH8^?FaXiQ9ai=(sYO3vay=zC+_! zN@0fBEUt;)^t66U)HgaZ9NO|ysQI|j(dQ>ibPU^#WnB+fKTwQt=szssvVX=p$NSv8 zM?CIp^WW=WwMb&T60+rhhySciRcVYI-_(`etPf?zWG+w@o3JZm{;tqcmT7Je9yneo znded^T)gCkV@86+&fV=l+f2d_Y+<mwqV&nez(4gRH*d_PGp5$OXUgiOBHo$=*gmfe zYiXHK8oO<}+7jO>&pq$IGb#95I>}R-bE0}rv;0Bk1f#{#f0fE~_IN&Zm5%7+YOl7K zF?GxHnucv9GnhS03?4k-b6B3a%T`|DraqHl&NiKi0z!)N3OuiKPET-YI({{Eiq(!| zv&#P+u4u4ya}(ILd(~?9u;o>f^^e(%nV%Tt>o0Hkni=%*OBb8eDUP65Tl}U7Udc<X zU)uQXO3n$6L+h>PO<myXp2Bic@%n>Pq5DdGnB^T9Voz|oNEy`aiJLZi*@_q27(Ata zF74l+TfpV;E`G<}`5mI|=BK-+&FM-!lJRxfn>pEcTiN_FIP;@lFj_WV=v@-yuxDxL z;`&0pl{YzSOr?H!Co}w%dhgAB;OF;)dzS7IKU(~+?#cVBe->PyoGf$L0kmv`VcY)P z{|vG7l&$|x41CSNz`)??>gTe~DWM6zmxe)MgX`qSwi@-0S%*OzL@Zk`Zj11`?JKx( zv&I*emy99VPdJuLoZxnFXYIyL;psvhin}FyEB>EvzxkH^{VL%lIm~8nrshYo-eAq$ zn1AE@!`1&1ewS_j%(b@Br$}$rLF+Tuw<W4B<k7mV6Igj-l9i;=0>0Rf4J!ZtO`m*e zYqUf~y7(4ugEM!o)Ss42adKRHf^84SK>@{^g-hn}9J|5yq{%>Y>+DzCnl|!fIe0yv z%@{mq_2NazhmXX@Zx?Wg4!vyYbU38vT-jvBLZ`FKd43d?&P!%m`dP4HMnv*c;{_XQ zJ%w%ece3j~X{!0qCw_XjYU13AWt*FAn%<od;!!#FQR~g0W0TGJ-%Q@(R~fnXBI^>v zAIq!RgZ$gm6gJ(kw|{wf;}7|eYpIUKCzZdIyQ~Sf?I_f{b=L3C?jPU8LHjszw=@JA zGBPmeu)x;da&T~fgEZV;u0FR|`uN6o-+yb19Gz-qx!mB*^vcvlcbasfr{xB2OKtZH zS{W?B>7~=m!rh?q``@qV=IfCiAypbV&Wo<gKViDaUsjd2y?oxgdGGfByC1Lb_Wd4@ z`sL3bpEm!_c<^uU!>1>IeEIX~Y4dOUzdus-@BQCj|J%M^cK+PC^LhCFkE^fOuWy^a z`QFJNMP_^E-2MGEsl?KD&n%whhfm*3F#A98`sCAxKPFV!+3t~v;aT3kdGg_pS3eZB z+SZ5{TkL=L=)L-7>}1>P=_I%F4;?sr`LzPpa{}JvKi+wm1KY%{Ti~TDD<Qou#F% zY^=I3L(PXz4@wNAzucR{fB#=$>yNKj-#m(9sb4mQ@7euzuFIdB|1pvK^XJR$=j!X* z#GCK^d|G0*!$vYMVEKQ^tzvf4{(8&IPh39u==IbOFMm8b7XR;S(iQ1_l5yv*UAjE^ z<j<=<yJWau7AbyOy7Yxkbdo;X=5X^fg*FvdGxpB<|M|=9sec}Qn-rH@X)JbKy8rm= z)2RoXl1#0?CDebcTs-rO*M2|uy_*Z)r_>ah&X~JjA~*ia+v@ed%8Kly{jPc2TJ8Vy z^qI7N{qDFICm+164t26PVRY2P@1FIf$p>Gg{CzBaarO1d7h_(0d6Hlum3DMFdq%<E ziqtzFu3z;vsoZJCkpB4k^yS^@<%ac#<JY%M{`}`^f=RoqS>3`p+v{Jx**>vi?ejyb zRof)b*R!18w$8?G^8KXtjEvf|2fHtR`1?J=Y6kaIZH>KQ(`@(GMDl$pIkddUV*a!n zC$GM-eO$sm`Qg<HBklR0;-^oK;*Q_G>~W!);p5Aj@BMt5V<8!T_rnYS`+G#zznwkZ z+$KtWJ)7`Ht@EwY+dbkqKiV4I*j4}SXo1;;rp-B>vc35qx9B|I^P}~Xx_*589tpoA z=7$r^DxOcYw3hGlOU<@<7wfZK++wk~{dO0z+pPQkZ@+pk;Un8jxi$X_%=XRsdX7!~ z@V%EGQcV8dju&T+{{Qpdqhh(^&A;!@+b`kwEV$(T&j&?S|L=V{dwS}Nqd#A4XaD}+ zWJkS}|Nl*@+kZU%TirYV+^4<M51)Sc<j<3Xe_!7I{Bnz8VX2*U<<|%QW*>Y~^Y4t@ zp85>;$2TkLHdfEC|9f`t^ZEBJw&gmWd{8(0T$}iA$-9dm&OZ3`!PA5yJ&A{I73qs@ zc4Xe2UN66AUavme=FgMw{VBg@e&o;nHb3>`nD`vae?OD!Z&^$B$Hm9oi&s2t|81Sx z<JAvS%IxOcvzC_MH-m?L|CczP^T#GXZ2tZ8((3q_uKl+5XRAf>b*gOk&(RL(d0yMB zy!K!t=e=LM4sN{nK<FCZxmUb;MO~%M#a+$aE7Ni&&z{$Q^2gh22h<*Kf4V{}{;B;w zsd@WrOizm+pP>HiFLPbJt?ajB;hR5qA6yZ>D1GvE=bt;$n_nN_`|I)11S@I3s_^FN zhwm|c%&0J{u$`5w8LF|RB6j{f|MhOo_oqFM{1<gEZ+`r~H?ckb?fmch)%M=(?s_VJ zFQuq$@x@oOS07ZFeE(;=G+T|~j;QrNpT7LrB>4P(MBuakzdkoF_wW1nI{sPx!}O92 zxw>ON-rKLQt1l=u{k8Vv=f9IDKYaS8p7US1?H=*wmq{Ue559bvVlj7J&+inATH9H^ z)jNJ<$OZNOGQZg?cIEy5Iakx|OzaJ}FS9M~{T1i^*M9GuzfT#Z7R<g{XCpU1?Dg-^ z4%1(3rnT;o_nA!|<X!vma6#O|<>#(z$kf;8bKU>4Zf&qd@QbzA@6^<PFZ=0KVJNrO zRCC`8-eu35PtV?eZcDz&pHj_$<fV?k9c#~P)pgWbrA05@e(QDSO7m??w^fI~ZI+fi z^r>6?@#XtwE}yfEWajwA^R{o^|F?9b{E4__*B4vrzVU6}yoWa;SJZ5OWm#S2Eot63 z9{0=a-|Nq_Eq?joUy$1SGPT3g*Sj}+=Ksk4=96AmJ@?A(&lg{wOenIto6{;5f9`)Q zm!5g9_Sx_sMO>fHtze9Or?Fme?&O6}x212K)!n%-Zzlhd{hq7u$NUhVw&?P`lnPUs zGi}TH-#u5)eLnr^-W8XQg}$A8@yOrft0(P$o2veJ`}G*(&ok@SKIC;@{8o_Peeu@g znFdw1Z_d{3ma^MnKiBu1e*C@t+dt{Vf4+PFpVjw2aev<)eeh)ZpHIJDAN<5$Z+l~( z3%9uK>{oH`>(eGb4EQ?f@b$$HTl_=U|ID(OapoSMoATY&ed(81f6S4;{=|J%_}`~V z7CWx&Ep~4<Z(hDDs;_N*z2yA*KW3L}<J{Jl&Y#+S|4ZqfJy-VLiN1O|mRD`_=gAj8 z)So}+zWJfc&s&?rD?hKQx%o0>LG^XN^vMq&JWBae6=i$)`kQPc#(xJGZT~&Gd0GFL zyZqsRU-kbVwf}ppzpCw0?uuQ!q1zX}G7Guew(533sr0Hm=dJ%^eYP+B72sU9LDf{U ze*fOR$KN`$+e^%!bLX|~Vg7jkJ!Q7%-5wuY^Yd);?{iWG2VLK<lYhdrMeea%Oz9Ls zo}Vd=NfUZEv#jX5V(r|S%kt2HyYgybl!<1POTUVA24{e*CR?&_ppuwhCg+9N-x-t6 z^S6ti%LIv6GB@UWY%0t<66!8Fsjx?6&zF_;`i#56uFR}C{8J<5hf`d++sz#ujjf08 zbku+7{_EV!AiZsxlgO-wtvg<Q*<|jZU=|`>7;8M0C#vU~_wh)k5?_0Z$2XWy=hk-y z$Yyi3C3)$2_SSP=F#UJ3;j3on_5Ca_@_w&TJg#&5qi#yM(Y~YeKS$2FzW8AC@5h@D zvwN?b8eFgY@`BCsIT@OD)=&OqmK?bl)OGT7oM7~VZ6eV|+iz=%^_IV}-1#J?M<qCi zd&~Q9@8b<tY*!2y^f8w5tVnj)o#bHNvq{-a*6>wFpnK0dHAAaq&X?_Xb)R`*Hfv?@ z;@2TRroXgbTrdCR|I+&K8RE=OYMi(QlN@f=ZsWaVYBa64-Z{zV(%l;7k0;rA^GjFP zaHN*K$w_&+Z3|1r<+L`2u(Zf)mu|I4F7E9-db^Kl!QNi)las|KE$iK36<ao=MxglV z&Mjtv&m@={E6#E^yjylcierir$99+O!q}+iJV#noo|Q^h*3R;|=XE^t#OrhFGadT& zh+4~W9oT2P%R|krOS9gKJ)UU`?<&{ywKsUCFvK>e`Z~0w9A#V0pi!JWfBl?AQ;i;P z-ScjmsZ_UEfW>_2!r0I9J}#d$J#JQWUikW){c$XZO3&k*Bce`iH5v1Yd26>^Y;fg} zn3LQcxa^Xchhj>^+8M>iD*0IK6xlM*<Z^F$FYa@^-s<1wkMsNfm;6~?|JYvsRK19E ztE}#;j6nBptEev<FDyzvm$-HJiSE3GGwlp_X(pWLZcucJJtAPq)<5&v1lP<X8yGKb zZJ*)OA>%P?V+fPo&x(b4CD)!_FFs|uWNFP#hK$dt(#}emB0DEse|DzfV)Qh=Ei4)D zpV|~`G78>1?ONKI6DL|kIk#munB~`(2~0?4&5vU)d2TZ6$&HDV{a(7oO@A5rSaPzk zdhJw(+;=^OHzOt{?VfafZlJ+6M=wvC#jFYU*Tt$#7Fv2DscVl&xcUjk&$q$^o`^c! z-8uV&)xy&y%Ip044px;ta{0~XWIO+wv(iV&ZlMLflbXHxnoEMb8_YcWWQ0y#GP!<< ztA3($b;i8gT5WSSFSlH<mBlV%rIV_gVqV1Bu)3KGou?R{-uh)<yt?e?moxm2*H}Hf zY&gH~=bK4CSGe(7J6#c6)F)8d@*-Km<+z#qwRdvLyISL<ro31tu`u=+$3`Q!8UBl^ zX3w{obezL`LQ&6zUVpv$*&^(m+((wntM0kJTf)b$KF)TB%$aldL#}22yI>nX&tv|P z=zUvvm}U1d_|?4HGU58YQiHY$Yiy2|sjlDMU#u48bFcGzA*;h|%gOwX(<1f?T}wMN zPw-%uttzWSx!&B3BAiDhAE-Lmo)=T7(A=*7<m%^~#tWV0vs4|dFN^Kr*Z4MJT0`yb z@`*j(PY!mT{1{Xpb5}6)qGHH|$EFU}bEi#MQykR2bz=Ck<JVYTHz~i|w}Iis<m4?n zrV*`s-r0Jw-6(QBRnB<f?x&q^o^L1;if0m0YI}FVrhKa9R=yf9AH}5_Pf~9yw9ZJ} znxrT3Ma)9|#Hs8LIgQ``cD<|!INod}cje=PKK4?Z409U~)3O^E7uWa6m3~>V*j=96 z)~d|%T$%XKi@GM4)jiCQ3g0!F=P~u8i}>Q@G0o!5I%o5wm&o{kIi~zurOraCW4D<9 zp6k}u(mv^XyAQsZ`fc3==Z?S~`ZqgXM+KQYNOqdQHs8C!YIU272H)iA3~#?@bUbOY zsNTWy;uGUzix80t{U=**ZaurQ-Y6)|R{UDp)t-#CHl2$ZGM@KWJ$Ml7`tOC*g1Oc* zlamF`XL4THYv1hHAaFFd&db63+<mbXW$R3jnVouj%Pp?l^2QR8#iGxrPGk7$WTKh0 z<<go<y?e}BpIROl58tQHuuDJQM6=+-p`a}3!n;?(jqXjluyC(XSjX$1&Y$mue+sML zk}%nwp+hAkgL{d<_0?f#Dur#?@{d|SW?Qtj<KCn5)7R_A@u=^e{PD%tqffV(OUCiC zZ+`f)`S*;hH~*@azqygVs{ZnvwH-G<tv-7EUeUXC^VdC0F`AdN>~(+tygz>#{%sIW zdq4fmy!Gkds%78275=%{^o^obqTyDjy6G>kFFY4r&$Lr>fwTMpZte8k=6lvZ`Y+ur zC^NiJsv9x6pXbEx*r^O}C+t;cs}y`JwBTLb2ZtBhP2apL-#SeCd@gXp`-9=1cC}dS z=T)ruXn0g;!MhlT_lqqaY@K+$%rJq$>0@v_)0R$aD|WM!=l`sGQu<b7rik*%J6_s} zcW1gZ>s1u~J>XPdci%GA^1{0&=fbPEgcjrmF)!+l5S$&)ye0Yb$?8e-9rPGaU93!B z^YxnNWh1jsuQvXCVko~%`1rHwpLTuMknXzIXwtr5!gbS?Gm3R2mfT+96nAj1Am7=~ z0hMdSWgNZi3O*h3I^f&WRJ=H9ZH?dc=gnV&%Hue1eD7YGY%lx!<&Ap(<8@ZwE^nNF zcZ2-hl&5_nrAt;QyUJ?*^6<D=c%pFM?&Do~3#ZHJ?$UfFHm%VodiElobDP||1X`D+ zaxckYzZp;<cI2fB?~#8&Q_3Y)w7=dazWevz?9U8k-#>q8JiK4-&qtPWf4An-)4x}p zFY#_nb!T<qj(B`Cg7J#2^hKf0{(8RY40rD?G|!m3`O%t>y?gT9BqW|3nURuzdFqyR zch!V*dOT~G_Oq;zKh9RR?v=$it_8E7Cj0UnWY64qZtD&`VgH>jj!v2LvJ}_H9g&>j zIOk3rQ%U-i-sMvk{n(Jod1E`b+|3&gl7#Z7csJ;|@~}<j_B^q}{L!vwT)mrf0`KK7 zsApKQ+n{KFq1f`HW&*eJc;p54?0E0M8Q}NTq_LUz(C!lDb-Q13A5#^#=|0aT#?bmA z&&uR{@Kkwa$>&PUMhtEuYU}eGMIP<G+O;!7pwUKgIfLJ}<#*WL{#L!babX{CY0ipd zXIbf2H!i%pF(GNqc4bdl&sQEn?vw1)CY8)73i(p6w`oaqMwxm>(4#whxtSOL$f@i6 zQS#b$ZBohZOpefv%Rl|>^ZO*yICYPidMeBGMK}0F8FKx+W>|2o{=H_&*3A!vR75^q z+`8r6y5?T~M$3>l=GPfY?Ox?fxIR~laaT28e!~s+2|}POS<jU+cY5FE3E}BWW=Q*n zP4S9j-jZ%o|CH(OqdSj#|LiMg@i?~IMMPUBIJ;q6<kAFZq1kJM7WmpZpD@)r;(3hK zVQ!6^_cg1^qS(d&_4#wWZ-h;m8pT`^&vMXUhs2SdeJn3_oooKc=}~iN!G!RRi;6O{ zo^wpSc}(UeD?`6xMWROn_Y#4nyIZq%3N~=-sjzs3-QXyf-ctYmy6^E0E4M3#i~0mh zdsZa7>`ri5wcOBp(G|g^eHx`MFO!wMj?eV{(*I5+c-Pdt@+K|C#)ATrr<>o`7Mx$V zrf=){%R5DaMV8y=KG`}`v+}skx%1kLug;h>F~3~5YeIPX@@s4#9)+c`I#_pKQBwbT zZXL^ta4xTtu7zfaoEPpk*9Yh=JHol7IEv|t<<&i({ax=pmRfK&STRv4bNf-JxZP<2 z>O65#yO&J3|Nq^ABX_!;uKmf^-P^v&q2-bLYL*wXw2cI0+zLH+_wKRcE#-OBn);8s zvX)D#R%E-V4&yD6DM?!b|9I&#-V!lkP}}IecEa_JtBHIWiK5J3k1d}Oye_!DYzg<) zTTGcpUcCw}zUHEKY|d3F<w(uN84aL1Ln06<Y%;F*c$ns0hXl(?WiNT=K&x{(i|R|% zXI@%cvRgQWQ*ow%Zs?U)dV=K&Vdd+~4QI^RQ&nI&WA1**EcbUcD%0Mt@oq2+E_FB& z7WXSvb^Y03%cA;EkGB7Diz~mM(%T-R9u-r*k0B#{x*L<)M&qR{8J|PMYqx~WnH<Vc z^8Ct74#736Uwqog_F|J(`krpSqkC(;8rJEmHuo7!+R+!rcwug^(L|+gZ*`GR)%SHL zd=#1NTp8a#b&r|uSDtH)Gp6Vr-8$Jr`L{&t(KqIgPPJT_HQ{#d>H7N&s!9B*aay<3 zr!w5Np2FjnANgmK7UQny{de5ibSLe26VG^|<9;AtQD7=t=7x*A?p$SBG&MCcui4~L z`PWsJ`ARH)8MeaK)An+0clcd*wq(zW$F8#auPOqMcU#46sg7Gx{b}7|Z`s&aFM`~s z+X?L|nPcht|ApVDrO_|T)HyEK?`h3y5II^Y!FyzG_oKV7=g#F_w)x)Cgl}Hf(WfRp zR`9uZqa%CswHgW8B|C#!_n2k7`kbsP)P2LWU~e<i2fGgK-P0NFZZ*Hys&KCLW=D2$ z*oK2@m9?!*3wGcCeC*f@$9c!28A_g;%w*6^m|*84UHSG-gc?_px`X0+>-h&;7$oYS zUhUy>@V0If`zAJL_TwWNOZCn<#m$zhI<Al(63jG3Q)$+e?3t>Tt~vs{L=2^lYg$Fx z{@J?4%u?m~B4P3AT8z6m=S{i$O0m<|jq^gs(n3Cq!qodL1$NJkjCRjRiJWj-p*JFG zZ<gMSJulC$Kk(#e>*;L{xq*j|&d-0hr!F`9OMUdEta+DT&3=}5^!l`TUAu47iYxxk z;Z>jfF~vB&zUIr5_v|0qYd2>UUA!TXJ1M+WOK|(nPU+x(`j_k5e!Oq~`Ty;H?KllK zg@{ce%*~VKByKY8E&m~}{@8xE#ES4+iQD3C39g-R{n__>jmm}VrwA>mTX$vmgOyDW z*E8Ol_|l~RLA__LGv|dqAM5!x-M8bXG2~9`KPcFlJXzIY_S5992S@+S6<ScYX^O6w z?F8w<zbm#R7hH<H>K6AqL{rhF<B>%@<BjiiYUN3;=MPn!jf%Qmm}RMW`q++XVfI#1 zopZOuXDhCM6Fy^i9Mgg;t2ayw=eLf2ef0fur?~I;QVw6-rJx;9zkk{_(<KRO)F-8T z<vlU|!)Z1-FS;^m%3Rg=N-7(<E2Nh^^j{Hv_GaaJzv)g21%_UhF3elrPxm_BXvKG> za6un)smzMU4!fT@teUw~*7VhiK=)p&tS$0cC3Ai{|9|0Ev>24kP6#s1ezK=q^yGim zr25Jo);u<cOW(h~`}g10!uq#&|Ju|(_^_V6-sa)u>FVmBda|2kSHg@*n-7)0cZ<25 z*f1~9>QwIzv#p$r%2tM3BfC~FcMkrdVSg-|Vaw?cO=np(kE(x}_UM&r#mT@4aw<Ac zO1*W{^tq}8?#-1hysLh9w#Y<Jw>8%;?b7B;yVn?4BejhsW4WWSdr44xfnxps?{B4~ z`B)Ub2~KCo-S<?PRcL;TCgUxA4IYUW*~!;0ow~<hc5SD^-c;_&-24XR18-i5?`FQn zaQ8@BzEfVk&R$#Y%D299>?JyB=T#k)6J8aETnraXpJA?0_H)8C)(NVw@|#VVmTeEv zm7IU#=mT4}{M2*Haxd(QHv+Xj{Eyc|S|5FX@67wF(dK3ybY<cqP$T3;vZCwpnU<hp zUwhZwyz(Y7LrL#>i+}8?WB&MZnog9<gOcyTmYn7)uaBOc1uBM4<=(96c*HY9XhE#s z(e@Sv{nb$nCEq=FUYXA8w`Z|7<E<Kz=UZ!@vKohfdZk*LTcVS9KZ2>mvR+fNzcC`F zZv)E<yPqkGcm-2LRjysSwa3Iwe6daFeuj+aF$@da70%UZGyJ|Mt?-<!#^aIRK2?X= zP3LY$p87UDJM(U|qGVs(n_G7~USG0G7h3H5sOy%h!)_I!23Pg9i^ER5zH~k%h(ln` zl)AhprM&jDGm^P36$`ZPadXjovLUp7g-&M*qf>`StxICy+uR9mF6-h<#e2^0y=0kw zd(wva&&@LKub+<8kO(;5R(7^6<Z%hKAz?LXOa7#iIWt}Uzwq0%B>Lqt|H<oulj7X3 z=)dl4+f}uwXWkz7=ZY3L<x-@V?A~~qb(7-FuDP+DKb|b^{9cv5zFuGb@x>M9QvK_f z-8$&X{UFKJb-~m<W;6RHP7)4}(q!Bvot<5DQ{;8)?N?iOm`!ZkGvUxL5$(*orsrFj z1HuF=RoD2=lPrFh#9A50T#}pftts$Rl29m9$>q0`3Ud@yG7rw`-BUGdwY&V0zu&zY z*7bf@bCdRrS)HN0KR-Wz+1`ZuV1eRgLJQ7Lo~z3BXqmgJ!|nM=6PwE)-C4`D;5QQo z+v3fgM^hQN8_MEVpXID_;y>aRGhLs3@}Ba*X(#tgyB1rVUDIXAQM+6_vo|5>jNtZ& zo7KkFZ-a_*1Y1tdyRFchkhC}JoOG9jvdSkjkKz(g9kI9M&2mWN*Z+83z16qR3*We# zSKNT4yA{f=)oO^8H#P6qmKSXg9+pcyJ9zlL!8KO?PFdq)cUWem9KO%?Qfg-9-Xiu- z!be#j1oO*odS^X}SI{ak>ULDrZwr%xEuBx6FAV>5OLMzSt;eNfcUt#U9m?e~?6~ag z-Cz{&XQr;w9jj6=U735WXQF1Ob>S3-yCTn07;Z*Cj80HpdwTj>&IxmN_|+(`KR5lL zwf5$@*_pY^WDY1#n4`J=$@jM>T#fEAxfZeoat5rgK5RBge0!o6!>;YlCf9zSa0-9t z7E}H|-PeO5$v#AJy>DAHyZa+!GgXK3y9W&tM68{zJ-U^yBeS#XaDAwBWp6~{DaNfK zC%a}Ya`keU*xK8?%~5LOp{lD!`*|Br7IA(0rVzcLc7GDMpV0Rg8hk$mzActef8!D8 z-em>Kwf)T^vgyw**zcOW=0(`9mzNhwC$-*B{_(y3{Qr1K?GimlKf5Bk&hwJfB<@b{ zaX-BC-P%98!AkXZKO-K_>z7or@KTujOK5@bLQbL6=d<#kly1M0;&dpXc}JZ);{~;g z9*wQ+E3aR=b#mLmNj7_{bl1hNW<PlC>Z?emDg7n08Lpk2{~e^6QFzmi``(-vVr$Q2 zzVHd0Qxwf`B{<Ldfr?JvzDf7Cw~L=-ap2z6dm}1pt|oJ2<=@Tqy?e^+a?hv-JkkHd zv>^M}+=CA;Mz0LiW&HJXi%im#@8=>;zD~R1Hrf1#&ilE63|sbEiby)%S+#;iqeYOD z?`(0C)}c2(_nsaVVVpZz?Rs9L$f1ty0cSUMHeOUb+x@14xsVrJ)(O9w5pcZ4O6`i_ z!amNoZJaCFM68>x2rlWXS14t9`B=f@_)J$&S?3IH;wnAe5Up3HYh$}p@V@88&?eW5 zp_@uK1{|0Yw5dTXu*@ISQ~lF#JEsD*jW^$W%L%iN%W_@~W=o%?D0^{-iGR8kTBD$v zR=9VH(1P7}H@DT~^=RFDFUoNDY-i&h?Mdfe)Vsy(UB=JM>20=VX{mAXTF*C<OCsO3 z?$KL#u5_`DMd8=ULJNF@=lUMG#Kx6f_%^W0N8riqi%c8d`|?go{4!&Xg=o3vy0{JM z4ld!r8`4=XJUf5j;^Z5zqnWmJZ!h3#Ji0xXGvN7oL8a4P57#Wcdiv{)CmNpdOH>`^ zTi<>oyMDpBdhW{J3rf#^NQVigXV>_MXzWO^<>>q@=ApbLV*RY-X1z$ipEo!c8Hkp1 zZ+Rc?gEWM);<4lIhmNZj9)*se$lCsrcyY1tnZV!0)+hV(mfoJL;L&q3pyNqv>Hq7G z%HO_;H;yP@UtVT5<6M<^^G)ry2j&(lE~wA3ymo2VdUX@Cr`P5^IwtL1n7gRUkg;=f zr&q%_v98(z4ZSUKOeOFA4xdXDP?r?@bnEDp2|-i7yX!OVYPl-e{=%Yzdy)vlS4-AD z&tE2MkCwi_kP`Dnuc^e&yWw5%{NI9&>MvWwKI!I4-MSICVWVP{kb1y$hS+Hje3rau zxxHg+{g!ptHKfkSCLh_efhFVfp*aq7Qr6A_Ro3TbrX>hmkJV<}rR+MnX>*vxnW<ac zPV^MTbgt4+Jiqsi&zYSwr<6SN?r}S?CeE<^7+bgEtp{@}+PAP~b@S`}tNHos(b0lS zkl8K2>d6nU78pp+dv>bM^xA*>g3MXPFK0i?bG=%Rv(Yzq$u=du;OLEdTd&@FqQqeN z-m{E9zqzD8#?_#6W@OBZ<&8UDr~H4EWn?4mSC!wUzWL*l@8ABEe0#-cdH2**J$A2? zm6<F%CS30e+5IF&<d~}2qg!9@vx;*Zc~Y;rPIfUH4@=UoaHjex$ybg%nX_m41-Cl> z;|anpFMFmjyp1Te+xslQYN@Kj^zsVfi8(z^*EWiU_lNwJh?Kjp&2UTEmoKSRel5cr z>!gO1Iqe-q{h^Ej-&dcDwKlE0D(dj}nlDS(w#hNx+4Cz?3m#pYDqZ;X(@wF5CnrN# z9c*=Y?M}VEJe}dK&@Qu|^&CmXp-d)o1m^6t3YV+sy~etv<KChTMPJQ44)X@CpS4-7 z$Vnl4v2vo|El8_H{MC+t<E>VDR|*&Qalh^2UYYi;Ol0L^4_Vh&8kdecPV6)8e<6R@ zv#&(^?mHGwCk3N(k@80$K2v+b*Y@?C9@{NP>(eI%J$o}bFWlXsCOos=z>8m8<kPLK z*|scwkJutq9m+pH;brldcx3i+rUgC`h83@ms^)N4<{pyDd7xtLw`JP3WvlEIJmzXj z7v5cNE5WoO=~?`VZ28J20fVTY6PHijWA=9e%ORdUQ$O4@=h!)2mPKUtC7}gpopoDP zo~x)j+>ICH&<xq3J?+!3o|fX;kb0%c-;bFVoOPGAIwWPci!I~x#Xm93-t(6WEjZ^s zb5F?}>B8QExn~V^qrF{=gU|U)7j81htl(ZExNdd$*+}6v-Pa78_t?A@%eb#UtB<u* zXGOB3EcdI3fa6VeJ*+R;URo7hnYg%5ru4~+#ft97XF7rkIcsnsC&#LkytljFQ${XN z;hXrf+YcFocf6C`xBLG7Z+~9BtD9$6@Z);3{k)1-KTodzUUmLM-1|4H$_?#g`{ZJL z+ti;2KV7G4XD-(r6tq$B`njLH8M>~8pVu=j@K%|dDBZMX$x*L}-J2RyyL9R#r!(Xp z;uewV%Fds{@YTtd<HW*6-!2BlefP1N^`PEx!(=;mRR{as+AR8d7ebjzbTuRk%+61` z(31D0RMt3$Nm*^$yLPirzwez%4WH((*>Hz%&684j{rn)miQ-`|Z+E<w(vEvF%`5k6 zRLt#o0S3kv&k53nUysB!sK`Ebi@ELp;G|o8U~jqV`fRVcohLoZ{j)QB8CIPSbc=tg z)bY7qYR-fv)=wIXFWy$@Wyso_b#7+D#K3!x7Bjs0oqEY|Uf;)(p5@6lvX5U%oX?Z! zPh!}r>?AArsw2R?<(q3upK&xOv8k14-~F=ULTU5->A_!57p>a2Zcdinh4U>tg?4{f zc$e+vzB4Ch&B>X$$6(fOq5mcRF?vcZTmEw>-p;6Xt#7*M75Ck?vrS{6^T&TX88Xgi zESPa5vY>U3S^hT}#m>t;-VJ*BY{HXEHPR|o9jq_TNSY*mK>tZ;y2*?O2NrJ;eiRim z`(dQVgeAPTT$Oj#H6=Gltevu5^wX{K^ez$0lkd+>{j=}xuA9Pba!-E7sX9!TX}`0~ zeGdC>!SH+elG(xalhO}PW5^A!<dS&0W*tk$<R>x5J@3iwX33D&;WzYrd%!K`dQ9WP zgoEB|uSUfvCrK1V=!SfJB9ql6vd6pSMXF1>^b$eCHQ~DQc0QUvSOjiNd^6)JsLed1 zkF(TgMY5ADr0Oj@+7go7F6;P;BglP%Rnr$kfhCX6DE)G;FQ24%*UP-Nt0dTEVwm93 zfSU^hWdxXRJ#d=fCL*oy_R>X`iF?*0zKi-5+^_zOYn^y=sP(bQA5(5f@A<j4$7mk! zvd!#EVlQ76j#Ah8xL@$P+BJ#Xgu?#cLJP8gtnD;oj9B^f{)yMuZf;Q9oHAjbJ9p*X z-<KzJyLirdx^d$5*zXDTLat?x=51DWm>#xyVaq{o>!0hEY)zlM*xT-uda>$yTR)C- zYK5-~I4>+MySU@X&i8FQ)IYIZnDl=;>pI_iENXn4)*g+Dnl0_Z^885a8}A0a>z~*Z ztTF}H^zP6r?>(j%t^Ir*tHXCipPvGLUk(WeNEhA>J)fH|6q%Sly?2LOfqwlnj)*mj z)=l_qx3~NAW!115EW24RalE_hv^B+Ixu^S<i(SF1w>#vreiy6Xx6|X?*3g{1lfNF% z`Fh`^Tzl2FKUp6)Zl81b_46EynLX;WEq^~=tX^;5VE@LJPpY?=$Fb_$>IwU~pH!|t zx#L<wktjQhcf+>JmG@fvwdb76Zuphhol$?Y%Qu|!Lh5Nf`G8`UOIP(7UnRb9I629J z&35`VzK@OG2Tz+HV0Ex&dAo*N#qWg%<1NRHES5Pce4V;SuQp$Jprutio#AcrwVjr0 z#FrOOX{dcKT*M&B5D@ia?}Y1iYqQoSXCL+JWLogMVqs?|!_s$`oZ`yooUC}Q&2@Pi z!`}|$diBDePn_bui%uvKj+o$T6MpE{Kb4dMg?qE6G4P(7XSC5b^vE<`_JnNb4-SqI zPs_QN9K88Dv^XOu&q98$e}`jPd~Wl%zfCW11RQU(GP|-7Jm#CRJ;%db7ctoT&2Lhl z@nld=od(LOnU{J!ckb{wmAb~~RQ=a`Rx_?kZ`w5HQSJo2z)fw!QB#DMG8M2d>NZb* z`cC!E4F68o_fLJ@xEp@W3_tK-iMuRU<=Z1M>>ZCb?Q7j*w$ts~y{_Q7-VJ3+EBW;n z8Te-?ubVeRdT!~ao&#IAyz>dN>zlaf&zl0q0QGBzYU=ka^PhZOxs~^mq%PyFE4Nxj z>RWbi-}+^r?ST_&Efa3LdcQ1YyzuP&6P?B%0%@EV>UMN2n*O`ltHEq`(+ru;=UZ4b zsv8bg6eUdF@in*e!rtJUE^ge9#LlTYlvi`HIkTwO{qk;bIx+F#1)KC0N|#e=JPuYW zNi(!$9*S0Io$y#Ur1*32Q;us@YGs?u&zfc2*Pl}l9rcw}egzurw3{QS*(QlJ_^X04 z_}i@ID$HzMaH%>^xjvn#a(eU4pR*tCTU>F?AbG>1t}0cB*_+#1?sdOjGle1dT2^tZ zO`+*gp#^87Eeq6Ci|*}WTk-kYocYp6*8gK#a4y!ism9N{zQL;btmdwu_ybWf<?6Y- zuIo<x(qMe`NAx25##SxHTby@&E^gd#>bP6Y{oieK9!l9<Gd&o~xMk%k=l78@pO&&@ z1c!bRTWiw1dBXL(t5lMU8_f$l|Mu>wa$Cc%$0<E0@5olpRmvL_w2$qac5T@*5vGX5 z!sWd?-2U(tPvFju%;c({7wmP<YSP>vH`y|eynhv1{4-|Kc1>d+m&DfVpazGYENX*e z7WYdzsW%!y?h~!Lt^_XG8?@x{8RcK@<&%`}dTrnBIB8L$%K;U>JGw`|OKgw+^RTQm zPTKsyW%ZxO{!QdN+n@6P@AKxX>Gc_PYj%rYXgL2gtv+U5O#h|YKVmP;zW?mq>~P6* z#__eE8!taz^?6xBP>O>>fq;#p$jU!_S?ug-^>IA^pWk}8+-HGJ)qCC3hu+;@Aj|Vl zzWd<+#oyNGE3^s-I;AA$FUh^Y$M*mH(Fgw{Z9kuR(ENSM&uuwh-Y+OCytHe-ME(AF z+uuHBRXi7~#ln8wtY><g^n-u;;ra;MnuO^#(d`F2cbl6!?3VcV{Pe^6xZ2+>Pn4{V zKUq}p=lz1Rg$EWdW$ItWtG+WqaMI&5&yKcjZoJjX6t5%tV^I}rP)X-atJxN(<QmEY zb_YB-y_6~bnjNErB&Vz@o4~fEH$gV_Pd{8=bNR#fVE2D*7wfjlysZ!4TJGH;DCB;; z<xOg<<~_%^PL1l`tn)(dziT+a^2SEt1fSuaW{@TNqCa-sdvH8O(s^HN>bErME!_|6 zH_QApzv{0okeu>fXW@<wp3ES@-7^2SZ#|s8fMeq3!-u=exp^<>wf!%#{ImS(=JPI3 zbQx}H%>OI2rTd}0ZhL)5{ofC62`v6MC3W8%{lxdGSv11n^gm;(GyijTq`f;(xkKY? z@Nu);8TVy4J3Z4TZgbonG3EWV?oY9{wI|PBuHkWU%$wkK!SAHe{rfB1on9?}n0+_M z|F`{l?Z0x*F8uxF7g@h<)^h=aXYcYgRU{qnAFA2$`faUMonQO2&rZj`KG%}1KlxKa zmaX8D*}>Zj%C^?Hv_A`6`1DtC?=&9<L4#-8j$Pu-X1=_xFaE;9pNlRO{@v;3-t|EF zx!7?#wUwb6O}DOo^0qRG7mHeFAHGCYLhZe*#ks#L1HT32HQ&1W$xwFI@z!at&zJ6Q zdysshS|We#jpG*>wyu5}UXrm-YfDW1Iu4C`$unE^b$=ar)AD{}Zouv+yM@l5ms}|N zyYtmf9|56OmOe+RmU~QFS3kX8lCe(@r03$Lz?4sKnv46E=$}?w5v#j@q4Q^7kekoS zzFx%N;K6f|^YGT&3t}^NcFSH0wleYW{uxofF0$08!{Y^~#G;a`vlo<w|Lx#A3-)Mz z@3fn@ES}r4_$9GB2wzz@ZKi~+HprT)rpe#MY^}a%+<Rx{_%`dOtn94!T)NliXU|JG zmXf>9W@79?Bi-#F8C%&|@40oa&wo8f&1}hwi^>6$tbM%#c1QhlXn)r3bo%Rat?W5D z8!{M`7nS_JaA3>o$Hh@;efp&__3JJQE~@W8W0s)gf9TF^-GJRu=N|tD1z2dc3cI0| zd~tXBOTLv2TUI~xFUhFWGKr~Qcga9~nxkE=oWN4O<!UdQWBs14WIOj=>H5nFm%9wC z{57KrJKv~f#CuBpUtr)bvLNK;-qMaa)!!mSHl5AA;AiTl9=`KG&-AGmIJKtoF)$Xt zG^kh472LpjYvrY|(|ap=&;NXwezWjL<ip~+ACccI?f<Mf$B;6A$M%z~UMJmqK5gk` z%W|Lh<^1Nb`O~9n?XJK2T(vfdX}(N#nHh)nl)cTjCWiHI3hVb;D|dElRme(FsWVqv znv(tcmi#-Umf>zyJF)cFqAM@EclyO&SwH2dK$1e4ME#Pz>h~PqdaTyp92P$<s@C%Q ztJANhGWG178?`}f?VS+O8M2vQEV94sxbos-%;Mu;rJi1zBy+R<!Ad3bwG3}PmapIB z7eCdi*7W+z)md{n7OR#i7BVFsI&GHWZe@GY%2u<q%INw_&%aiIen&VpT~Y*s*RX+H zGPm^Ct}8EJ@ARvWzyA7(?!@#>=R9A#<TjTrxojS}Jl|{XzL~GT`0mwppFQWi^JA5} zo6QV%cg6jm5PIsr*vHrM&%D0Yuef%q(p#X&!)oDlHjY^fWM6(YS^ag(l~*rgRxZDq zzhZ`k;_(?BNdnK0<}NH-ay9VUs})yXWvsgzxc4phi@n~{_NHqu74W@K-&ayKt+Xoa z)t8)gmp8wf%GGDfDz8|;urTQTg0dx7%Oh96_gcGecJ|lUuU<c=*a);A(5PMHb)xUf zPrKKjYgeBCUR=9xKkMTH#SOg<jTR@3Yo%AnW}2GU@!sBUQ2TY-d8Zl61B2@xEq%BJ z6a%*Bt!(v6tL(17to-ZsGokRESN(U!<{7T0fxG=*?qu9j8pXA)eC}EGCl>w}3oTub zf7Z16SMs8`b(?*9ZoS^tzm@CWo}bURcHM<<@{zaer`-CNyzZ^No#?LEg|F>5ului4 z`uBOv_4<2{0{dq;dkQdn|6aGRIV<vZUH!h$x8~bc{XH7CHGcov!!=g@cNT?iuZX_x zQonWW$2;e*=Ue>x#qA%z|Jqe^`_(Oc!J7o1%vsEt6@7mv`-b}kjNioV4%Dp`F3A6~ z&+Y!s{0;XD_`ZqXJ6N~3+CaTnAd-bg)UlE2^0sZo>l61sG<&1}r|oal@rU>3Fq!^3 z_qX$JoAbu~A2hyY$95$s6{-~MY<FWxRK8svkeh8&|K0qXG~e-mhaTUk?>}9*o_$f) zmD#)He)HZ>u76nb=6aR<_ZQ(SE>^so@y6U{^553%P4Vw%-<f=Vq1*kPmp9%25cN$w z?{wYT`$9fFin|;v^I7*y&zrs-WO8}tH)*@G{|>FZx&C`rltR%9O9PH<|D42I*S_7} zx$VB$mcL~S-)^tp{xN0AgP1-S)viy<ExaMOrOwMP{M)9!Wq(2Ix9r-5)t`&5ys$2x z_)XgG(!WEVx7L51^voie%kmV*lsR8~E?cjNopbV3=H%{gAE$Z>Gl&TX$o2m5DPjI% zsP6mc_>n2M!+Iy4-<axr&sFW&lUBwzx;;_fE?z4xsby516W+UV>(+W>nX2g$ovnR` zaxd_`Idt~dpP1GBN){^98yb)PGI3b@>T|zV?Wc7UZPLUh@aK2Dew4E?>gtR6TeXi& zQF!)BRgZK2uH1mtzrOsQ$|Y#IDCX<gD4}&1%vQv<%7xu4zPa<QQxgl{jzx>SnXj(% znt$ESjYV-jk5`K!=jD0#9k;H&w7C9OXqO?QVzmFcs*R7gcV>kz)z1ojBooJ}r+&G6 z@d4j}-CVVi*-{f0f9{)UtSn+}<Q=e^%XXjV!v2$+KhOJEAG%Ya!*IG)@3dfn`I&i5 zw?bcdK2;W8^!$z=ztgFC`I*mLgs-miiod>2u(IvUp*6`5J6Gj`%naV`cH+d&GaB{k zd||uVZ#!*WeQEpEEsE~^wJFE#PTtJq%nDz){AxCf*hTjb5=;3el?S|CRT8q>tuN_` zgyu8htV^a@4Q25e%bVs!KmNR~yC`j|__WS@Y;RZ0d%s&fF{4sw*`^D9{nsK-=X@6P zk@=<NxVzj^!>Uw^FGBZqvhCVAiEqXCM9fbYso!jOzGKyw#7~;?ZRZkMHzx1ny!BRA zcokoduKeUvRUsV{g)BD-tTl+tl>V~2(nl;f=JyN+%X6JV9P^$U{$R`4{<85_uuhr& z|I>dmEd4+BZ*{$@v&$i6Z?eF&$M@LYep4&k6`WIEyZ8HsE3coG?Y94tP*YTt+x+5m zVZNCpUv+*xXyES2pZ`<qXZNi$t6v|@_j2x|8!qn^EfYV*Dc(QVpd=w*yKaS2ZhaWT zEy+pc$BdXNG8eDzt+8fK%3jodN5|d5U3I}+#YBT?$zF&2yrn-*o2Db>ZZ>`O)NRYO z8FbH1Fz%C_xzt&U@hy+0it{w330qpDIWtbmSvCvUxGc1+kLuoT;+%717mGseC9ebQ z`A?5-pJwVJS8UBv7`?%CfvT`54_lYtw%yU*+tUveo4DQy*~qdbh4+9|%KYdauIXzS zwiquF;c=a>;g!CUWlM?pQ>ISM@Ve>W-s&*uzV)Buc<yPylG~Ge|FHkw+$DBYjPGnQ zcc|XllnIKF@;5h?KdQgh%X>j@^|w1t?BYG@{DHstbf1)ar<cv0@TKv~qZE@JH9rGC zai=SMvYDn(w|G6HuI<4Lric`E*&xo0m#j~pul-%5==qR)6~mU}hB}3l_RZ(|Iqlwz z94D`9-P@B?7nn{<l)b5PuY795wFoyopJ{t`)R!=3^rxzP=sQyVg6YDf`cS3jIfrcC z`lU_fa`4{lqNc)>xFSb)?Qz2!2}}a>{zr3dKdw7Tcv;)pmgr3kDF!NiVL3av9jebT zHTfUx@^$FU=#8#;E$eljL;TZPL+%G6jy{~;4&J|ovW2SEeYVGYzn>DCaBt#u)33d3 zir?4sKAF%mb=r1E>r~ONRyz_5*z0XiSXZW=$-OZ5nYe!V#qQ15r%(QvaYefKc=%<l zO%nyHdy0N=2t3`hkztG2^92tSHrbrnI4S>S=rJ|MqblDf=01rwx;V$*rEr4T9{nfL zQAWbbE+X!+TtC14X!i}<p&9MHearg|k+D<Qg}ofI&oCz!&4`e@AHf{8$>rXTDMgXq z^($4i7}oNh+*SEpWo7p=h8G|CjW})GGX=Iy$Ukqh(UtuY?-RFuOG|syCYDMpEx+cr zPqq4_nn2^0t!Lc!nDR~XUlO^dBYzF!Tb|5){ACi6Sqr=zyvqZPP6lmq%;GWoWSy$C zQ)2E?Ewx8H7X3S?#;;RS@3zTnE<5G&s`SKfzZvz<{nWZObgpmW-F4aL$)6|JRfTs- ztod>LWQEZi-g|$%zE`D(@9qBhvf#^uEF&As`F!uc>K&gMyXBa+0;_w{{#woq-Cd18 zb4sSnnj&-|iswY+GL?BtdTYGb=cU&;DNQ*S2vYD+Q@l<fon5ryThR(774{^z2!^Ox zszwg;mZsL93cIAckvsdq)3!%Wc^k#@bM+?{vF*BYH0s3mlK(7|nGC#sRx7TbWy#9t zIB!Zg!>yTSpVZpkNKWMgrS|2EKi)HndN_BVSbnC3<xBmA8|EH~+O_wDTT{&wZ<!kr z9oth_Z#?;~=J|Oi_s?l;Q+y8H`RHx6p!bj8PnUNBX{)VT>Lasr6y$5p9Isw__&(Fy zDgIYpKRB_$+lS9+v)DJ2yKJ>rY8Gw!A9~KR`bVT%D*I>2wL0&aH5bgE-!jE~b7n(X z$+EAXcPh<aFY<Gb*Tl-qT$b5u&To}#k==RU@vX;H_u^2wwIP)uJJntsXmsa)6M5_T zg2tN@rQ*+A{gJfvnD|!h`bPqj`^`2qYvla@$(QB6s>U+>>FKFj@nNeT$uhQzIO}DI zE_GGh7GNFp^kdA_<JzHe*VlQSVw{uW>{s{oQq=0`6|yToU5%N#K5SJ@=+8L<>E8pm zESG5N35O<?Ejc!Mr<8wKmd#4jgLa0kuEORb)9W%C%9fnCUhKLrPV-agR;BuB7B2o% zq<4f~S$Gd5V_xjKFH-Z9?^9zT$(X!2>-DU9Z&-ixt?CVazxtbR<nHC#Z|7Z$V(8E- z$eS;^_iNJbJ1%cC7WO?`C9^ifa@AG_yXiHjs|7bW#<=Zdyfsnj{If2bXw6S+zV#_9 zd7Y~kH{dYty9WxH_s>?<Y!7<6yZ+W)?prbHibWi8cb4wsyfsnj{&~@#bxTitznbqQ zzPH@&x<vn{SDC(7`a*stt~<rA9a^^{L^a@3rTU~b-AUEgSl)U}d|vE2Z@oxm-0uU- zM_SG$d5J8keyo<^-u1^K{K@gDO7>x&_1u_}<R`RjW!vs(9rR@RP9^)bB0pD#2|k)o zuj4ZPbKH^L)7f4uR(t#^RPx{9udldr&v^g)laZZ0bAc-NlcX+{^{GKkb}yZzOM`p5 zHP@|nn!>GF(XS{jCca-~_JaHOMZ%?)&CuR|Bqn(FlP#+le|0R|@$>cMkGDT9KfF9) z`;)6T4sSgjGdZx(bjF!;{%(iw-TawhHm9aS@?b=9{qwg=zaBq3b-@Qd{Vyd(7NPNX z_nQ3sQM>N_)1{wYy<2H``F(L|d~f>Y)gOE0Gxa~!-BSE#C;s#3|0l|Ur?mGhZ`->6 zyr>*+{C^|6pSjC+pQwJr{L?!2*}>TdgL8xTF2A>I|9R1Wpp7qcvetjFtNQxS?)vwu z1qL(s%J#V3YO9K`=RH=x{Pdn1VcGV_f4^M$?{~~2@#e|#>(m}=KV`RkdM-dOVBOl5 zz+I1TIhC%~DNjBZH+OFQJgsVj?>EkU|Gx8_{<#wK*w1^yKb+i{p5DAc`H1z3yvCz> zuWqJT?68pBJ1@&!`P+>hKfmw10^Xfd+ANgtX}0Nire=wVs;GCeA@$o&Tyov_BUk_5 zx+9v)r>ZWJXsLT$9&lHwJJ~;f>vi+C7e(DGW3;YxU+$Z|qCcbd{_M>U>>B5^zJ9;W z_K5Qlofx;>(YtokU0IrxG12zc6HCSgU*<#$U%7RmD2<_k_hzzg-nnZGwL2Dmy1wn? zpXoo1&g_0;%eT>Juc?7B1H<pG<oZ_CjO}eYcNk9>YVW_No@B)^gQ+Fv#+=sm`*H)i zoiCT>T;n+#yzbs?=2)G&Gg1r8eBGmF^o3NuNxD~XZP^szuA?E#I$!l1?<>l+6a2hz z-bH13DP`B=FD%R(rpZNSHbu=got|`rMNy&oN{xx5?yP<b`#m2loKmL;FlE=ioBN{v zDJL^;K)OxYM2Qcb5qt;kOi>nO^--zYZSL@v*Voi|QC4}sh{8mEMbEXl!dI5vJ<xi0 zh2@ti<^pEd%{N?&-VhcizOeC?&T+j-$Ls`8H}*|VF5(evIsRh1<67GVw<3!}k8jdw zo1-V+c+_P*W7g%e3x~?C%z1XYFwnb2MCbXs;QFLfmt0D>J$B}=uTd&<{@dZn8s0hM z{EVPa6Prqmudr-2+tQ$^B5zTpzipdu!0fVS@v_CAI<mgSK8+3RG4xuQD10TdckaBu ze_VVzK5+*BJkaF+K6gux+~hBPc}=&ZrIt*YEO66JeQU07z-+c7dORI#O%x6&Iy$^= z`oM6;Y=v>Xf_&YwACosorRX?qnc%&{DzSd4u21zdpPwG3M=wYSr{^zs*5><X;+Px7 zyM2Syx=HH_)_I;YWD-8{(u?`(&EC6Do`fG&l>K$*dXq&+iwE}wS(EIYp9BimdCb`@ zx%fu&ZHBGeQw*Q(5qm8Z($eQ0F#FnJ{Wb0D*T%S+wK*6z?5QsaWWI8<FLv&i6+1<X zm#y!Ab3?t*atYgty$b~^S)Mal79M=9w!(F`^jdz-wXBtbE7@KMZ`xUUO<8A+`-&8u zQ^LQhH^^Om-o7en!i3+3PlcWpmDe(V;k0Ei{l0PY6DJm@Oyd)|0kfUC?QY!hjJ;u0 zAbn-o&4?$HkIkyNB$MvDvtH0hNmxbQzT%ccX<M>-`&6xWF3VU1Z#->Yn3Q~<;jZuF zM#jl!^DLe}ZT%#@;9A==i}uFG;$+5;@AfffU9QkE@=8v1TUjpVB&V>0;nCrBz9H#0 zWfd#7KC4?IVd-|NbHby)?#x%BWX!MMJHK|>=lV+vO&#CnG9GY0WvM3Ck}6fd&2j#O zhii=#Gbe`5(%S5`RsGBN1c$uRu5C*8+>813Tu*DN6xM}-yu@PqFX*`CQ`v)?Z7kO? zX5}YOiAnN*vG@C@lsiIKmc5KnnYQdy)~^ROJ%YJST`Z5;Rv635SDEcTlr<s!#8mw? z$?AFWml^K*t`=<eJtC8{M5C<2#9?i{u4MFknRDHjJNmy(n_-rFOlhG>sM?fW8J6Ey zAMDWS$=uug>%l*R8P%Ucdu`?~N&I&4R!vsayi3;@-d?-)(>md8USz`drc(*;>R-*U zygorde!jM2`K1>V%O5Dd*ID9Py3OG2+&j+CIfHvdjz}+6Tj9HS`-wK+t7|))w{*rT zL~pGBsqJ{zEz?~!K6{TsUy;3Qw(iCq+}X?}>b~sDC6eoI%y@D)bM}I5ZDPS*jC)Fb z0%vgS-~|VKVz958&Ws7(ZD%gej^%o^Y+1C1=;w`6H%|We^rfcEZl6p~RV5$W=9j<s z#b}#I`^533?>+h8)6)&+7PfPFmR|<%{+05t|8FGe7vG<DSx(Px*7A~yzvA|W_jdoA z{dl&*-}iY(Z1!+|KHEFtAHR9rbM|xBKF^&Q;eX)4tE?~4>-Wt5rLKPX^v%6*)&Cv* zo7#Q2eg4ITl|LjO@BhC?u+ngbp4caQ-$#dcCfe<&%-of_`|hT{C6?Cnd)t=3Uw3=H z+vfc?C+hzEuYV`@K{@Wg@y8!u`ewJ!e{sn+Wnbajit@6R|BL5IKRf(q^Y+<N&)#jz zyQ-Hf&KPn3_Lt6kxBchtPn_1r6zX^B@Il}He~xB%w$JEaelFYp#6>>!CsoNmiV}J9 z4Q1VbT`oNHZQ1e{9dFn5+%NLWEA5xre09D^`R64&Wc^R&=1oa1tDpa6PE59^-3z(E z`Tgsi_9WWv^V)j;?C&=m7j&OJUM*n%^k>EY?qzE^E6-2AthPG7lI>H5fA!(`^`DlW zKR*3(P3O|tNmZtje16N<w;jIutY81w^8LAXbNl?`;(7Gb_fG!!G^fJy_wE1eppyu= z%gzPAvS(oUBFw@N;LXS+!XU!Iz`(%(K8&Cs%a|E-&cmB5>B$GPL?%mTi-7qDvZW`p zXNydJpDh9A&&iQyJTloYTNBJXkS)#hhhegMjux2vCQF*hjB#Rt%;fu7TwoE9@|?*9 zIS}O_`6Y~#r)R4{C0)VvlN>Jvg$=GzlNk^<xpIMyqJU$6rpfzqCBTZ1FEQnTD*!Q~ zc_#biO4Wl*LcTnc10)B>vw0a9a#KqZ^(u06pn<>uJ&+*^`I<CTqoep47>ZL%N;31( zi;;CgLl1F{nihi~g9O|%5M!(8WP?044v?!rM?p-E%M)XIZ$G&#PZ{hT<VfKLsfXia O$H_bMWZBvpK_UQAgyqEm diff --git a/resultados/resultados-1.csv b/resultados/resultados-1.csv new file mode 100644 index 0000000..e939096 --- /dev/null +++ b/resultados/resultados-1.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,54.331060,80.338718,64.987083,42.106628,17.005570,68.454618,26.041389,79.668973,55.195783,73.061396,942.530406,13.506042,35.253837,69.235928,105.628344,97.360947,29.034176,83.641034 +aocc -O2,55.768896,80.663603,65.118423,37.461051,17.672938,68.332012,24.130436,74.992728,55.228615,74.332204,119.838823,12.770568,35.396745,65.805705,105.958949,97.417380,27.823345,47.603413 +aocc -O3,56.147354,80.775310,65.131428,35.782588,17.349878,69.132548,19.048282,74.480314,55.189826,72.222201,113.247002,13.260861,36.812995,65.309551,105.764729,97.235765,27.764924,47.679364 +aocc -O3 -march=native,56.247420,79.856616,65.390898,36.071186,16.805179,68.407510,15.480302,76.433463,55.109785,70.282478,116.528145,12.497969,36.442963,63.996080,104.664496,97.225180,32.044512,84.902026 +aocc -O3 -march=native -ffast-math,62.011795,81.025611,65.433592,32.422852,7.532471,68.128822,15.320279,71.686815,74.892662,66.289951,279.035004,12.082316,37.916425,63.594457,99.206836,97.293901,31.949657,42.664541 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,51.586374,80.464217,65.302657,34.727925,17.552759,68.988399,15.510851,78.456615,55.112343,74.315110,323.043238,13.064046,37.040171,66.289911,104.587270,97.357496,32.588534,85.223258 +aocc -O3 -mfma,54.555447,81.036552,65.414905,34.993538,17.262875,68.778465,15.547181,74.053673,52.978592,72.270529,103.213441,12.476143,37.027967,65.601148,105.836646,97.302341,33.291586,51.790662 +clang -O1,51.963786,81.185551,65.955554,39.977180,13.083990,68.810802,24.907027,79.529718,55.099908,75.309607,935.403572,13.621312,37.250485,61.675687,104.798216,97.664282,28.761546,87.044451 +clang -O2,53.307205,79.676357,66.240029,37.717754,13.913974,68.636700,26.093811,73.777949,55.084534,73.532735,120.363510,12.577392,37.174749,62.927547,104.964672,97.683136,27.400364,47.650444 +clang -O3,57.411617,79.679103,66.256200,37.634408,12.206783,67.332206,22.997505,74.107647,55.104678,70.279401,109.671530,13.101612,36.638510,62.809101,105.440100,97.679597,27.174611,47.581887 +clang -O3 -march=native,56.630036,80.991643,66.570657,34.269952,13.839928,68.008737,15.708356,75.669483,52.140535,74.006306,105.464505,12.583821,36.530372,62.352879,103.878868,97.728939,32.218862,84.629652 +clang -O3 -march=native -ffast-math,54.187156,80.264706,66.118952,37.285313,8.787711,68.197736,16.420945,69.606141,73.317413,66.753909,258.520751,11.948629,35.921727,61.806281,102.550981,97.564849,32.243714,41.758660 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,57.006216,81.277928,66.352843,34.662259,13.800809,68.133517,15.786255,79.443032,52.130363,74.118141,372.311871,13.143217,38.231984,61.387310,105.277294,97.767097,31.875423,84.801864 +clang -O3 -mfma,53.627588,81.217099,66.297372,34.161053,13.575202,69.730781,16.247365,74.613835,52.179134,69.212717,103.985884,12.596304,36.562716,61.689078,106.106531,97.742919,33.525220,50.422449 +gcc -O1,63.882742,78.856126,73.686648,36.222100,12.020393,70.653458,23.563870,87.905186,60.871893,67.591439,532.155766,13.476578,33.501608,74.040665,102.201338,97.549576,46.666573,83.393608 +gcc -O2,53.099533,81.715678,69.673039,35.848366,12.095661,71.054069,22.621479,82.278248,60.880031,56.737514,201.993715,13.179639,33.365231,60.355969,96.223088,97.476371,49.899772,83.932104 +gcc -O2 -funroll-loops,53.710635,79.840058,64.789934,34.281221,8.876598,67.756864,24.498809,79.344094,60.965619,57.420658,91.203151,13.229751,33.543883,57.680434,86.548911,97.494001,47.594859,84.642287 +gcc -O3,53.028702,80.673956,69.375663,35.503250,8.904653,68.584437,18.888622,75.066600,60.893425,56.806847,361.444237,12.699659,34.403643,58.923869,93.958703,97.482853,49.918447,82.536992 +gcc -O3 -funroll-loops,52.367478,80.272036,62.907285,34.740704,8.855808,68.503119,20.782541,74.151195,61.042711,56.773878,361.493902,12.632888,33.435357,58.246261,85.381861,97.517774,48.829713,58.298046 +gcc -O3 -funroll-loops -march=native,52.622198,80.193748,64.281833,34.620439,9.006928,68.253695,14.959020,73.702401,56.549835,56.439747,319.040863,12.273700,33.382014,57.237471,85.157249,97.507761,49.484011,58.259431 +gcc -O3 -funroll-loops -march=native -ffast-math,53.109646,80.550295,64.031760,32.954556,5.370273,69.999833,15.497135,68.593754,59.470796,32.240393,281.025045,3.981503,33.421221,45.986046,77.449197,97.497749,42.878274,41.927935 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,54.277642,79.287067,63.849735,34.095467,8.847890,68.495151,15.056727,78.716061,56.815915,56.617433,171.461123,13.232615,34.063511,59.709328,83.910244,97.461453,47.812872,60.000377 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,54.559785,80.953577,64.803235,34.407136,9.222929,68.808847,14.811324,77.167449,56.554621,57.101436,1022.825402,12.312658,33.884439,57.299002,84.749799,97.460737,49.060385,82.718397 +gcc -O3 -funroll-loops -mfma,56.723910,79.494083,62.376789,36.477122,9.156181,68.443385,14.689877,76.581106,57.943543,55.969056,722.522413,12.257434,33.254875,58.648409,83.355108,97.521909,47.409705,82.480172 +icx -O1 -fp-model=precise,58.029571,81.202670,65.626276,41.383347,14.227925,68.405614,21.950424,82.438678,52.075770,73.035194,724.337575,14.303605,26.465978,63.405966,83.218140,97.647007,48.636387,58.529502 +icx -O2 -fp-model=precise,52.990139,80.194600,56.477013,42.197238,11.132088,67.621712,17.793568,72.465674,49.028789,69.506161,85.183703,14.015057,26.674352,71.411815,81.616662,97.674342,47.897219,60.578970 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,56.069378,81.518478,64.754599,35.494290,5.317424,68.417195,13.251393,67.170644,67.077887,29.383510,58.643507,0.410985,26.751870,61.748467,45.781716,97.655263,29.355152,41.821996 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,51.804566,81.243046,55.607117,35.467671,13.604738,68.068995,11.753915,74.162716,49.010899,67.550622,243.797838,14.139579,27.658438,71.964555,75.078695,97.736121,43.834754,49.939668 +icx -O3 -fp-model=precise,53.996378,80.765696,56.106180,36.266150,11.122721,67.538908,17.703671,73.526560,49.000400,70.185825,84.360298,13.899929,27.226386,71.876913,80.234035,97.570497,19.454971,60.059338 +icx -O3 -march=core-avx2 -fp-model=precise,54.178117,81.440724,64.792204,33.962244,13.663405,67.800795,11.812171,72.659342,49.014157,70.103987,58.791079,13.855839,25.246903,72.055122,59.952250,97.760158,23.579359,50.174006 +icx -O3 -march=native -fp-model=precise,56.521504,81.106793,64.319217,34.291364,13.657135,68.089842,11.864964,74.174802,48.967143,66.405817,58.162086,13.657985,26.509545,72.827268,59.356222,97.705887,23.396601,50.360530 diff --git a/resultados/resultados-1.txt b/resultados/resultados-1.txt deleted file mode 100644 index c8f7a5d..0000000 --- a/resultados/resultados-1.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 54.331060, 80.338718, 64.987083, 42.106628, 17.005570, 68.454618, 26.041389, 79.668973, 55.195783, 73.061396, 942.530406, 13.506042, 35.253837, 69.235928, 105.628344, 97.360947, 29.034176, 83.641034 -aocc -O2 , 55.768896, 80.663603, 65.118423, 37.461051, 17.672938, 68.332012, 24.130436, 74.992728, 55.228615, 74.332204, 119.838823, 12.770568, 35.396745, 65.805705, 105.958949, 97.417380, 27.823345, 47.603413 -aocc -O3 , 56.147354, 80.775310, 65.131428, 35.782588, 17.349878, 69.132548, 19.048282, 74.480314, 55.189826, 72.222201, 113.247002, 13.260861, 36.812995, 65.309551, 105.764729, 97.235765, 27.764924, 47.679364 -aocc -O3 -march=native , 56.247420, 79.856616, 65.390898, 36.071186, 16.805179, 68.407510, 15.480302, 76.433463, 55.109785, 70.282478, 116.528145, 12.497969, 36.442963, 63.996080, 104.664496, 97.225180, 32.044512, 84.902026 -aocc -O3 -march=native -ffast-math , 62.011795, 81.025611, 65.433592, 32.422852, 7.532471, 68.128822, 15.320279, 71.686815, 74.892662, 66.289951, 279.035004, 12.082316, 37.916425, 63.594457, 99.206836, 97.293901, 31.949657, 42.664541 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 51.586374, 80.464217, 65.302657, 34.727925, 17.552759, 68.988399, 15.510851, 78.456615, 55.112343, 74.315110, 323.043238, 13.064046, 37.040171, 66.289911, 104.587270, 97.357496, 32.588534, 85.223258 -aocc -O3 -mfma , 54.555447, 81.036552, 65.414905, 34.993538, 17.262875, 68.778465, 15.547181, 74.053673, 52.978592, 72.270529, 103.213441, 12.476143, 37.027967, 65.601148, 105.836646, 97.302341, 33.291586, 51.790662 -clang -O1 , 51.963786, 81.185551, 65.955554, 39.977180, 13.083990, 68.810802, 24.907027, 79.529718, 55.099908, 75.309607, 935.403572, 13.621312, 37.250485, 61.675687, 104.798216, 97.664282, 28.761546, 87.044451 -clang -O2 , 53.307205, 79.676357, 66.240029, 37.717754, 13.913974, 68.636700, 26.093811, 73.777949, 55.084534, 73.532735, 120.363510, 12.577392, 37.174749, 62.927547, 104.964672, 97.683136, 27.400364, 47.650444 -clang -O3 , 57.411617, 79.679103, 66.256200, 37.634408, 12.206783, 67.332206, 22.997505, 74.107647, 55.104678, 70.279401, 109.671530, 13.101612, 36.638510, 62.809101, 105.440100, 97.679597, 27.174611, 47.581887 -clang -O3 -march=native , 56.630036, 80.991643, 66.570657, 34.269952, 13.839928, 68.008737, 15.708356, 75.669483, 52.140535, 74.006306, 105.464505, 12.583821, 36.530372, 62.352879, 103.878868, 97.728939, 32.218862, 84.629652 -clang -O3 -march=native -ffast-math , 54.187156, 80.264706, 66.118952, 37.285313, 8.787711, 68.197736, 16.420945, 69.606141, 73.317413, 66.753909, 258.520751, 11.948629, 35.921727, 61.806281, 102.550981, 97.564849, 32.243714, 41.758660 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 57.006216, 81.277928, 66.352843, 34.662259, 13.800809, 68.133517, 15.786255, 79.443032, 52.130363, 74.118141, 372.311871, 13.143217, 38.231984, 61.387310, 105.277294, 97.767097, 31.875423, 84.801864 -clang -O3 -mfma , 53.627588, 81.217099, 66.297372, 34.161053, 13.575202, 69.730781, 16.247365, 74.613835, 52.179134, 69.212717, 103.985884, 12.596304, 36.562716, 61.689078, 106.106531, 97.742919, 33.525220, 50.422449 -gcc -O1 , 63.882742, 78.856126, 73.686648, 36.222100, 12.020393, 70.653458, 23.563870, 87.905186, 60.871893, 67.591439, 532.155766, 13.476578, 33.501608, 74.040665, 102.201338, 97.549576, 46.666573, 83.393608 -gcc -O2 , 53.099533, 81.715678, 69.673039, 35.848366, 12.095661, 71.054069, 22.621479, 82.278248, 60.880031, 56.737514, 201.993715, 13.179639, 33.365231, 60.355969, 96.223088, 97.476371, 49.899772, 83.932104 -gcc -O2 -funroll-loops , 53.710635, 79.840058, 64.789934, 34.281221, 8.876598, 67.756864, 24.498809, 79.344094, 60.965619, 57.420658, 91.203151, 13.229751, 33.543883, 57.680434, 86.548911, 97.494001, 47.594859, 84.642287 -gcc -O3 , 53.028702, 80.673956, 69.375663, 35.503250, 8.904653, 68.584437, 18.888622, 75.066600, 60.893425, 56.806847, 361.444237, 12.699659, 34.403643, 58.923869, 93.958703, 97.482853, 49.918447, 82.536992 -gcc -O3 -funroll-loops , 52.367478, 80.272036, 62.907285, 34.740704, 8.855808, 68.503119, 20.782541, 74.151195, 61.042711, 56.773878, 361.493902, 12.632888, 33.435357, 58.246261, 85.381861, 97.517774, 48.829713, 58.298046 -gcc -O3 -funroll-loops -march=native , 52.622198, 80.193748, 64.281833, 34.620439, 9.006928, 68.253695, 14.959020, 73.702401, 56.549835, 56.439747, 319.040863, 12.273700, 33.382014, 57.237471, 85.157249, 97.507761, 49.484011, 58.259431 -gcc -O3 -funroll-loops -march=native -ffast-math, 53.109646, 80.550295, 64.031760, 32.954556, 5.370273, 69.999833, 15.497135, 68.593754, 59.470796, 32.240393, 281.025045, 3.981503, 33.421221, 45.986046, 77.449197, 97.497749, 42.878274, 41.927935 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 54.277642, 79.287067, 63.849735, 34.095467, 8.847890, 68.495151, 15.056727, 78.716061, 56.815915, 56.617433, 171.461123, 13.232615, 34.063511, 59.709328, 83.910244, 97.461453, 47.812872, 60.000377 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 54.559785, 80.953577, 64.803235, 34.407136, 9.222929, 68.808847, 14.811324, 77.167449, 56.554621, 57.101436, 1022.825402, 12.312658, 33.884439, 57.299002, 84.749799, 97.460737, 49.060385, 82.718397 -gcc -O3 -funroll-loops -mfma , 56.723910, 79.494083, 62.376789, 36.477122, 9.156181, 68.443385, 14.689877, 76.581106, 57.943543, 55.969056, 722.522413, 12.257434, 33.254875, 58.648409, 83.355108, 97.521909, 47.409705, 82.480172 -icx -O1 -fp-model=precise , 58.029571, 81.202670, 65.626276, 41.383347, 14.227925, 68.405614, 21.950424, 82.438678, 52.075770, 73.035194, 724.337575, 14.303605, 26.465978, 63.405966, 83.218140, 97.647007, 48.636387, 58.529502 -icx -O2 -fp-model=precise , 52.990139, 80.194600, 56.477013, 42.197238, 11.132088, 67.621712, 17.793568, 72.465674, 49.028789, 69.506161, 85.183703, 14.015057, 26.674352, 71.411815, 81.616662, 97.674342, 47.897219, 60.578970 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 56.069378, 81.518478, 64.754599, 35.494290, 5.317424, 68.417195, 13.251393, 67.170644, 67.077887, 29.383510, 58.643507, 0.410985, 26.751870, 61.748467, 45.781716, 97.655263, 29.355152, 41.821996 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 51.804566, 81.243046, 55.607117, 35.467671, 13.604738, 68.068995, 11.753915, 74.162716, 49.010899, 67.550622, 243.797838, 14.139579, 27.658438, 71.964555, 75.078695, 97.736121, 43.834754, 49.939668 -icx -O3 -fp-model=precise , 53.996378, 80.765696, 56.106180, 36.266150, 11.122721, 67.538908, 17.703671, 73.526560, 49.000400, 70.185825, 84.360298, 13.899929, 27.226386, 71.876913, 80.234035, 97.570497, 19.454971, 60.059338 -icx -O3 -march=core-avx2 -fp-model=precise , 54.178117, 81.440724, 64.792204, 33.962244, 13.663405, 67.800795, 11.812171, 72.659342, 49.014157, 70.103987, 58.791079, 13.855839, 25.246903, 72.055122, 59.952250, 97.760158, 23.579359, 50.174006 -icx -O3 -march=native -fp-model=precise , 56.521504, 81.106793, 64.319217, 34.291364, 13.657135, 68.089842, 11.864964, 74.174802, 48.967143, 66.405817, 58.162086, 13.657985, 26.509545, 72.827268, 59.356222, 97.705887, 23.396601, 50.360530 diff --git a/resultados/resultados-2.csv b/resultados/resultados-2.csv new file mode 100644 index 0000000..0f0cd02 --- /dev/null +++ b/resultados/resultados-2.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,52.284591,81.112660,65.298142,43.165425,17.991619,69.403528,26.210827,79.489623,55.189512,75.315102,943.314899,13.136356,35.631786,69.084295,104.937240,97.348024,29.087845,83.376865 +aocc -O2,56.104076,80.706197,65.270469,37.543115,17.665395,68.555982,24.039526,75.274726,55.186977,70.958604,119.652509,12.735302,36.494696,65.306057,107.469212,97.301042,27.829689,47.640943 +aocc -O3,56.147292,79.224605,64.905345,36.609147,17.357619,68.279824,18.842194,74.475952,55.186932,69.490681,113.227800,12.785612,36.226256,65.242765,105.916901,97.326610,27.841699,47.819089 +aocc -O3 -march=native,52.192265,81.288678,65.421716,35.693157,17.706706,68.872808,15.511467,75.338972,55.147746,73.991362,116.600208,12.595260,37.134012,64.487489,104.150123,97.347268,32.115299,85.293568 +aocc -O3 -march=native -ffast-math,51.307972,81.078209,65.472361,32.748646,7.552966,68.027409,15.338823,69.313114,74.915366,66.449460,278.963137,12.427138,35.879309,64.501550,98.586351,97.372317,31.940352,42.737957 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,55.079010,80.730379,65.525455,35.500729,17.552237,68.490976,15.485375,78.916754,55.109607,74.104743,323.479291,13.080332,35.882798,65.200762,104.599465,97.296344,32.134047,85.301773 +aocc -O3 -mfma,56.334709,79.703785,65.440885,36.811508,16.386806,69.298042,15.099844,73.760074,53.125198,71.991441,103.209024,12.390788,37.096221,65.756488,106.157104,97.306735,33.433538,51.523689 +clang -O1,53.936337,81.287962,66.179458,40.081416,13.098891,67.591942,24.948039,79.778022,55.120388,72.330059,934.837562,13.639628,37.165229,61.737948,105.267717,97.642381,28.809159,87.898488 +clang -O2,56.043611,80.683527,66.112385,37.082631,13.938561,69.375641,25.997069,73.474132,55.098919,72.020140,120.142416,12.568701,36.504093,61.755708,105.796473,97.487520,27.308864,47.658599 +clang -O3,52.064460,80.113954,66.269309,36.473917,12.227196,68.202027,22.852588,73.449373,55.079537,72.207674,109.891647,12.830624,36.322210,62.076296,105.681745,97.604442,27.279272,47.659496 +clang -O3 -march=native,55.900930,81.178078,66.486081,33.883063,13.742778,68.937814,15.848163,75.966100,52.141770,74.017522,105.494326,12.585344,36.243971,61.733978,103.958697,97.717654,32.098962,85.131010 +clang -O3 -march=native -ffast-math,56.169403,79.840285,66.182387,35.731521,8.916952,68.436140,16.380611,69.448839,73.305906,68.952180,258.428038,12.131453,36.251611,61.960106,102.177665,97.625765,32.301918,42.470014 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,51.352233,80.712279,66.191291,34.616043,13.749140,68.414866,15.893208,79.163194,52.109945,70.194824,372.381441,13.256885,36.560791,62.804194,102.878389,97.667781,32.086342,84.872871 +clang -O3 -mfma,53.920393,80.942924,66.244332,34.446828,13.527773,68.381903,16.219567,74.577191,52.130074,70.078961,103.964776,12.920387,35.816241,61.645245,106.250459,97.611342,33.250725,50.597481 +gcc -O1,58.529215,79.453446,73.892950,36.257761,12.063349,66.979381,23.487974,85.804426,60.877815,66.739894,532.345325,13.265467,33.598709,73.060715,103.390767,97.510577,46.414829,83.530818 +gcc -O2,55.701161,89.907919,69.132287,35.453050,12.199519,67.945418,22.535207,82.401236,60.869182,56.691811,201.913236,13.343242,34.030465,60.195411,97.344846,97.484344,49.871829,83.624072 +gcc -O2 -funroll-loops,52.614359,79.530665,64.846700,34.930439,8.878461,67.302836,24.544116,80.820167,60.944718,56.632946,91.187420,13.073327,33.323408,57.899439,87.385921,97.506445,48.166046,84.573021 +gcc -O3,53.236164,79.545669,69.367251,34.998031,9.022754,68.621628,18.952219,74.055525,60.917671,56.451023,361.220822,12.595643,33.044353,58.780714,94.886484,99.673993,52.094857,82.294460 +gcc -O3 -funroll-loops,55.038242,80.488096,62.882455,34.840120,8.869889,67.653042,20.620169,74.317877,61.028780,57.080649,360.960127,12.932996,34.146690,57.841741,84.357313,97.477638,48.816460,58.318291 +gcc -O3 -funroll-loops -march=native,57.770582,80.518116,64.307062,34.303749,8.998251,67.993990,14.983925,74.315769,56.548645,56.662633,319.228132,12.273720,33.490404,57.166765,84.471815,97.405998,47.298968,58.311876 +gcc -O3 -funroll-loops -march=native -ffast-math,57.581382,80.795223,64.221375,33.331645,5.350704,70.056929,15.571063,68.658068,60.060309,32.107748,280.907356,4.221839,33.120745,45.618748,79.250094,97.502189,41.535558,41.790118 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,55.290037,79.251009,63.992196,33.287056,8.857413,67.538654,14.929975,78.508122,56.562248,56.392951,171.196120,12.823480,34.006531,59.218791,82.951592,97.502401,47.330843,59.886150 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,54.238618,80.257946,64.427288,33.759410,9.265240,68.469245,14.967854,76.544597,56.556419,57.510857,1022.728745,12.552584,33.252249,56.263754,85.786288,99.516661,47.644198,82.371547 +gcc -O3 -funroll-loops -mfma,56.421422,80.330191,62.832881,35.970089,9.169122,70.511857,14.733050,77.634044,57.937908,56.695871,722.513026,13.432510,32.987307,56.667600,83.373381,97.509667,46.900474,82.419384 +icx -O1 -fp-model=precise,58.322182,81.252621,65.209244,40.857532,14.213159,68.881875,21.834266,82.489240,52.053697,72.717333,723.893405,14.378173,26.055680,63.875653,83.846798,97.651915,46.650211,58.861786 +icx -O2 -fp-model=precise,53.366812,81.031931,56.754443,41.629365,11.204632,68.191642,17.859218,72.812226,49.027593,69.554163,85.105668,13.881619,26.202824,72.186670,80.907860,97.653664,49.496621,60.385697 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,55.022784,81.084478,65.056035,33.936170,5.337957,67.784631,13.341608,67.238174,67.081440,29.372411,58.576441,0.409232,27.359211,61.002801,46.160420,104.400921,29.262416,41.617105 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,53.547788,79.990502,55.494575,35.799020,13.641111,68.066743,11.932981,73.834355,49.009958,69.981305,243.529327,14.104113,26.224925,72.465053,75.048050,97.677856,44.487808,49.854039 +icx -O3 -fp-model=precise,57.122158,80.584580,55.832380,36.089896,10.634424,67.718168,17.567952,72.143172,48.993914,69.738324,84.455220,14.126258,25.484871,71.695723,79.029753,97.676169,19.589680,60.175372 +icx -O3 -march=core-avx2 -fp-model=precise,54.435185,79.843747,64.445930,34.949787,13.749498,68.249830,12.107707,72.815821,48.977515,69.875897,58.967958,13.805428,25.450264,72.256256,59.880078,97.557802,23.879793,50.034084 +icx -O3 -march=native -fp-model=precise,57.359944,86.883171,64.378400,35.817540,13.666204,67.456298,11.999197,73.958268,49.395971,66.885061,58.263503,13.543518,26.550868,71.996232,59.382437,97.666934,23.537931,50.460721 diff --git a/resultados/resultados-2.txt b/resultados/resultados-2.txt deleted file mode 100644 index bf43d81..0000000 --- a/resultados/resultados-2.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 52.284591, 81.112660, 65.298142, 43.165425, 17.991619, 69.403528, 26.210827, 79.489623, 55.189512, 75.315102, 943.314899, 13.136356, 35.631786, 69.084295, 104.937240, 97.348024, 29.087845, 83.376865 -aocc -O2 , 56.104076, 80.706197, 65.270469, 37.543115, 17.665395, 68.555982, 24.039526, 75.274726, 55.186977, 70.958604, 119.652509, 12.735302, 36.494696, 65.306057, 107.469212, 97.301042, 27.829689, 47.640943 -aocc -O3 , 56.147292, 79.224605, 64.905345, 36.609147, 17.357619, 68.279824, 18.842194, 74.475952, 55.186932, 69.490681, 113.227800, 12.785612, 36.226256, 65.242765, 105.916901, 97.326610, 27.841699, 47.819089 -aocc -O3 -march=native , 52.192265, 81.288678, 65.421716, 35.693157, 17.706706, 68.872808, 15.511467, 75.338972, 55.147746, 73.991362, 116.600208, 12.595260, 37.134012, 64.487489, 104.150123, 97.347268, 32.115299, 85.293568 -aocc -O3 -march=native -ffast-math , 51.307972, 81.078209, 65.472361, 32.748646, 7.552966, 68.027409, 15.338823, 69.313114, 74.915366, 66.449460, 278.963137, 12.427138, 35.879309, 64.501550, 98.586351, 97.372317, 31.940352, 42.737957 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 55.079010, 80.730379, 65.525455, 35.500729, 17.552237, 68.490976, 15.485375, 78.916754, 55.109607, 74.104743, 323.479291, 13.080332, 35.882798, 65.200762, 104.599465, 97.296344, 32.134047, 85.301773 -aocc -O3 -mfma , 56.334709, 79.703785, 65.440885, 36.811508, 16.386806, 69.298042, 15.099844, 73.760074, 53.125198, 71.991441, 103.209024, 12.390788, 37.096221, 65.756488, 106.157104, 97.306735, 33.433538, 51.523689 -clang -O1 , 53.936337, 81.287962, 66.179458, 40.081416, 13.098891, 67.591942, 24.948039, 79.778022, 55.120388, 72.330059, 934.837562, 13.639628, 37.165229, 61.737948, 105.267717, 97.642381, 28.809159, 87.898488 -clang -O2 , 56.043611, 80.683527, 66.112385, 37.082631, 13.938561, 69.375641, 25.997069, 73.474132, 55.098919, 72.020140, 120.142416, 12.568701, 36.504093, 61.755708, 105.796473, 97.487520, 27.308864, 47.658599 -clang -O3 , 52.064460, 80.113954, 66.269309, 36.473917, 12.227196, 68.202027, 22.852588, 73.449373, 55.079537, 72.207674, 109.891647, 12.830624, 36.322210, 62.076296, 105.681745, 97.604442, 27.279272, 47.659496 -clang -O3 -march=native , 55.900930, 81.178078, 66.486081, 33.883063, 13.742778, 68.937814, 15.848163, 75.966100, 52.141770, 74.017522, 105.494326, 12.585344, 36.243971, 61.733978, 103.958697, 97.717654, 32.098962, 85.131010 -clang -O3 -march=native -ffast-math , 56.169403, 79.840285, 66.182387, 35.731521, 8.916952, 68.436140, 16.380611, 69.448839, 73.305906, 68.952180, 258.428038, 12.131453, 36.251611, 61.960106, 102.177665, 97.625765, 32.301918, 42.470014 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 51.352233, 80.712279, 66.191291, 34.616043, 13.749140, 68.414866, 15.893208, 79.163194, 52.109945, 70.194824, 372.381441, 13.256885, 36.560791, 62.804194, 102.878389, 97.667781, 32.086342, 84.872871 -clang -O3 -mfma , 53.920393, 80.942924, 66.244332, 34.446828, 13.527773, 68.381903, 16.219567, 74.577191, 52.130074, 70.078961, 103.964776, 12.920387, 35.816241, 61.645245, 106.250459, 97.611342, 33.250725, 50.597481 -gcc -O1 , 58.529215, 79.453446, 73.892950, 36.257761, 12.063349, 66.979381, 23.487974, 85.804426, 60.877815, 66.739894, 532.345325, 13.265467, 33.598709, 73.060715, 103.390767, 97.510577, 46.414829, 83.530818 -gcc -O2 , 55.701161, 89.907919, 69.132287, 35.453050, 12.199519, 67.945418, 22.535207, 82.401236, 60.869182, 56.691811, 201.913236, 13.343242, 34.030465, 60.195411, 97.344846, 97.484344, 49.871829, 83.624072 -gcc -O2 -funroll-loops , 52.614359, 79.530665, 64.846700, 34.930439, 8.878461, 67.302836, 24.544116, 80.820167, 60.944718, 56.632946, 91.187420, 13.073327, 33.323408, 57.899439, 87.385921, 97.506445, 48.166046, 84.573021 -gcc -O3 , 53.236164, 79.545669, 69.367251, 34.998031, 9.022754, 68.621628, 18.952219, 74.055525, 60.917671, 56.451023, 361.220822, 12.595643, 33.044353, 58.780714, 94.886484, 99.673993, 52.094857, 82.294460 -gcc -O3 -funroll-loops , 55.038242, 80.488096, 62.882455, 34.840120, 8.869889, 67.653042, 20.620169, 74.317877, 61.028780, 57.080649, 360.960127, 12.932996, 34.146690, 57.841741, 84.357313, 97.477638, 48.816460, 58.318291 -gcc -O3 -funroll-loops -march=native , 57.770582, 80.518116, 64.307062, 34.303749, 8.998251, 67.993990, 14.983925, 74.315769, 56.548645, 56.662633, 319.228132, 12.273720, 33.490404, 57.166765, 84.471815, 97.405998, 47.298968, 58.311876 -gcc -O3 -funroll-loops -march=native -ffast-math, 57.581382, 80.795223, 64.221375, 33.331645, 5.350704, 70.056929, 15.571063, 68.658068, 60.060309, 32.107748, 280.907356, 4.221839, 33.120745, 45.618748, 79.250094, 97.502189, 41.535558, 41.790118 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 55.290037, 79.251009, 63.992196, 33.287056, 8.857413, 67.538654, 14.929975, 78.508122, 56.562248, 56.392951, 171.196120, 12.823480, 34.006531, 59.218791, 82.951592, 97.502401, 47.330843, 59.886150 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 54.238618, 80.257946, 64.427288, 33.759410, 9.265240, 68.469245, 14.967854, 76.544597, 56.556419, 57.510857, 1022.728745, 12.552584, 33.252249, 56.263754, 85.786288, 99.516661, 47.644198, 82.371547 -gcc -O3 -funroll-loops -mfma , 56.421422, 80.330191, 62.832881, 35.970089, 9.169122, 70.511857, 14.733050, 77.634044, 57.937908, 56.695871, 722.513026, 13.432510, 32.987307, 56.667600, 83.373381, 97.509667, 46.900474, 82.419384 -icx -O1 -fp-model=precise , 58.322182, 81.252621, 65.209244, 40.857532, 14.213159, 68.881875, 21.834266, 82.489240, 52.053697, 72.717333, 723.893405, 14.378173, 26.055680, 63.875653, 83.846798, 97.651915, 46.650211, 58.861786 -icx -O2 -fp-model=precise , 53.366812, 81.031931, 56.754443, 41.629365, 11.204632, 68.191642, 17.859218, 72.812226, 49.027593, 69.554163, 85.105668, 13.881619, 26.202824, 72.186670, 80.907860, 97.653664, 49.496621, 60.385697 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 55.022784, 81.084478, 65.056035, 33.936170, 5.337957, 67.784631, 13.341608, 67.238174, 67.081440, 29.372411, 58.576441, 0.409232, 27.359211, 61.002801, 46.160420, 104.400921, 29.262416, 41.617105 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 53.547788, 79.990502, 55.494575, 35.799020, 13.641111, 68.066743, 11.932981, 73.834355, 49.009958, 69.981305, 243.529327, 14.104113, 26.224925, 72.465053, 75.048050, 97.677856, 44.487808, 49.854039 -icx -O3 -fp-model=precise , 57.122158, 80.584580, 55.832380, 36.089896, 10.634424, 67.718168, 17.567952, 72.143172, 48.993914, 69.738324, 84.455220, 14.126258, 25.484871, 71.695723, 79.029753, 97.676169, 19.589680, 60.175372 -icx -O3 -march=core-avx2 -fp-model=precise , 54.435185, 79.843747, 64.445930, 34.949787, 13.749498, 68.249830, 12.107707, 72.815821, 48.977515, 69.875897, 58.967958, 13.805428, 25.450264, 72.256256, 59.880078, 97.557802, 23.879793, 50.034084 -icx -O3 -march=native -fp-model=precise , 57.359944, 86.883171, 64.378400, 35.817540, 13.666204, 67.456298, 11.999197, 73.958268, 49.395971, 66.885061, 58.263503, 13.543518, 26.550868, 71.996232, 59.382437, 97.666934, 23.537931, 50.460721 diff --git a/resultados/resultados-3.csv b/resultados/resultados-3.csv new file mode 100644 index 0000000..523f1f5 --- /dev/null +++ b/resultados/resultados-3.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,53.150778,81.110543,65.103125,42.037800,17.851687,72.003109,26.102490,79.212838,55.232091,73.537090,939.928720,13.509621,36.507338,70.272732,105.781577,97.207980,29.048097,83.391506 +aocc -O2,54.882221,80.105288,64.953735,36.036289,17.816440,68.590143,24.012914,75.843881,55.205140,71.169540,119.774636,12.925593,37.303239,64.526333,107.042809,97.153296,27.807060,47.657864 +aocc -O3,52.106236,80.962837,65.219111,37.028404,17.363706,68.610910,19.050750,75.488008,55.174202,69.000039,113.241110,13.089472,35.868514,65.432457,105.321132,97.233185,27.737811,48.075068 +aocc -O3 -march=native,52.284371,81.082898,65.323385,36.475294,17.704356,69.911582,15.494949,74.380204,55.101829,69.887831,116.691352,12.559326,35.935662,64.302157,104.168783,97.202249,32.005231,84.905588 +aocc -O3 -march=native -ffast-math,53.051296,81.439238,65.261323,32.221051,7.343867,68.423140,15.406751,71.281472,74.869262,68.593611,279.115171,11.965010,36.657350,63.796100,98.210289,97.260666,31.981120,42.659340 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,52.125160,81.198722,65.577523,35.781889,17.546770,69.582977,15.639526,79.215057,55.168419,74.110177,322.904233,17.721333,37.571766,65.338142,103.468506,97.355147,32.049813,84.921139 +aocc -O3 -mfma,53.380632,81.238148,64.935300,35.333958,16.376147,69.573959,15.046846,74.058321,52.960181,72.424820,103.221483,12.357045,36.496034,64.861327,105.516786,97.271609,33.123925,51.564686 +clang -O1,52.732689,80.584175,66.324299,40.584977,12.553088,68.524146,24.874486,78.350545,55.124298,75.126641,935.106820,13.467307,37.591408,61.405393,106.985268,97.650919,28.693918,87.476035 +clang -O2,59.867515,79.284438,66.120694,35.094920,13.359180,68.187992,26.045966,73.814389,55.131801,75.888556,120.094294,12.763857,35.908905,61.190851,105.464830,97.693296,27.238878,47.911541 +clang -O3,56.760334,79.782417,66.147215,36.322273,12.585854,69.212234,22.790265,74.077113,55.099397,69.690808,109.741117,13.079241,36.500523,62.073653,105.069573,97.660619,27.358978,47.796365 +clang -O3 -march=native,53.085870,81.066084,66.109877,35.220182,13.931089,68.343357,15.921929,76.445986,52.167054,74.197723,105.408520,12.614181,36.194311,62.413692,105.055867,97.544771,32.229629,85.406439 +clang -O3 -march=native -ffast-math,56.788312,79.874462,66.290651,36.925030,8.857069,68.244238,16.537344,70.366503,73.309926,66.545499,258.439354,12.191326,36.061490,61.413743,101.059998,97.687035,32.280428,42.394879 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,51.654007,81.147702,66.271215,34.778309,13.796713,68.977770,15.908427,79.819913,52.108337,70.641310,372.356251,13.083686,36.701674,62.103222,104.640745,97.539451,32.069487,84.850918 +clang -O3 -mfma,53.444961,80.930706,66.251950,35.429095,13.593194,68.463491,16.078030,72.988599,52.142319,72.421616,103.980284,12.898326,36.038588,62.098292,105.134112,97.695653,33.287209,50.403350 +gcc -O1,55.989349,79.880463,73.933641,35.876135,12.072412,68.335163,23.453639,86.990392,60.866082,67.462392,532.732929,13.262705,33.536932,73.096378,103.490844,97.509823,47.836877,83.277794 +gcc -O2,53.410746,80.463624,69.645933,35.377619,12.071556,68.400910,22.632618,82.251256,60.877488,57.496878,202.087663,13.122903,33.505744,60.501763,96.465531,97.474967,49.751224,83.918134 +gcc -O2 -funroll-loops,53.159538,80.488071,64.634083,35.103438,8.888718,69.645768,24.668653,78.181843,60.963125,56.475465,91.080470,13.122128,33.404685,57.871229,87.225912,97.480221,48.080678,84.585157 +gcc -O3,52.491831,79.617782,69.293565,35.300262,8.928434,67.557266,18.920021,74.548495,60.911989,56.844267,361.207988,12.637857,33.528868,58.220867,93.742892,97.486582,49.986011,82.469537 +gcc -O3 -funroll-loops,59.772847,80.463547,62.864442,34.657100,8.867713,69.621926,20.715007,74.456520,61.033096,57.158837,361.595923,12.616451,33.596997,57.781406,85.558212,97.483326,48.415866,58.214629 +gcc -O3 -funroll-loops -march=native,52.022167,81.011372,63.630453,33.664190,8.995133,69.024058,14.834756,74.194802,56.546521,56.826266,319.139324,12.252602,34.096038,57.067796,85.095291,97.507932,47.550393,58.216318 +gcc -O3 -funroll-loops -march=native -ffast-math,51.995564,88.853179,64.242132,32.920388,5.346836,71.182136,15.704756,68.804879,59.456056,31.438184,281.013889,4.077520,33.707078,45.772523,78.603077,97.510684,44.449854,42.042512 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,51.196681,80.231499,64.132292,34.025204,8.852700,68.721039,14.792792,78.387283,56.565120,56.130298,171.490068,12.901758,33.937796,59.610858,84.560455,97.469645,49.428912,59.969076 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,53.719582,80.093527,64.574954,34.082382,9.240832,68.637151,14.766185,76.835711,56.581098,57.083639,1022.264057,12.265138,33.346264,58.090827,84.709196,97.483741,46.372731,82.438288 +gcc -O3 -funroll-loops -mfma,52.334955,79.775344,62.575650,36.089721,9.188241,67.871898,14.492532,76.702904,59.175348,56.392225,722.406096,12.479349,33.571511,57.305758,83.579344,97.534810,46.354781,82.411949 +icx -O1 -fp-model=precise,55.057500,81.246567,65.185608,41.245401,14.234494,71.150941,22.043633,82.580547,52.045015,75.084248,723.695891,14.499594,27.485882,63.898770,83.965104,97.723636,47.988145,58.587458 +icx -O2 -fp-model=precise,56.920804,86.311836,56.697067,40.926792,10.661870,69.087885,17.736526,72.648517,49.055251,69.318746,85.264710,14.081400,27.629809,71.488711,81.033069,97.653810,49.144729,60.237368 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,55.559354,81.699208,64.647913,34.867981,5.156380,68.235829,13.371526,67.151534,67.080385,29.385098,58.457968,0.428449,25.822408,60.407542,45.642612,97.703476,29.084479,41.750962 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,52.756798,81.370136,55.494517,35.094833,13.684018,67.920206,11.916679,74.204817,48.839626,67.291439,243.661812,14.081256,26.552005,71.539468,74.796683,97.675581,44.187141,49.813253 +icx -O3 -fp-model=precise,55.327073,81.313803,55.879987,36.570966,11.103643,67.934538,17.582595,76.071041,49.004351,70.171586,84.381958,13.961892,26.810249,72.073174,80.116085,97.577524,19.459334,60.159417 +icx -O3 -march=core-avx2 -fp-model=precise,51.684156,80.868469,64.374970,35.465265,13.594302,67.518994,12.202525,72.956485,49.007049,67.059740,59.009324,13.753828,27.353524,72.221414,60.508819,97.615396,23.924654,50.227702 +icx -O3 -march=native -fp-model=precise,52.808523,81.566815,64.694307,36.229565,13.637249,67.384687,12.340226,73.935134,48.965145,70.205139,58.343837,13.447112,26.545023,72.530089,59.325678,97.564742,23.374454,50.248879 diff --git a/resultados/resultados-3.txt b/resultados/resultados-3.txt deleted file mode 100644 index 6aedabe..0000000 --- a/resultados/resultados-3.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 53.150778, 81.110543, 65.103125, 42.037800, 17.851687, 72.003109, 26.102490, 79.212838, 55.232091, 73.537090, 939.928720, 13.509621, 36.507338, 70.272732, 105.781577, 97.207980, 29.048097, 83.391506 -aocc -O2 , 54.882221, 80.105288, 64.953735, 36.036289, 17.816440, 68.590143, 24.012914, 75.843881, 55.205140, 71.169540, 119.774636, 12.925593, 37.303239, 64.526333, 107.042809, 97.153296, 27.807060, 47.657864 -aocc -O3 , 52.106236, 80.962837, 65.219111, 37.028404, 17.363706, 68.610910, 19.050750, 75.488008, 55.174202, 69.000039, 113.241110, 13.089472, 35.868514, 65.432457, 105.321132, 97.233185, 27.737811, 48.075068 -aocc -O3 -march=native , 52.284371, 81.082898, 65.323385, 36.475294, 17.704356, 69.911582, 15.494949, 74.380204, 55.101829, 69.887831, 116.691352, 12.559326, 35.935662, 64.302157, 104.168783, 97.202249, 32.005231, 84.905588 -aocc -O3 -march=native -ffast-math , 53.051296, 81.439238, 65.261323, 32.221051, 7.343867, 68.423140, 15.406751, 71.281472, 74.869262, 68.593611, 279.115171, 11.965010, 36.657350, 63.796100, 98.210289, 97.260666, 31.981120, 42.659340 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 52.125160, 81.198722, 65.577523, 35.781889, 17.546770, 69.582977, 15.639526, 79.215057, 55.168419, 74.110177, 322.904233, 17.721333, 37.571766, 65.338142, 103.468506, 97.355147, 32.049813, 84.921139 -aocc -O3 -mfma , 53.380632, 81.238148, 64.935300, 35.333958, 16.376147, 69.573959, 15.046846, 74.058321, 52.960181, 72.424820, 103.221483, 12.357045, 36.496034, 64.861327, 105.516786, 97.271609, 33.123925, 51.564686 -clang -O1 , 52.732689, 80.584175, 66.324299, 40.584977, 12.553088, 68.524146, 24.874486, 78.350545, 55.124298, 75.126641, 935.106820, 13.467307, 37.591408, 61.405393, 106.985268, 97.650919, 28.693918, 87.476035 -clang -O2 , 59.867515, 79.284438, 66.120694, 35.094920, 13.359180, 68.187992, 26.045966, 73.814389, 55.131801, 75.888556, 120.094294, 12.763857, 35.908905, 61.190851, 105.464830, 97.693296, 27.238878, 47.911541 -clang -O3 , 56.760334, 79.782417, 66.147215, 36.322273, 12.585854, 69.212234, 22.790265, 74.077113, 55.099397, 69.690808, 109.741117, 13.079241, 36.500523, 62.073653, 105.069573, 97.660619, 27.358978, 47.796365 -clang -O3 -march=native , 53.085870, 81.066084, 66.109877, 35.220182, 13.931089, 68.343357, 15.921929, 76.445986, 52.167054, 74.197723, 105.408520, 12.614181, 36.194311, 62.413692, 105.055867, 97.544771, 32.229629, 85.406439 -clang -O3 -march=native -ffast-math , 56.788312, 79.874462, 66.290651, 36.925030, 8.857069, 68.244238, 16.537344, 70.366503, 73.309926, 66.545499, 258.439354, 12.191326, 36.061490, 61.413743, 101.059998, 97.687035, 32.280428, 42.394879 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 51.654007, 81.147702, 66.271215, 34.778309, 13.796713, 68.977770, 15.908427, 79.819913, 52.108337, 70.641310, 372.356251, 13.083686, 36.701674, 62.103222, 104.640745, 97.539451, 32.069487, 84.850918 -clang -O3 -mfma , 53.444961, 80.930706, 66.251950, 35.429095, 13.593194, 68.463491, 16.078030, 72.988599, 52.142319, 72.421616, 103.980284, 12.898326, 36.038588, 62.098292, 105.134112, 97.695653, 33.287209, 50.403350 -gcc -O1 , 55.989349, 79.880463, 73.933641, 35.876135, 12.072412, 68.335163, 23.453639, 86.990392, 60.866082, 67.462392, 532.732929, 13.262705, 33.536932, 73.096378, 103.490844, 97.509823, 47.836877, 83.277794 -gcc -O2 , 53.410746, 80.463624, 69.645933, 35.377619, 12.071556, 68.400910, 22.632618, 82.251256, 60.877488, 57.496878, 202.087663, 13.122903, 33.505744, 60.501763, 96.465531, 97.474967, 49.751224, 83.918134 -gcc -O2 -funroll-loops , 53.159538, 80.488071, 64.634083, 35.103438, 8.888718, 69.645768, 24.668653, 78.181843, 60.963125, 56.475465, 91.080470, 13.122128, 33.404685, 57.871229, 87.225912, 97.480221, 48.080678, 84.585157 -gcc -O3 , 52.491831, 79.617782, 69.293565, 35.300262, 8.928434, 67.557266, 18.920021, 74.548495, 60.911989, 56.844267, 361.207988, 12.637857, 33.528868, 58.220867, 93.742892, 97.486582, 49.986011, 82.469537 -gcc -O3 -funroll-loops , 59.772847, 80.463547, 62.864442, 34.657100, 8.867713, 69.621926, 20.715007, 74.456520, 61.033096, 57.158837, 361.595923, 12.616451, 33.596997, 57.781406, 85.558212, 97.483326, 48.415866, 58.214629 -gcc -O3 -funroll-loops -march=native , 52.022167, 81.011372, 63.630453, 33.664190, 8.995133, 69.024058, 14.834756, 74.194802, 56.546521, 56.826266, 319.139324, 12.252602, 34.096038, 57.067796, 85.095291, 97.507932, 47.550393, 58.216318 -gcc -O3 -funroll-loops -march=native -ffast-math, 51.995564, 88.853179, 64.242132, 32.920388, 5.346836, 71.182136, 15.704756, 68.804879, 59.456056, 31.438184, 281.013889, 4.077520, 33.707078, 45.772523, 78.603077, 97.510684, 44.449854, 42.042512 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 51.196681, 80.231499, 64.132292, 34.025204, 8.852700, 68.721039, 14.792792, 78.387283, 56.565120, 56.130298, 171.490068, 12.901758, 33.937796, 59.610858, 84.560455, 97.469645, 49.428912, 59.969076 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 53.719582, 80.093527, 64.574954, 34.082382, 9.240832, 68.637151, 14.766185, 76.835711, 56.581098, 57.083639, 1022.264057, 12.265138, 33.346264, 58.090827, 84.709196, 97.483741, 46.372731, 82.438288 -gcc -O3 -funroll-loops -mfma , 52.334955, 79.775344, 62.575650, 36.089721, 9.188241, 67.871898, 14.492532, 76.702904, 59.175348, 56.392225, 722.406096, 12.479349, 33.571511, 57.305758, 83.579344, 97.534810, 46.354781, 82.411949 -icx -O1 -fp-model=precise , 55.057500, 81.246567, 65.185608, 41.245401, 14.234494, 71.150941, 22.043633, 82.580547, 52.045015, 75.084248, 723.695891, 14.499594, 27.485882, 63.898770, 83.965104, 97.723636, 47.988145, 58.587458 -icx -O2 -fp-model=precise , 56.920804, 86.311836, 56.697067, 40.926792, 10.661870, 69.087885, 17.736526, 72.648517, 49.055251, 69.318746, 85.264710, 14.081400, 27.629809, 71.488711, 81.033069, 97.653810, 49.144729, 60.237368 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 55.559354, 81.699208, 64.647913, 34.867981, 5.156380, 68.235829, 13.371526, 67.151534, 67.080385, 29.385098, 58.457968, 0.428449, 25.822408, 60.407542, 45.642612, 97.703476, 29.084479, 41.750962 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 52.756798, 81.370136, 55.494517, 35.094833, 13.684018, 67.920206, 11.916679, 74.204817, 48.839626, 67.291439, 243.661812, 14.081256, 26.552005, 71.539468, 74.796683, 97.675581, 44.187141, 49.813253 -icx -O3 -fp-model=precise , 55.327073, 81.313803, 55.879987, 36.570966, 11.103643, 67.934538, 17.582595, 76.071041, 49.004351, 70.171586, 84.381958, 13.961892, 26.810249, 72.073174, 80.116085, 97.577524, 19.459334, 60.159417 -icx -O3 -march=core-avx2 -fp-model=precise , 51.684156, 80.868469, 64.374970, 35.465265, 13.594302, 67.518994, 12.202525, 72.956485, 49.007049, 67.059740, 59.009324, 13.753828, 27.353524, 72.221414, 60.508819, 97.615396, 23.924654, 50.227702 -icx -O3 -march=native -fp-model=precise , 52.808523, 81.566815, 64.694307, 36.229565, 13.637249, 67.384687, 12.340226, 73.935134, 48.965145, 70.205139, 58.343837, 13.447112, 26.545023, 72.530089, 59.325678, 97.564742, 23.374454, 50.248879 diff --git a/resultados/resultados-4.csv b/resultados/resultados-4.csv new file mode 100644 index 0000000..f6aa30f --- /dev/null +++ b/resultados/resultados-4.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,56.487241,80.452977,65.551923,41.075344,16.854906,68.178022,26.029982,79.496049,55.184511,72.803416,942.687926,13.423635,35.745592,68.828418,106.713139,97.262272,28.929422,83.454539 +aocc -O2,53.248600,80.481884,65.121004,36.993581,16.710950,68.326660,24.111685,75.162998,55.220736,73.850574,119.751985,13.097908,37.573898,63.862721,106.805666,97.224681,27.837125,47.613137 +aocc -O3,55.122782,80.533718,65.048652,36.890918,16.449839,67.735174,18.905704,74.273090,55.185430,69.745904,113.392658,12.855424,36.066588,64.809872,106.430432,97.339316,27.666484,47.914961 +aocc -O3 -march=native,54.796631,80.384223,65.583551,35.887893,17.683539,68.043642,15.575332,75.801400,55.091505,74.047354,116.652776,12.597016,36.497327,64.295368,104.746533,97.346602,31.971908,84.967895 +aocc -O3 -march=native -ffast-math,52.200362,81.000373,65.198336,33.440396,7.544550,67.999933,15.304819,71.903697,74.917599,66.188189,278.914362,12.022620,35.755171,64.130395,97.631133,97.242311,31.873634,42.701065 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,56.627234,81.079781,65.767954,35.687549,17.554998,67.374740,15.482057,79.819646,55.086961,74.274203,322.916399,17.855051,37.508637,66.440077,105.535823,97.201835,31.895395,85.233884 +aocc -O3 -mfma,53.609529,80.617142,65.260462,36.912441,16.617424,67.137678,15.184052,74.173647,52.922424,70.114378,103.257555,12.922249,35.796507,64.025064,105.626469,97.402380,33.359131,52.357136 +clang -O1,60.487113,80.005628,66.027918,39.644036,12.645126,67.295560,24.775285,79.440781,55.144505,72.320838,935.505773,13.403309,37.496872,62.073963,105.768585,97.884791,28.769517,88.118364 +clang -O2,57.604337,81.061166,66.319029,37.941378,13.957326,68.427186,26.018809,73.642631,55.109311,72.596722,120.186438,12.701500,35.640063,61.626197,106.424648,97.677665,27.277267,47.639408 +clang -O3,53.659482,81.119844,66.242460,37.194613,12.377195,68.978446,22.892959,73.364596,55.080834,70.348079,109.733832,12.789354,35.767153,62.240552,106.019790,97.502793,27.269814,47.642270 +clang -O3 -march=native,52.137701,80.316401,66.308928,35.018433,13.800377,68.038475,15.785503,74.895022,52.137206,70.435982,105.526484,12.691685,37.075727,61.428713,105.059007,97.664223,32.219457,85.007693 +clang -O3 -march=native -ffast-math,58.588605,80.955328,66.194037,36.082650,8.840006,67.804873,16.507278,69.255473,73.326695,69.056482,258.430780,12.035259,35.764375,61.766304,102.603260,104.904121,32.313703,42.348763 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,54.521773,87.961116,66.211661,34.707810,13.746863,67.885027,15.777169,78.577317,52.112540,71.244974,372.329492,13.062412,36.812273,62.493419,105.103410,97.604343,31.975453,84.919944 +clang -O3 -mfma,55.180939,80.013565,66.538415,34.574548,13.584360,68.050913,16.068311,74.435351,52.160510,72.392221,103.878189,13.004763,36.801655,62.395745,106.958814,97.672717,33.176946,50.523419 +gcc -O1,54.597115,80.673960,73.677734,36.255186,12.016223,67.887196,23.502905,86.245970,60.872147,67.350302,532.389228,13.359964,33.849157,72.140036,105.783593,97.519768,46.862450,58.776651 +gcc -O2,51.568164,78.893247,69.552593,34.864607,12.068099,67.471325,22.590350,83.157452,60.895085,57.010556,201.811954,13.257338,33.347488,59.517308,95.113772,97.508261,50.512409,83.781329 +gcc -O2 -funroll-loops,59.173116,85.009122,64.869843,34.989211,8.877420,68.821207,24.576065,79.973700,60.960623,57.071897,91.081375,13.216468,33.601526,57.270311,87.658218,97.483397,48.461828,84.868991 +gcc -O3,54.846930,80.347179,69.452074,35.726650,8.930599,67.522786,18.879636,74.607185,60.916947,56.776281,361.340003,12.629665,33.455960,58.273975,94.996476,97.495207,51.253227,82.633150 +gcc -O3 -funroll-loops,51.562332,80.789046,62.730586,35.350946,8.952590,69.393327,20.709573,74.365931,61.031945,56.964146,361.164896,12.555603,33.181240,58.452388,85.129365,97.495844,47.890832,58.372801 +gcc -O3 -funroll-loops -march=native,52.771068,80.056439,63.968226,34.417970,9.001933,68.675328,14.786802,85.007502,56.548957,56.358166,319.244173,12.361132,33.867173,57.095481,83.511247,97.486163,48.039502,58.318648 +gcc -O3 -funroll-loops -march=native -ffast-math,53.873514,80.882485,64.329916,33.545428,5.331072,68.321017,15.516927,69.878786,59.475008,31.116387,281.046281,3.995263,33.488528,46.058138,77.455783,97.494228,43.593290,41.960030 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,52.289088,79.946942,63.650897,33.762743,8.935456,68.914957,14.842084,79.426991,56.567621,56.152023,171.482142,12.871461,34.024812,59.084977,82.497452,97.473033,50.129388,60.040855 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,52.165770,79.859840,64.775616,34.325232,9.228978,67.834957,15.016360,76.815388,56.560711,57.106444,1022.558758,12.831953,33.614120,56.876842,85.218892,97.482403,48.508241,82.562050 +gcc -O3 -funroll-loops -mfma,52.675396,79.692494,62.830768,36.149699,9.147978,68.668629,14.678860,76.981849,57.939929,56.137441,722.636767,12.391077,33.486832,56.845736,83.119162,97.532544,47.327395,82.399355 +icx -O1 -fp-model=precise,59.222401,80.982390,65.277236,40.708421,14.463773,71.517239,20.713401,82.761164,52.056415,71.848748,724.530889,16.494299,26.552335,63.355883,82.873926,97.745824,49.029095,58.941629 +icx -O2 -fp-model=precise,58.863131,80.293148,56.678092,41.180002,10.659665,68.149881,17.731662,72.408140,49.032046,69.156899,85.216181,14.022954,26.359207,70.604608,80.739226,97.673630,50.680774,60.314768 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,53.304257,81.787591,64.704300,34.491837,5.278823,67.977033,13.365707,67.635328,67.083815,26.163920,58.598944,0.406775,25.033294,61.095900,46.311854,97.625309,29.338927,48.255149 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,52.048691,80.653270,55.743271,35.768088,13.549285,67.501354,12.196342,74.079645,48.994707,70.264723,243.730718,14.083196,25.846532,71.883168,75.057841,97.629815,43.880734,49.957879 +icx -O3 -fp-model=precise,52.828768,79.973973,56.063317,34.995327,10.632457,67.621535,17.700951,72.481710,48.991501,67.783867,84.471716,13.952413,27.005917,71.812311,79.657268,97.684559,19.357914,60.347808 +icx -O3 -march=core-avx2 -fp-model=precise,53.331023,81.287629,64.509453,35.781973,13.624087,68.034896,12.049964,73.533117,49.013159,69.802860,58.895004,13.791926,25.668246,71.892612,60.341392,97.584768,23.785421,50.340904 +icx -O3 -march=native -fp-model=precise,59.108197,81.738533,64.637375,36.062830,13.606025,67.590810,12.377611,74.917412,48.961333,70.471744,58.291327,17.615326,27.262166,71.575798,59.809887,97.716336,23.839471,50.276370 diff --git a/resultados/resultados-4.txt b/resultados/resultados-4.txt deleted file mode 100644 index 616fb24..0000000 --- a/resultados/resultados-4.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 56.487241, 80.452977, 65.551923, 41.075344, 16.854906, 68.178022, 26.029982, 79.496049, 55.184511, 72.803416, 942.687926, 13.423635, 35.745592, 68.828418, 106.713139, 97.262272, 28.929422, 83.454539 -aocc -O2 , 53.248600, 80.481884, 65.121004, 36.993581, 16.710950, 68.326660, 24.111685, 75.162998, 55.220736, 73.850574, 119.751985, 13.097908, 37.573898, 63.862721, 106.805666, 97.224681, 27.837125, 47.613137 -aocc -O3 , 55.122782, 80.533718, 65.048652, 36.890918, 16.449839, 67.735174, 18.905704, 74.273090, 55.185430, 69.745904, 113.392658, 12.855424, 36.066588, 64.809872, 106.430432, 97.339316, 27.666484, 47.914961 -aocc -O3 -march=native , 54.796631, 80.384223, 65.583551, 35.887893, 17.683539, 68.043642, 15.575332, 75.801400, 55.091505, 74.047354, 116.652776, 12.597016, 36.497327, 64.295368, 104.746533, 97.346602, 31.971908, 84.967895 -aocc -O3 -march=native -ffast-math , 52.200362, 81.000373, 65.198336, 33.440396, 7.544550, 67.999933, 15.304819, 71.903697, 74.917599, 66.188189, 278.914362, 12.022620, 35.755171, 64.130395, 97.631133, 97.242311, 31.873634, 42.701065 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 56.627234, 81.079781, 65.767954, 35.687549, 17.554998, 67.374740, 15.482057, 79.819646, 55.086961, 74.274203, 322.916399, 17.855051, 37.508637, 66.440077, 105.535823, 97.201835, 31.895395, 85.233884 -aocc -O3 -mfma , 53.609529, 80.617142, 65.260462, 36.912441, 16.617424, 67.137678, 15.184052, 74.173647, 52.922424, 70.114378, 103.257555, 12.922249, 35.796507, 64.025064, 105.626469, 97.402380, 33.359131, 52.357136 -clang -O1 , 60.487113, 80.005628, 66.027918, 39.644036, 12.645126, 67.295560, 24.775285, 79.440781, 55.144505, 72.320838, 935.505773, 13.403309, 37.496872, 62.073963, 105.768585, 97.884791, 28.769517, 88.118364 -clang -O2 , 57.604337, 81.061166, 66.319029, 37.941378, 13.957326, 68.427186, 26.018809, 73.642631, 55.109311, 72.596722, 120.186438, 12.701500, 35.640063, 61.626197, 106.424648, 97.677665, 27.277267, 47.639408 -clang -O3 , 53.659482, 81.119844, 66.242460, 37.194613, 12.377195, 68.978446, 22.892959, 73.364596, 55.080834, 70.348079, 109.733832, 12.789354, 35.767153, 62.240552, 106.019790, 97.502793, 27.269814, 47.642270 -clang -O3 -march=native , 52.137701, 80.316401, 66.308928, 35.018433, 13.800377, 68.038475, 15.785503, 74.895022, 52.137206, 70.435982, 105.526484, 12.691685, 37.075727, 61.428713, 105.059007, 97.664223, 32.219457, 85.007693 -clang -O3 -march=native -ffast-math , 58.588605, 80.955328, 66.194037, 36.082650, 8.840006, 67.804873, 16.507278, 69.255473, 73.326695, 69.056482, 258.430780, 12.035259, 35.764375, 61.766304, 102.603260, 104.904121, 32.313703, 42.348763 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 54.521773, 87.961116, 66.211661, 34.707810, 13.746863, 67.885027, 15.777169, 78.577317, 52.112540, 71.244974, 372.329492, 13.062412, 36.812273, 62.493419, 105.103410, 97.604343, 31.975453, 84.919944 -clang -O3 -mfma , 55.180939, 80.013565, 66.538415, 34.574548, 13.584360, 68.050913, 16.068311, 74.435351, 52.160510, 72.392221, 103.878189, 13.004763, 36.801655, 62.395745, 106.958814, 97.672717, 33.176946, 50.523419 -gcc -O1 , 54.597115, 80.673960, 73.677734, 36.255186, 12.016223, 67.887196, 23.502905, 86.245970, 60.872147, 67.350302, 532.389228, 13.359964, 33.849157, 72.140036, 105.783593, 97.519768, 46.862450, 58.776651 -gcc -O2 , 51.568164, 78.893247, 69.552593, 34.864607, 12.068099, 67.471325, 22.590350, 83.157452, 60.895085, 57.010556, 201.811954, 13.257338, 33.347488, 59.517308, 95.113772, 97.508261, 50.512409, 83.781329 -gcc -O2 -funroll-loops , 59.173116, 85.009122, 64.869843, 34.989211, 8.877420, 68.821207, 24.576065, 79.973700, 60.960623, 57.071897, 91.081375, 13.216468, 33.601526, 57.270311, 87.658218, 97.483397, 48.461828, 84.868991 -gcc -O3 , 54.846930, 80.347179, 69.452074, 35.726650, 8.930599, 67.522786, 18.879636, 74.607185, 60.916947, 56.776281, 361.340003, 12.629665, 33.455960, 58.273975, 94.996476, 97.495207, 51.253227, 82.633150 -gcc -O3 -funroll-loops , 51.562332, 80.789046, 62.730586, 35.350946, 8.952590, 69.393327, 20.709573, 74.365931, 61.031945, 56.964146, 361.164896, 12.555603, 33.181240, 58.452388, 85.129365, 97.495844, 47.890832, 58.372801 -gcc -O3 -funroll-loops -march=native , 52.771068, 80.056439, 63.968226, 34.417970, 9.001933, 68.675328, 14.786802, 85.007502, 56.548957, 56.358166, 319.244173, 12.361132, 33.867173, 57.095481, 83.511247, 97.486163, 48.039502, 58.318648 -gcc -O3 -funroll-loops -march=native -ffast-math, 53.873514, 80.882485, 64.329916, 33.545428, 5.331072, 68.321017, 15.516927, 69.878786, 59.475008, 31.116387, 281.046281, 3.995263, 33.488528, 46.058138, 77.455783, 97.494228, 43.593290, 41.960030 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 52.289088, 79.946942, 63.650897, 33.762743, 8.935456, 68.914957, 14.842084, 79.426991, 56.567621, 56.152023, 171.482142, 12.871461, 34.024812, 59.084977, 82.497452, 97.473033, 50.129388, 60.040855 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 52.165770, 79.859840, 64.775616, 34.325232, 9.228978, 67.834957, 15.016360, 76.815388, 56.560711, 57.106444, 1022.558758, 12.831953, 33.614120, 56.876842, 85.218892, 97.482403, 48.508241, 82.562050 -gcc -O3 -funroll-loops -mfma , 52.675396, 79.692494, 62.830768, 36.149699, 9.147978, 68.668629, 14.678860, 76.981849, 57.939929, 56.137441, 722.636767, 12.391077, 33.486832, 56.845736, 83.119162, 97.532544, 47.327395, 82.399355 -icx -O1 -fp-model=precise , 59.222401, 80.982390, 65.277236, 40.708421, 14.463773, 71.517239, 20.713401, 82.761164, 52.056415, 71.848748, 724.530889, 16.494299, 26.552335, 63.355883, 82.873926, 97.745824, 49.029095, 58.941629 -icx -O2 -fp-model=precise , 58.863131, 80.293148, 56.678092, 41.180002, 10.659665, 68.149881, 17.731662, 72.408140, 49.032046, 69.156899, 85.216181, 14.022954, 26.359207, 70.604608, 80.739226, 97.673630, 50.680774, 60.314768 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 53.304257, 81.787591, 64.704300, 34.491837, 5.278823, 67.977033, 13.365707, 67.635328, 67.083815, 26.163920, 58.598944, 0.406775, 25.033294, 61.095900, 46.311854, 97.625309, 29.338927, 48.255149 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 52.048691, 80.653270, 55.743271, 35.768088, 13.549285, 67.501354, 12.196342, 74.079645, 48.994707, 70.264723, 243.730718, 14.083196, 25.846532, 71.883168, 75.057841, 97.629815, 43.880734, 49.957879 -icx -O3 -fp-model=precise , 52.828768, 79.973973, 56.063317, 34.995327, 10.632457, 67.621535, 17.700951, 72.481710, 48.991501, 67.783867, 84.471716, 13.952413, 27.005917, 71.812311, 79.657268, 97.684559, 19.357914, 60.347808 -icx -O3 -march=core-avx2 -fp-model=precise , 53.331023, 81.287629, 64.509453, 35.781973, 13.624087, 68.034896, 12.049964, 73.533117, 49.013159, 69.802860, 58.895004, 13.791926, 25.668246, 71.892612, 60.341392, 97.584768, 23.785421, 50.340904 -icx -O3 -march=native -fp-model=precise , 59.108197, 81.738533, 64.637375, 36.062830, 13.606025, 67.590810, 12.377611, 74.917412, 48.961333, 70.471744, 58.291327, 17.615326, 27.262166, 71.575798, 59.809887, 97.716336, 23.839471, 50.276370 diff --git a/resultados/resultados-5.csv b/resultados/resultados-5.csv new file mode 100644 index 0000000..c6b2cae --- /dev/null +++ b/resultados/resultados-5.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,56.709711,79.166413,65.288894,42.408399,17.630124,67.716647,26.017099,79.508632,55.202589,72.317594,943.256881,13.168738,36.881733,68.439556,105.525645,97.344154,29.033605,85.326191 +aocc -O2,52.212276,79.929061,65.624409,37.401266,17.669773,68.510854,24.001731,75.086377,55.269527,71.079678,119.816609,13.037997,35.842550,64.728524,106.928784,106.195241,27.655518,47.602424 +aocc -O3,56.518184,80.758229,64.891181,36.099288,17.410113,68.076159,18.922339,74.898533,55.196908,72.126943,116.508481,12.899804,37.650397,65.733091,106.016249,97.216586,27.649164,47.764576 +aocc -O3 -march=native,51.178465,80.595507,65.552783,36.268838,17.676127,68.966594,14.569133,74.483971,55.090826,70.204982,116.558932,12.661102,36.788726,63.550165,103.808924,97.248348,31.782945,85.183137 +aocc -O3 -march=native -ffast-math,55.468642,80.615690,65.406115,32.252417,7.631984,68.550703,15.189714,71.599679,74.888625,66.442439,279.110770,17.185819,38.230059,63.867909,99.085909,97.579239,32.064236,42.595503 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,57.884374,80.225339,65.447512,34.263659,17.544903,67.831085,15.544423,79.641179,55.093958,74.226028,322.900036,13.154023,37.491972,64.618295,103.138872,97.243598,32.118268,85.161730 +aocc -O3 -mfma,52.444747,81.042788,65.413406,38.407054,17.303884,68.792656,15.120523,74.251817,52.827858,72.051234,103.195363,12.865999,37.289828,64.703201,106.049205,97.264154,33.386536,51.753032 +clang -O1,56.707928,80.727833,65.945366,40.662197,12.506890,71.916466,24.959616,79.122857,54.924492,72.253339,935.354558,13.254729,37.377251,61.254333,106.389220,97.632728,28.774371,86.923676 +clang -O2,57.943112,81.091877,66.280749,35.652957,13.449574,68.201572,26.020146,74.016334,55.147394,72.945581,120.104167,12.606225,36.342329,61.253400,105.818809,97.564718,27.360478,47.741362 +clang -O3,56.507210,81.044961,66.329578,37.625843,12.737739,68.056732,22.893684,73.588741,55.091396,72.422387,109.777447,13.080824,37.552115,62.118767,105.108056,97.549210,27.341012,47.919125 +clang -O3 -march=native,53.673364,79.807692,66.262346,34.569209,13.803743,70.641710,15.749356,75.846702,52.136548,73.959382,105.423490,12.541922,35.951361,61.435933,105.091972,97.610363,32.127153,85.047644 +clang -O3 -march=native -ffast-math,53.786284,80.781479,65.861008,36.246404,8.845444,68.501785,16.520431,69.600458,73.355296,69.218714,258.577302,12.471031,37.195912,61.835919,102.490021,97.586569,32.229008,42.580552 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,52.904939,81.160661,66.292718,36.108621,13.741866,67.830795,15.962850,79.156260,52.174817,74.040127,372.397365,13.260912,37.345069,62.231280,104.003928,97.620499,32.113884,84.743272 +clang -O3 -mfma,55.433589,80.208501,66.197090,33.783669,13.536404,66.697682,16.258226,73.250581,52.140075,72.464185,103.956789,12.706051,37.059806,62.040765,105.533298,97.680446,33.462784,50.593046 +gcc -O1,57.247070,80.842859,73.638906,36.413113,12.038936,68.212624,23.460881,87.524206,61.290421,67.323616,532.267349,13.377014,33.656905,73.589330,103.832637,97.504468,46.398260,83.547874 +gcc -O2,52.151538,80.906471,69.886770,35.200300,12.185210,68.444626,22.617251,82.346553,60.898553,57.077538,201.853524,13.492138,33.339271,59.580718,96.013959,101.503653,49.630022,83.897402 +gcc -O2 -funroll-loops,52.882019,79.058773,64.678237,35.630303,8.895032,68.487202,24.465375,78.681770,60.979912,56.977703,91.276767,13.262887,33.351224,57.634888,87.708703,97.503524,46.387273,84.766993 +gcc -O3,52.400254,80.452011,69.311929,35.783591,8.913673,69.239156,18.907372,75.385136,60.903355,56.745935,361.124326,12.719204,33.348947,58.155337,94.993928,97.488046,50.943217,82.541290 +gcc -O3 -funroll-loops,55.193765,79.262542,62.839912,35.217030,8.869078,67.725583,20.629715,73.354395,61.036966,56.663770,361.111616,12.799048,33.320678,57.991083,85.043262,97.503053,49.031183,58.284466 +gcc -O3 -funroll-loops -march=native,52.308755,80.812596,64.441296,34.599245,9.092981,69.780016,14.997118,74.021121,56.552535,56.708801,319.421053,12.241506,33.150432,55.690730,84.778780,97.426452,48.506398,58.340574 +gcc -O3 -funroll-loops -march=native -ffast-math,52.524995,80.722265,64.158483,32.580021,5.361588,68.307381,15.475266,70.659553,59.479815,32.297826,280.844058,4.061722,33.248840,45.685658,78.395556,95.388261,43.587704,42.141849 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,55.345320,81.076785,64.166374,34.329289,8.867701,68.548706,14.788404,79.938230,56.566950,56.663079,171.384270,12.845851,33.353311,59.192934,82.928357,97.593174,48.460740,59.891808 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,56.034270,81.036428,64.244571,34.310026,9.235527,68.911084,14.938328,76.928870,56.567380,56.296511,1022.667682,12.537947,33.079591,57.078766,85.352531,97.543027,48.290743,82.533552 +gcc -O3 -funroll-loops -mfma,53.408444,79.703123,62.611499,35.835193,9.180611,68.390815,14.762079,77.978282,57.760383,56.276302,722.311396,12.264490,33.398091,57.847286,83.940630,97.431970,47.163686,82.352619 +icx -O1 -fp-model=precise,52.905150,79.713735,65.599966,42.830582,14.177069,69.073813,21.902803,82.614517,52.028163,74.950477,724.005637,14.240740,27.684430,63.732944,83.025648,97.781073,46.887519,58.811357 +icx -O2 -fp-model=precise,56.683370,80.623086,56.927516,41.818919,10.941397,68.757934,17.667022,79.197647,49.063218,67.693728,85.204869,14.003083,27.099684,73.025479,80.715391,97.711069,49.405150,60.216545 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,53.580308,79.539993,65.131877,35.636761,5.339450,67.666231,13.284716,67.525643,67.070810,29.419313,58.652061,0.412505,27.204391,60.496556,46.380454,97.613767,29.511733,41.999245 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,54.866713,81.570644,55.420447,36.184422,13.664302,68.091232,12.110339,73.741677,48.985927,66.401032,243.670452,14.184054,27.896060,71.801479,74.880389,97.663725,43.921005,49.933698 +icx -O3 -fp-model=precise,52.502541,80.376239,55.753995,35.749193,10.648394,69.814452,17.650046,72.317276,49.049492,69.722333,84.179382,14.098259,26.333102,71.509409,80.542565,97.539604,19.473592,60.098264 +icx -O3 -march=core-avx2 -fp-model=precise,54.996686,81.842992,64.140276,34.983491,13.708588,68.015148,12.110540,73.252811,49.021643,70.064678,58.810088,13.682689,25.528174,72.954148,59.824023,121.402083,23.987243,50.268606 +icx -O3 -march=native -fp-model=precise,52.809656,81.296898,64.314440,36.405978,13.605049,68.107671,12.123059,74.290338,48.960908,67.531403,58.231542,13.596623,25.083951,71.863190,60.010050,97.664079,23.473287,50.180003 diff --git a/resultados/resultados-5.txt b/resultados/resultados-5.txt deleted file mode 100644 index f321d91..0000000 --- a/resultados/resultados-5.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 56.709711, 79.166413, 65.288894, 42.408399, 17.630124, 67.716647, 26.017099, 79.508632, 55.202589, 72.317594, 943.256881, 13.168738, 36.881733, 68.439556, 105.525645, 97.344154, 29.033605, 85.326191 -aocc -O2 , 52.212276, 79.929061, 65.624409, 37.401266, 17.669773, 68.510854, 24.001731, 75.086377, 55.269527, 71.079678, 119.816609, 13.037997, 35.842550, 64.728524, 106.928784, 106.195241, 27.655518, 47.602424 -aocc -O3 , 56.518184, 80.758229, 64.891181, 36.099288, 17.410113, 68.076159, 18.922339, 74.898533, 55.196908, 72.126943, 116.508481, 12.899804, 37.650397, 65.733091, 106.016249, 97.216586, 27.649164, 47.764576 -aocc -O3 -march=native , 51.178465, 80.595507, 65.552783, 36.268838, 17.676127, 68.966594, 14.569133, 74.483971, 55.090826, 70.204982, 116.558932, 12.661102, 36.788726, 63.550165, 103.808924, 97.248348, 31.782945, 85.183137 -aocc -O3 -march=native -ffast-math , 55.468642, 80.615690, 65.406115, 32.252417, 7.631984, 68.550703, 15.189714, 71.599679, 74.888625, 66.442439, 279.110770, 17.185819, 38.230059, 63.867909, 99.085909, 97.579239, 32.064236, 42.595503 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 57.884374, 80.225339, 65.447512, 34.263659, 17.544903, 67.831085, 15.544423, 79.641179, 55.093958, 74.226028, 322.900036, 13.154023, 37.491972, 64.618295, 103.138872, 97.243598, 32.118268, 85.161730 -aocc -O3 -mfma , 52.444747, 81.042788, 65.413406, 38.407054, 17.303884, 68.792656, 15.120523, 74.251817, 52.827858, 72.051234, 103.195363, 12.865999, 37.289828, 64.703201, 106.049205, 97.264154, 33.386536, 51.753032 -clang -O1 , 56.707928, 80.727833, 65.945366, 40.662197, 12.506890, 71.916466, 24.959616, 79.122857, 54.924492, 72.253339, 935.354558, 13.254729, 37.377251, 61.254333, 106.389220, 97.632728, 28.774371, 86.923676 -clang -O2 , 57.943112, 81.091877, 66.280749, 35.652957, 13.449574, 68.201572, 26.020146, 74.016334, 55.147394, 72.945581, 120.104167, 12.606225, 36.342329, 61.253400, 105.818809, 97.564718, 27.360478, 47.741362 -clang -O3 , 56.507210, 81.044961, 66.329578, 37.625843, 12.737739, 68.056732, 22.893684, 73.588741, 55.091396, 72.422387, 109.777447, 13.080824, 37.552115, 62.118767, 105.108056, 97.549210, 27.341012, 47.919125 -clang -O3 -march=native , 53.673364, 79.807692, 66.262346, 34.569209, 13.803743, 70.641710, 15.749356, 75.846702, 52.136548, 73.959382, 105.423490, 12.541922, 35.951361, 61.435933, 105.091972, 97.610363, 32.127153, 85.047644 -clang -O3 -march=native -ffast-math , 53.786284, 80.781479, 65.861008, 36.246404, 8.845444, 68.501785, 16.520431, 69.600458, 73.355296, 69.218714, 258.577302, 12.471031, 37.195912, 61.835919, 102.490021, 97.586569, 32.229008, 42.580552 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 52.904939, 81.160661, 66.292718, 36.108621, 13.741866, 67.830795, 15.962850, 79.156260, 52.174817, 74.040127, 372.397365, 13.260912, 37.345069, 62.231280, 104.003928, 97.620499, 32.113884, 84.743272 -clang -O3 -mfma , 55.433589, 80.208501, 66.197090, 33.783669, 13.536404, 66.697682, 16.258226, 73.250581, 52.140075, 72.464185, 103.956789, 12.706051, 37.059806, 62.040765, 105.533298, 97.680446, 33.462784, 50.593046 -gcc -O1 , 57.247070, 80.842859, 73.638906, 36.413113, 12.038936, 68.212624, 23.460881, 87.524206, 61.290421, 67.323616, 532.267349, 13.377014, 33.656905, 73.589330, 103.832637, 97.504468, 46.398260, 83.547874 -gcc -O2 , 52.151538, 80.906471, 69.886770, 35.200300, 12.185210, 68.444626, 22.617251, 82.346553, 60.898553, 57.077538, 201.853524, 13.492138, 33.339271, 59.580718, 96.013959, 101.503653, 49.630022, 83.897402 -gcc -O2 -funroll-loops , 52.882019, 79.058773, 64.678237, 35.630303, 8.895032, 68.487202, 24.465375, 78.681770, 60.979912, 56.977703, 91.276767, 13.262887, 33.351224, 57.634888, 87.708703, 97.503524, 46.387273, 84.766993 -gcc -O3 , 52.400254, 80.452011, 69.311929, 35.783591, 8.913673, 69.239156, 18.907372, 75.385136, 60.903355, 56.745935, 361.124326, 12.719204, 33.348947, 58.155337, 94.993928, 97.488046, 50.943217, 82.541290 -gcc -O3 -funroll-loops , 55.193765, 79.262542, 62.839912, 35.217030, 8.869078, 67.725583, 20.629715, 73.354395, 61.036966, 56.663770, 361.111616, 12.799048, 33.320678, 57.991083, 85.043262, 97.503053, 49.031183, 58.284466 -gcc -O3 -funroll-loops -march=native , 52.308755, 80.812596, 64.441296, 34.599245, 9.092981, 69.780016, 14.997118, 74.021121, 56.552535, 56.708801, 319.421053, 12.241506, 33.150432, 55.690730, 84.778780, 97.426452, 48.506398, 58.340574 -gcc -O3 -funroll-loops -march=native -ffast-math, 52.524995, 80.722265, 64.158483, 32.580021, 5.361588, 68.307381, 15.475266, 70.659553, 59.479815, 32.297826, 280.844058, 4.061722, 33.248840, 45.685658, 78.395556, 95.388261, 43.587704, 42.141849 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 55.345320, 81.076785, 64.166374, 34.329289, 8.867701, 68.548706, 14.788404, 79.938230, 56.566950, 56.663079, 171.384270, 12.845851, 33.353311, 59.192934, 82.928357, 97.593174, 48.460740, 59.891808 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 56.034270, 81.036428, 64.244571, 34.310026, 9.235527, 68.911084, 14.938328, 76.928870, 56.567380, 56.296511, 1022.667682, 12.537947, 33.079591, 57.078766, 85.352531, 97.543027, 48.290743, 82.533552 -gcc -O3 -funroll-loops -mfma , 53.408444, 79.703123, 62.611499, 35.835193, 9.180611, 68.390815, 14.762079, 77.978282, 57.760383, 56.276302, 722.311396, 12.264490, 33.398091, 57.847286, 83.940630, 97.431970, 47.163686, 82.352619 -icx -O1 -fp-model=precise , 52.905150, 79.713735, 65.599966, 42.830582, 14.177069, 69.073813, 21.902803, 82.614517, 52.028163, 74.950477, 724.005637, 14.240740, 27.684430, 63.732944, 83.025648, 97.781073, 46.887519, 58.811357 -icx -O2 -fp-model=precise , 56.683370, 80.623086, 56.927516, 41.818919, 10.941397, 68.757934, 17.667022, 79.197647, 49.063218, 67.693728, 85.204869, 14.003083, 27.099684, 73.025479, 80.715391, 97.711069, 49.405150, 60.216545 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 53.580308, 79.539993, 65.131877, 35.636761, 5.339450, 67.666231, 13.284716, 67.525643, 67.070810, 29.419313, 58.652061, 0.412505, 27.204391, 60.496556, 46.380454, 97.613767, 29.511733, 41.999245 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 54.866713, 81.570644, 55.420447, 36.184422, 13.664302, 68.091232, 12.110339, 73.741677, 48.985927, 66.401032, 243.670452, 14.184054, 27.896060, 71.801479, 74.880389, 97.663725, 43.921005, 49.933698 -icx -O3 -fp-model=precise , 52.502541, 80.376239, 55.753995, 35.749193, 10.648394, 69.814452, 17.650046, 72.317276, 49.049492, 69.722333, 84.179382, 14.098259, 26.333102, 71.509409, 80.542565, 97.539604, 19.473592, 60.098264 -icx -O3 -march=core-avx2 -fp-model=precise , 54.996686, 81.842992, 64.140276, 34.983491, 13.708588, 68.015148, 12.110540, 73.252811, 49.021643, 70.064678, 58.810088, 13.682689, 25.528174, 72.954148, 59.824023, 121.402083, 23.987243, 50.268606 -icx -O3 -march=native -fp-model=precise , 52.809656, 81.296898, 64.314440, 36.405978, 13.605049, 68.107671, 12.123059, 74.290338, 48.960908, 67.531403, 58.231542, 13.596623, 25.083951, 71.863190, 60.010050, 97.664079, 23.473287, 50.180003 diff --git a/resultados/resultados-6.csv b/resultados/resultados-6.csv new file mode 100644 index 0000000..ddcf88d --- /dev/null +++ b/resultados/resultados-6.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,52.712297,80.814783,65.129749,41.369790,16.873057,67.219445,26.068693,79.362718,55.221744,76.662074,942.247762,13.301347,35.236864,68.835553,104.375414,97.316067,29.046506,85.666477 +aocc -O2,54.827857,80.973170,65.097531,37.139070,17.653566,67.035498,24.193284,74.946246,55.232056,74.219784,119.846303,12.850942,36.209095,64.897460,106.365402,97.368602,27.925836,47.649769 +aocc -O3,59.380976,81.137090,65.068777,36.610116,17.351886,69.676798,19.206214,74.374278,55.172783,71.672319,113.304831,13.135403,36.338382,64.810871,106.515294,97.177925,27.832253,47.936878 +aocc -O3 -march=native,53.902448,80.938891,65.075071,34.139319,16.882124,68.445272,15.511984,74.777163,55.834806,73.986336,116.653049,12.550435,36.937163,64.571854,106.895204,97.245713,32.179493,84.860800 +aocc -O3 -march=native -ffast-math,56.471284,80.864083,65.303749,32.925339,7.571830,68.988344,15.385951,69.844601,74.913190,65.312145,279.082092,12.456975,37.147843,63.505751,98.893760,97.243499,31.995258,42.515166 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,51.460976,80.793811,65.352502,34.520559,16.709137,69.165789,15.463340,80.359219,55.089786,70.185377,323.033894,13.021594,37.721180,65.421741,104.589294,97.267190,32.222190,84.987387 +aocc -O3 -mfma,54.035510,79.151020,65.435184,35.716411,17.273294,66.572114,15.009757,74.633763,52.964094,69.250312,103.274921,12.217315,37.340384,64.994346,104.972392,97.324388,33.332663,51.493649 +clang -O1,49.658114,80.412676,66.302437,39.295400,12.499647,69.246381,24.803022,79.676155,55.143147,74.913255,934.958791,13.632284,37.219070,61.887762,105.816876,97.704061,28.825353,88.109030 +clang -O2,50.839046,80.518497,66.295189,38.304769,13.895210,68.893594,26.014249,73.767318,55.141315,72.248758,120.216236,12.762358,36.483930,62.061306,106.339075,97.711434,27.292045,47.787899 +clang -O3,53.809520,78.836945,66.402508,37.209024,12.227844,68.605527,22.821561,73.545419,55.088851,72.200031,109.890023,12.768208,36.464014,62.027383,106.341878,97.729708,27.436120,47.654173 +clang -O3 -march=native,55.801543,80.060142,66.422088,34.034649,13.819142,68.138321,15.763108,75.122052,52.164829,73.897637,105.507600,12.686300,37.868502,61.725270,104.996517,97.750156,32.202215,84.755094 +clang -O3 -march=native -ffast-math,55.154669,81.048269,66.105842,35.105054,8.929020,68.152439,16.487319,70.445277,73.343800,66.604719,258.404426,12.299724,36.549891,61.912207,101.498900,97.670351,32.277548,42.484711 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,60.870393,80.651771,66.209638,34.221856,13.955163,68.785357,15.936291,79.062231,52.149226,74.007574,372.428638,13.243389,38.432861,62.900428,103.746599,97.610738,32.011034,84.843252 +clang -O3 -mfma,52.684433,79.784755,66.000924,36.457159,13.554125,68.275178,16.264248,74.667983,52.163892,70.071770,103.915965,12.542543,35.795758,62.084712,106.461747,97.669485,33.628933,50.364907 +gcc -O1,55.152497,80.311085,73.578002,36.082548,12.065999,69.135427,23.509877,87.006252,60.859673,67.059838,532.519784,13.461994,33.839322,73.613278,102.762854,97.510645,46.072034,83.462065 +gcc -O2,59.896698,80.709343,69.765538,36.220816,12.144248,68.670762,22.633548,83.356578,60.897248,57.038943,201.944223,13.233485,34.173083,55.414137,95.763732,97.471951,49.697332,83.926137 +gcc -O2 -funroll-loops,53.092342,80.282408,64.783891,35.232117,8.912215,67.652440,24.661052,79.858962,60.961378,56.659229,91.282644,13.151359,33.140004,54.365566,86.766209,97.485062,48.506415,84.747868 +gcc -O3,51.583087,79.634060,69.508124,35.604972,8.971593,67.655439,19.739285,74.161927,60.895742,56.555181,361.495408,12.575119,34.030100,58.500956,95.568280,97.501194,48.556287,82.757081 +gcc -O3 -funroll-loops,52.283439,80.521473,62.553033,35.529072,8.867774,68.477323,20.771373,73.947069,61.055181,57.105277,361.159894,12.884615,34.236296,57.626025,84.847001,97.501545,49.192155,58.374025 +gcc -O3 -funroll-loops -march=native,52.387481,80.555979,63.807651,34.526054,9.046841,68.038667,14.900716,73.277346,56.542577,56.023280,319.186635,12.456293,33.352526,57.213477,83.930694,97.503469,49.191934,58.251182 +gcc -O3 -funroll-loops -march=native -ffast-math,52.954201,79.745806,64.196139,33.641347,5.364837,68.625542,15.343593,69.048163,59.477509,31.723583,280.883499,4.244537,33.701601,46.052419,76.819337,97.509936,46.965108,41.971733 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,56.344195,80.811478,63.559531,33.509681,8.893774,68.093547,14.972757,79.513335,56.584197,56.680929,171.343187,12.836368,34.115904,55.569445,84.783906,97.484149,46.704733,59.935398 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,55.528607,81.043773,64.614607,33.431182,9.217804,67.429783,14.944757,76.102335,56.572355,56.721001,1022.641478,12.796009,33.439403,52.939424,85.455127,97.473248,48.071412,82.512533 +gcc -O3 -funroll-loops -mfma,54.742977,80.683704,62.755228,35.562282,9.177563,68.530972,14.699236,76.168152,57.955960,56.474205,722.514989,12.464926,32.976161,53.435044,83.273257,97.551638,49.050310,82.395521 +icx -O1 -fp-model=precise,62.115277,80.196514,65.297459,41.231244,13.611504,67.755760,21.900825,81.791109,52.061745,75.268299,723.940093,14.316133,27.284147,63.692449,84.522872,97.760351,46.446012,47.612257 +icx -O2 -fp-model=precise,55.491567,80.961739,57.141959,41.611714,11.197440,68.114320,17.659465,72.544683,49.044378,69.376895,85.220209,14.012703,27.505298,71.451779,80.522455,97.617477,49.162579,60.346227 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,56.177588,80.555579,64.893942,35.071328,5.313270,67.820033,13.383154,66.898623,67.050451,29.483990,58.554610,0.416404,27.897264,60.514860,46.020181,97.664253,29.494237,41.798586 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,52.935684,81.747116,55.509937,35.878420,13.594152,71.455656,12.216422,74.400531,49.039264,66.688517,243.697401,14.835624,25.996122,71.469484,74.420896,97.711788,43.873116,49.870117 +icx -O3 -fp-model=precise,53.708642,81.302931,55.844914,35.819613,11.066745,68.304523,17.577723,72.329795,48.997309,70.235221,84.310570,14.017654,26.012447,72.357835,79.320299,97.733802,19.379183,59.998860 +icx -O3 -march=core-avx2 -fp-model=precise,53.211567,81.793463,64.749862,35.586814,13.663221,68.125728,12.128709,73.026656,48.980649,70.108633,58.783995,13.780338,26.668471,71.424054,60.036126,97.694375,23.842676,50.266407 +icx -O3 -march=native -fp-model=precise,50.832840,81.163772,64.239592,34.828286,13.655736,69.460932,12.007407,74.143612,48.954586,67.445881,58.517936,13.532096,26.615817,72.213376,58.849748,97.661312,23.532010,50.241885 diff --git a/resultados/resultados-6.txt b/resultados/resultados-6.txt deleted file mode 100644 index 552b0d5..0000000 --- a/resultados/resultados-6.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 52.712297, 80.814783, 65.129749, 41.369790, 16.873057, 67.219445, 26.068693, 79.362718, 55.221744, 76.662074, 942.247762, 13.301347, 35.236864, 68.835553, 104.375414, 97.316067, 29.046506, 85.666477 -aocc -O2 , 54.827857, 80.973170, 65.097531, 37.139070, 17.653566, 67.035498, 24.193284, 74.946246, 55.232056, 74.219784, 119.846303, 12.850942, 36.209095, 64.897460, 106.365402, 97.368602, 27.925836, 47.649769 -aocc -O3 , 59.380976, 81.137090, 65.068777, 36.610116, 17.351886, 69.676798, 19.206214, 74.374278, 55.172783, 71.672319, 113.304831, 13.135403, 36.338382, 64.810871, 106.515294, 97.177925, 27.832253, 47.936878 -aocc -O3 -march=native , 53.902448, 80.938891, 65.075071, 34.139319, 16.882124, 68.445272, 15.511984, 74.777163, 55.834806, 73.986336, 116.653049, 12.550435, 36.937163, 64.571854, 106.895204, 97.245713, 32.179493, 84.860800 -aocc -O3 -march=native -ffast-math , 56.471284, 80.864083, 65.303749, 32.925339, 7.571830, 68.988344, 15.385951, 69.844601, 74.913190, 65.312145, 279.082092, 12.456975, 37.147843, 63.505751, 98.893760, 97.243499, 31.995258, 42.515166 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 51.460976, 80.793811, 65.352502, 34.520559, 16.709137, 69.165789, 15.463340, 80.359219, 55.089786, 70.185377, 323.033894, 13.021594, 37.721180, 65.421741, 104.589294, 97.267190, 32.222190, 84.987387 -aocc -O3 -mfma , 54.035510, 79.151020, 65.435184, 35.716411, 17.273294, 66.572114, 15.009757, 74.633763, 52.964094, 69.250312, 103.274921, 12.217315, 37.340384, 64.994346, 104.972392, 97.324388, 33.332663, 51.493649 -clang -O1 , 49.658114, 80.412676, 66.302437, 39.295400, 12.499647, 69.246381, 24.803022, 79.676155, 55.143147, 74.913255, 934.958791, 13.632284, 37.219070, 61.887762, 105.816876, 97.704061, 28.825353, 88.109030 -clang -O2 , 50.839046, 80.518497, 66.295189, 38.304769, 13.895210, 68.893594, 26.014249, 73.767318, 55.141315, 72.248758, 120.216236, 12.762358, 36.483930, 62.061306, 106.339075, 97.711434, 27.292045, 47.787899 -clang -O3 , 53.809520, 78.836945, 66.402508, 37.209024, 12.227844, 68.605527, 22.821561, 73.545419, 55.088851, 72.200031, 109.890023, 12.768208, 36.464014, 62.027383, 106.341878, 97.729708, 27.436120, 47.654173 -clang -O3 -march=native , 55.801543, 80.060142, 66.422088, 34.034649, 13.819142, 68.138321, 15.763108, 75.122052, 52.164829, 73.897637, 105.507600, 12.686300, 37.868502, 61.725270, 104.996517, 97.750156, 32.202215, 84.755094 -clang -O3 -march=native -ffast-math , 55.154669, 81.048269, 66.105842, 35.105054, 8.929020, 68.152439, 16.487319, 70.445277, 73.343800, 66.604719, 258.404426, 12.299724, 36.549891, 61.912207, 101.498900, 97.670351, 32.277548, 42.484711 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 60.870393, 80.651771, 66.209638, 34.221856, 13.955163, 68.785357, 15.936291, 79.062231, 52.149226, 74.007574, 372.428638, 13.243389, 38.432861, 62.900428, 103.746599, 97.610738, 32.011034, 84.843252 -clang -O3 -mfma , 52.684433, 79.784755, 66.000924, 36.457159, 13.554125, 68.275178, 16.264248, 74.667983, 52.163892, 70.071770, 103.915965, 12.542543, 35.795758, 62.084712, 106.461747, 97.669485, 33.628933, 50.364907 -gcc -O1 , 55.152497, 80.311085, 73.578002, 36.082548, 12.065999, 69.135427, 23.509877, 87.006252, 60.859673, 67.059838, 532.519784, 13.461994, 33.839322, 73.613278, 102.762854, 97.510645, 46.072034, 83.462065 -gcc -O2 , 59.896698, 80.709343, 69.765538, 36.220816, 12.144248, 68.670762, 22.633548, 83.356578, 60.897248, 57.038943, 201.944223, 13.233485, 34.173083, 55.414137, 95.763732, 97.471951, 49.697332, 83.926137 -gcc -O2 -funroll-loops , 53.092342, 80.282408, 64.783891, 35.232117, 8.912215, 67.652440, 24.661052, 79.858962, 60.961378, 56.659229, 91.282644, 13.151359, 33.140004, 54.365566, 86.766209, 97.485062, 48.506415, 84.747868 -gcc -O3 , 51.583087, 79.634060, 69.508124, 35.604972, 8.971593, 67.655439, 19.739285, 74.161927, 60.895742, 56.555181, 361.495408, 12.575119, 34.030100, 58.500956, 95.568280, 97.501194, 48.556287, 82.757081 -gcc -O3 -funroll-loops , 52.283439, 80.521473, 62.553033, 35.529072, 8.867774, 68.477323, 20.771373, 73.947069, 61.055181, 57.105277, 361.159894, 12.884615, 34.236296, 57.626025, 84.847001, 97.501545, 49.192155, 58.374025 -gcc -O3 -funroll-loops -march=native , 52.387481, 80.555979, 63.807651, 34.526054, 9.046841, 68.038667, 14.900716, 73.277346, 56.542577, 56.023280, 319.186635, 12.456293, 33.352526, 57.213477, 83.930694, 97.503469, 49.191934, 58.251182 -gcc -O3 -funroll-loops -march=native -ffast-math, 52.954201, 79.745806, 64.196139, 33.641347, 5.364837, 68.625542, 15.343593, 69.048163, 59.477509, 31.723583, 280.883499, 4.244537, 33.701601, 46.052419, 76.819337, 97.509936, 46.965108, 41.971733 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 56.344195, 80.811478, 63.559531, 33.509681, 8.893774, 68.093547, 14.972757, 79.513335, 56.584197, 56.680929, 171.343187, 12.836368, 34.115904, 55.569445, 84.783906, 97.484149, 46.704733, 59.935398 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 55.528607, 81.043773, 64.614607, 33.431182, 9.217804, 67.429783, 14.944757, 76.102335, 56.572355, 56.721001, 1022.641478, 12.796009, 33.439403, 52.939424, 85.455127, 97.473248, 48.071412, 82.512533 -gcc -O3 -funroll-loops -mfma , 54.742977, 80.683704, 62.755228, 35.562282, 9.177563, 68.530972, 14.699236, 76.168152, 57.955960, 56.474205, 722.514989, 12.464926, 32.976161, 53.435044, 83.273257, 97.551638, 49.050310, 82.395521 -icx -O1 -fp-model=precise , 62.115277, 80.196514, 65.297459, 41.231244, 13.611504, 67.755760, 21.900825, 81.791109, 52.061745, 75.268299, 723.940093, 14.316133, 27.284147, 63.692449, 84.522872, 97.760351, 46.446012, 47.612257 -icx -O2 -fp-model=precise , 55.491567, 80.961739, 57.141959, 41.611714, 11.197440, 68.114320, 17.659465, 72.544683, 49.044378, 69.376895, 85.220209, 14.012703, 27.505298, 71.451779, 80.522455, 97.617477, 49.162579, 60.346227 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 56.177588, 80.555579, 64.893942, 35.071328, 5.313270, 67.820033, 13.383154, 66.898623, 67.050451, 29.483990, 58.554610, 0.416404, 27.897264, 60.514860, 46.020181, 97.664253, 29.494237, 41.798586 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 52.935684, 81.747116, 55.509937, 35.878420, 13.594152, 71.455656, 12.216422, 74.400531, 49.039264, 66.688517, 243.697401, 14.835624, 25.996122, 71.469484, 74.420896, 97.711788, 43.873116, 49.870117 -icx -O3 -fp-model=precise , 53.708642, 81.302931, 55.844914, 35.819613, 11.066745, 68.304523, 17.577723, 72.329795, 48.997309, 70.235221, 84.310570, 14.017654, 26.012447, 72.357835, 79.320299, 97.733802, 19.379183, 59.998860 -icx -O3 -march=core-avx2 -fp-model=precise , 53.211567, 81.793463, 64.749862, 35.586814, 13.663221, 68.125728, 12.128709, 73.026656, 48.980649, 70.108633, 58.783995, 13.780338, 26.668471, 71.424054, 60.036126, 97.694375, 23.842676, 50.266407 -icx -O3 -march=native -fp-model=precise , 50.832840, 81.163772, 64.239592, 34.828286, 13.655736, 69.460932, 12.007407, 74.143612, 48.954586, 67.445881, 58.517936, 13.532096, 26.615817, 72.213376, 58.849748, 97.661312, 23.532010, 50.241885 diff --git a/resultados/resultados-7.csv b/resultados/resultados-7.csv new file mode 100644 index 0000000..490ae4b --- /dev/null +++ b/resultados/resultados-7.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,54.077346,79.799617,65.445657,41.245576,17.862399,69.845601,26.069410,79.463329,55.403084,72.850496,942.928076,13.331763,36.309600,69.313448,104.850994,97.159931,29.115109,83.827293 +aocc -O2,56.555220,80.150161,65.142259,37.074172,17.686885,69.129491,24.069218,75.170226,55.212855,74.292364,119.787751,12.822435,35.589583,64.151852,105.968532,97.356603,27.921398,47.717163 +aocc -O3,57.458454,79.543671,65.069850,36.525364,16.411602,67.511686,18.836510,74.628040,55.222038,70.200203,113.407513,12.774405,36.269807,65.401580,105.611972,97.328582,27.914589,47.777302 +aocc -O3 -march=native,56.016112,81.137323,65.122051,35.985001,16.821994,68.000018,15.523084,74.423729,55.131743,73.957876,116.647081,12.550623,37.872969,64.064209,105.167934,97.284736,32.118688,85.125999 +aocc -O3 -march=native -ffast-math,55.976785,81.396145,65.117030,33.629020,7.557351,68.863477,15.362536,69.255010,74.891445,68.784360,279.128998,12.153533,36.747719,64.595721,98.881414,97.345202,32.024747,42.579795 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,52.737440,81.272506,65.096714,35.038088,17.532799,68.388433,15.539731,78.443766,55.073821,74.145127,322.963972,12.935451,37.444090,65.818779,104.502028,97.314259,32.180768,85.322578 +aocc -O3 -mfma,58.302032,81.912092,65.533986,36.408050,16.405643,69.142695,15.155114,74.364084,53.027828,72.103483,103.360181,12.698066,36.071717,65.044637,105.173164,97.207422,33.255133,51.911632 +clang -O1,56.717141,80.249261,66.183467,38.921802,12.488848,67.986919,24.939944,79.486298,55.174615,75.087473,935.349211,13.341957,36.324662,61.383398,106.704973,97.668536,28.556237,87.925869 +clang -O2,53.550493,80.783510,66.389003,36.901533,13.370769,70.244190,26.035152,73.688261,55.109144,76.756388,120.125140,12.622829,36.133223,61.511472,105.658792,97.709489,27.350417,47.526905 +clang -O3,54.356711,81.005715,66.228891,36.774368,12.726398,69.181133,22.896459,73.732506,55.075204,71.989277,109.697194,12.764267,37.131102,61.343787,105.448764,97.700489,27.233210,47.624098 +clang -O3 -march=native,56.372769,80.624326,66.338863,35.182944,13.789366,68.087148,15.777068,75.104898,52.195646,71.007376,105.404131,12.608094,37.146414,61.273989,105.890014,97.556782,32.166002,84.958565 +clang -O3 -march=native -ffast-math,52.845322,82.427294,66.252286,34.403441,8.827059,66.591201,16.465061,68.958739,73.314028,66.078625,258.613243,12.237197,35.940193,61.728554,101.917537,97.700922,32.265173,42.391087 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,53.422288,80.847300,66.283426,34.699833,13.910278,69.233099,15.754146,79.796439,52.144605,74.091356,372.393898,13.231615,36.782832,61.615221,103.339837,97.679256,32.112637,85.352457 +clang -O3 -mfma,59.794495,81.050959,66.168125,35.564814,13.617214,68.242718,16.165634,73.421125,52.167276,70.353008,104.032280,12.604392,37.130556,61.997984,106.090773,97.535495,33.399746,50.321417 +gcc -O1,56.079868,80.980251,73.837085,35.933433,12.008404,68.236844,24.014155,87.147889,60.864651,67.738264,532.403017,13.350383,33.750274,73.117668,103.018684,97.501385,47.513983,83.511215 +gcc -O2,52.279414,79.548768,70.054484,35.345129,12.063779,68.307726,22.677484,82.389977,60.883525,56.702386,201.727779,13.336857,33.646266,59.592734,95.359285,97.513155,49.935518,84.016199 +gcc -O2 -funroll-loops,56.019267,80.882074,64.884676,34.835737,8.878450,68.009876,24.586703,80.142134,60.956740,56.446683,91.328998,13.116225,34.297443,58.531087,87.169032,97.494597,48.551775,84.802450 +gcc -O3,54.999510,80.461174,69.295579,35.117868,8.915475,68.134410,18.949478,74.459582,60.924866,57.196562,361.536885,12.614550,34.305081,58.359993,95.492445,97.501226,49.143238,82.339962 +gcc -O3 -funroll-loops,52.888789,79.694051,62.698867,35.526816,8.855963,68.584968,20.700534,73.251542,61.045535,56.550611,361.354399,12.623950,33.422166,57.516566,85.751236,97.500087,47.689374,58.212642 +gcc -O3 -funroll-loops -march=native,54.352199,80.605995,64.088404,33.938062,9.000213,67.668501,14.973799,72.652484,56.550523,57.209340,319.262262,12.361954,33.435119,56.895242,83.478351,97.495927,46.773263,58.238416 +gcc -O3 -funroll-loops -march=native -ffast-math,52.734866,79.382201,64.103116,33.804133,5.361673,68.064089,15.390949,68.637339,59.800291,31.821235,280.942242,4.048837,33.500129,45.790045,78.212770,97.517432,43.180910,41.961601 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,52.547169,81.041592,63.870118,34.123211,8.864891,68.554189,14.766172,79.546624,56.565275,56.793433,171.265001,12.993764,33.819028,59.714453,84.800647,97.496503,48.513974,59.928790 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,52.288371,80.603246,64.540727,33.717795,9.220813,69.555770,14.772993,77.243501,56.557796,56.756892,1022.495481,12.599420,33.263323,58.041806,85.705390,97.482719,46.773370,82.319261 +gcc -O3 -funroll-loops -mfma,56.134052,80.195778,62.321989,36.192209,9.239320,69.095610,14.648172,78.071213,57.942929,56.332452,722.513042,12.255276,34.219324,57.526284,83.124180,97.517863,46.196576,82.489206 +icx -O1 -fp-model=precise,52.950211,80.440072,65.186955,41.269181,13.655692,68.084439,21.859300,82.738528,52.068295,71.771275,723.946291,14.543080,26.861672,63.403001,84.145907,97.666831,48.503547,47.239020 +icx -O2 -fp-model=precise,57.949159,81.569607,56.530702,41.759796,10.721638,68.285044,17.757585,72.514495,49.071352,69.422199,85.303679,13.962521,27.663740,76.946170,82.073157,97.627259,50.608441,60.363196 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,53.931411,79.977663,64.760667,34.237453,5.149669,67.746245,13.230986,67.703080,67.085583,26.189675,58.381999,0.406462,27.080564,60.824713,45.765309,97.728885,29.499798,41.798214 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,54.236359,81.452454,55.553165,35.849987,13.646736,69.913390,12.131886,74.077718,49.012737,67.386461,243.807253,14.060684,27.184665,71.543943,75.890568,97.625969,43.496734,49.845833 +icx -O3 -fp-model=precise,52.888317,81.518395,55.959197,36.204141,10.650748,68.024912,17.618628,72.273148,49.004461,67.410541,84.625998,13.952093,26.385999,71.835087,78.785485,97.978572,19.184032,60.100008 +icx -O3 -march=core-avx2 -fp-model=precise,51.984872,81.473897,64.431909,35.711703,13.667730,68.663643,11.892607,72.733939,49.008905,69.731420,58.807141,13.729795,26.587306,71.891896,60.338105,97.712845,23.871716,50.114064 +icx -O3 -march=native -fp-model=precise,53.318511,80.795339,64.390122,35.844370,13.636503,68.105763,11.990222,74.347427,48.950007,67.267305,58.148233,13.677220,27.227735,72.008674,59.642340,97.634795,23.584018,50.264257 diff --git a/resultados/resultados-7.txt b/resultados/resultados-7.txt deleted file mode 100644 index f448d9f..0000000 --- a/resultados/resultados-7.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 54.077346, 79.799617, 65.445657, 41.245576, 17.862399, 69.845601, 26.069410, 79.463329, 55.403084, 72.850496, 942.928076, 13.331763, 36.309600, 69.313448, 104.850994, 97.159931, 29.115109, 83.827293 -aocc -O2 , 56.555220, 80.150161, 65.142259, 37.074172, 17.686885, 69.129491, 24.069218, 75.170226, 55.212855, 74.292364, 119.787751, 12.822435, 35.589583, 64.151852, 105.968532, 97.356603, 27.921398, 47.717163 -aocc -O3 , 57.458454, 79.543671, 65.069850, 36.525364, 16.411602, 67.511686, 18.836510, 74.628040, 55.222038, 70.200203, 113.407513, 12.774405, 36.269807, 65.401580, 105.611972, 97.328582, 27.914589, 47.777302 -aocc -O3 -march=native , 56.016112, 81.137323, 65.122051, 35.985001, 16.821994, 68.000018, 15.523084, 74.423729, 55.131743, 73.957876, 116.647081, 12.550623, 37.872969, 64.064209, 105.167934, 97.284736, 32.118688, 85.125999 -aocc -O3 -march=native -ffast-math , 55.976785, 81.396145, 65.117030, 33.629020, 7.557351, 68.863477, 15.362536, 69.255010, 74.891445, 68.784360, 279.128998, 12.153533, 36.747719, 64.595721, 98.881414, 97.345202, 32.024747, 42.579795 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 52.737440, 81.272506, 65.096714, 35.038088, 17.532799, 68.388433, 15.539731, 78.443766, 55.073821, 74.145127, 322.963972, 12.935451, 37.444090, 65.818779, 104.502028, 97.314259, 32.180768, 85.322578 -aocc -O3 -mfma , 58.302032, 81.912092, 65.533986, 36.408050, 16.405643, 69.142695, 15.155114, 74.364084, 53.027828, 72.103483, 103.360181, 12.698066, 36.071717, 65.044637, 105.173164, 97.207422, 33.255133, 51.911632 -clang -O1 , 56.717141, 80.249261, 66.183467, 38.921802, 12.488848, 67.986919, 24.939944, 79.486298, 55.174615, 75.087473, 935.349211, 13.341957, 36.324662, 61.383398, 106.704973, 97.668536, 28.556237, 87.925869 -clang -O2 , 53.550493, 80.783510, 66.389003, 36.901533, 13.370769, 70.244190, 26.035152, 73.688261, 55.109144, 76.756388, 120.125140, 12.622829, 36.133223, 61.511472, 105.658792, 97.709489, 27.350417, 47.526905 -clang -O3 , 54.356711, 81.005715, 66.228891, 36.774368, 12.726398, 69.181133, 22.896459, 73.732506, 55.075204, 71.989277, 109.697194, 12.764267, 37.131102, 61.343787, 105.448764, 97.700489, 27.233210, 47.624098 -clang -O3 -march=native , 56.372769, 80.624326, 66.338863, 35.182944, 13.789366, 68.087148, 15.777068, 75.104898, 52.195646, 71.007376, 105.404131, 12.608094, 37.146414, 61.273989, 105.890014, 97.556782, 32.166002, 84.958565 -clang -O3 -march=native -ffast-math , 52.845322, 82.427294, 66.252286, 34.403441, 8.827059, 66.591201, 16.465061, 68.958739, 73.314028, 66.078625, 258.613243, 12.237197, 35.940193, 61.728554, 101.917537, 97.700922, 32.265173, 42.391087 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 53.422288, 80.847300, 66.283426, 34.699833, 13.910278, 69.233099, 15.754146, 79.796439, 52.144605, 74.091356, 372.393898, 13.231615, 36.782832, 61.615221, 103.339837, 97.679256, 32.112637, 85.352457 -clang -O3 -mfma , 59.794495, 81.050959, 66.168125, 35.564814, 13.617214, 68.242718, 16.165634, 73.421125, 52.167276, 70.353008, 104.032280, 12.604392, 37.130556, 61.997984, 106.090773, 97.535495, 33.399746, 50.321417 -gcc -O1 , 56.079868, 80.980251, 73.837085, 35.933433, 12.008404, 68.236844, 24.014155, 87.147889, 60.864651, 67.738264, 532.403017, 13.350383, 33.750274, 73.117668, 103.018684, 97.501385, 47.513983, 83.511215 -gcc -O2 , 52.279414, 79.548768, 70.054484, 35.345129, 12.063779, 68.307726, 22.677484, 82.389977, 60.883525, 56.702386, 201.727779, 13.336857, 33.646266, 59.592734, 95.359285, 97.513155, 49.935518, 84.016199 -gcc -O2 -funroll-loops , 56.019267, 80.882074, 64.884676, 34.835737, 8.878450, 68.009876, 24.586703, 80.142134, 60.956740, 56.446683, 91.328998, 13.116225, 34.297443, 58.531087, 87.169032, 97.494597, 48.551775, 84.802450 -gcc -O3 , 54.999510, 80.461174, 69.295579, 35.117868, 8.915475, 68.134410, 18.949478, 74.459582, 60.924866, 57.196562, 361.536885, 12.614550, 34.305081, 58.359993, 95.492445, 97.501226, 49.143238, 82.339962 -gcc -O3 -funroll-loops , 52.888789, 79.694051, 62.698867, 35.526816, 8.855963, 68.584968, 20.700534, 73.251542, 61.045535, 56.550611, 361.354399, 12.623950, 33.422166, 57.516566, 85.751236, 97.500087, 47.689374, 58.212642 -gcc -O3 -funroll-loops -march=native , 54.352199, 80.605995, 64.088404, 33.938062, 9.000213, 67.668501, 14.973799, 72.652484, 56.550523, 57.209340, 319.262262, 12.361954, 33.435119, 56.895242, 83.478351, 97.495927, 46.773263, 58.238416 -gcc -O3 -funroll-loops -march=native -ffast-math, 52.734866, 79.382201, 64.103116, 33.804133, 5.361673, 68.064089, 15.390949, 68.637339, 59.800291, 31.821235, 280.942242, 4.048837, 33.500129, 45.790045, 78.212770, 97.517432, 43.180910, 41.961601 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 52.547169, 81.041592, 63.870118, 34.123211, 8.864891, 68.554189, 14.766172, 79.546624, 56.565275, 56.793433, 171.265001, 12.993764, 33.819028, 59.714453, 84.800647, 97.496503, 48.513974, 59.928790 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 52.288371, 80.603246, 64.540727, 33.717795, 9.220813, 69.555770, 14.772993, 77.243501, 56.557796, 56.756892, 1022.495481, 12.599420, 33.263323, 58.041806, 85.705390, 97.482719, 46.773370, 82.319261 -gcc -O3 -funroll-loops -mfma , 56.134052, 80.195778, 62.321989, 36.192209, 9.239320, 69.095610, 14.648172, 78.071213, 57.942929, 56.332452, 722.513042, 12.255276, 34.219324, 57.526284, 83.124180, 97.517863, 46.196576, 82.489206 -icx -O1 -fp-model=precise , 52.950211, 80.440072, 65.186955, 41.269181, 13.655692, 68.084439, 21.859300, 82.738528, 52.068295, 71.771275, 723.946291, 14.543080, 26.861672, 63.403001, 84.145907, 97.666831, 48.503547, 47.239020 -icx -O2 -fp-model=precise , 57.949159, 81.569607, 56.530702, 41.759796, 10.721638, 68.285044, 17.757585, 72.514495, 49.071352, 69.422199, 85.303679, 13.962521, 27.663740, 76.946170, 82.073157, 97.627259, 50.608441, 60.363196 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 53.931411, 79.977663, 64.760667, 34.237453, 5.149669, 67.746245, 13.230986, 67.703080, 67.085583, 26.189675, 58.381999, 0.406462, 27.080564, 60.824713, 45.765309, 97.728885, 29.499798, 41.798214 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 54.236359, 81.452454, 55.553165, 35.849987, 13.646736, 69.913390, 12.131886, 74.077718, 49.012737, 67.386461, 243.807253, 14.060684, 27.184665, 71.543943, 75.890568, 97.625969, 43.496734, 49.845833 -icx -O3 -fp-model=precise , 52.888317, 81.518395, 55.959197, 36.204141, 10.650748, 68.024912, 17.618628, 72.273148, 49.004461, 67.410541, 84.625998, 13.952093, 26.385999, 71.835087, 78.785485, 97.978572, 19.184032, 60.100008 -icx -O3 -march=core-avx2 -fp-model=precise , 51.984872, 81.473897, 64.431909, 35.711703, 13.667730, 68.663643, 11.892607, 72.733939, 49.008905, 69.731420, 58.807141, 13.729795, 26.587306, 71.891896, 60.338105, 97.712845, 23.871716, 50.114064 -icx -O3 -march=native -fp-model=precise , 53.318511, 80.795339, 64.390122, 35.844370, 13.636503, 68.105763, 11.990222, 74.347427, 48.950007, 67.267305, 58.148233, 13.677220, 27.227735, 72.008674, 59.642340, 97.634795, 23.584018, 50.264257 diff --git a/resultados/resultados-8.csv b/resultados/resultados-8.csv new file mode 100644 index 0000000..2de840e --- /dev/null +++ b/resultados/resultados-8.csv @@ -0,0 +1,32 @@ +CompiladorFlags,backprop,bfs,b+tree,euler3d-cpu-double,heartwall,hotspot,hotspot3D,kmeans,lavaMD,leukocyte,lud,myocyte,nn,nw,particle-filter,pathfinder,srad,streamcluster +aocc -O1,52.707668,79.359512,65.543273,42.463967,17.868977,68.919723,26.047946,80.048053,55.204832,72.098692,951.203883,13.376726,36.595150,69.124841,106.475906,97.320302,29.081211,85.342495 +aocc -O2,52.684725,79.447004,65.151317,36.321612,16.739789,68.621123,24.025050,74.235804,55.225240,71.899371,119.801210,12.822446,36.913717,64.426103,107.172522,97.295295,27.701610,47.777099 +aocc -O3,58.477441,80.967910,64.814801,37.285759,17.355928,69.034008,18.816213,74.437436,55.187787,69.149705,113.230810,13.142887,36.542652,64.799489,106.794146,97.229444,27.669219,47.736058 +aocc -O3 -march=native,52.958148,81.120594,65.072903,36.215039,16.862055,68.401407,15.759456,74.367224,55.109023,70.175540,116.578040,12.729113,35.523265,64.432320,104.364021,97.191390,32.056647,85.132330 +aocc -O3 -march=native -ffast-math,56.534948,81.131936,65.281219,32.620864,7.561240,68.445132,15.182692,69.945735,74.874296,68.746134,321.537302,12.121887,37.144774,63.998892,97.489782,97.259282,31.961080,42.688713 +aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,53.428198,79.724142,65.377737,33.364911,17.518321,68.370962,15.599762,79.090187,55.125973,71.406440,322.866113,12.977583,36.722218,64.728916,102.669396,97.259562,32.163736,84.915725 +aocc -O3 -mfma,52.702671,80.283144,65.447606,37.941258,17.260082,68.037873,15.198440,73.945019,53.099985,69.054829,103.471249,12.532510,36.573997,64.743780,104.239878,97.290173,33.109534,51.567968 +clang -O1,53.064105,81.020721,66.245871,41.947544,13.114713,67.456217,24.814001,79.158938,55.095090,71.698631,935.017562,13.446619,37.141387,60.928821,106.238990,97.520793,28.709703,87.270196 +clang -O2,55.659235,79.385417,65.998018,36.577010,13.534103,67.270984,25.964164,73.615472,55.094349,75.716066,120.199506,12.670963,36.011085,61.851534,106.272262,97.553295,27.218652,47.605792 +clang -O3,52.222536,80.539734,66.367845,36.323205,12.222968,68.428378,22.738100,75.995192,55.115481,71.996425,109.870925,12.575958,37.314054,61.911955,105.133010,97.682645,27.214880,47.737932 +clang -O3 -march=native,53.856870,79.972712,66.572894,34.638367,13.836204,68.499197,15.910882,76.217868,52.133873,71.104762,105.538785,12.720267,36.032946,62.330654,104.352725,97.796869,32.229199,84.755206 +clang -O3 -march=native -ffast-math,56.683245,80.985779,65.954406,36.273950,8.858909,68.451523,16.589868,69.996308,73.308986,68.951331,258.414031,13.026850,35.505559,60.801679,101.056753,97.579236,32.135355,42.641673 +clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize,58.934662,79.874330,66.403297,34.944403,13.694853,68.359542,15.741629,79.306835,52.187808,73.998022,372.325821,13.238604,36.697076,61.899999,103.625597,97.682993,32.074203,85.107446 +clang -O3 -mfma,52.181316,81.055660,66.427889,35.309647,13.568805,67.559115,16.283102,73.518731,52.159166,72.691993,103.938540,12.457970,36.307736,62.707041,106.653878,97.549113,33.345053,50.471961 +gcc -O1,57.158476,80.306942,73.929558,35.188683,12.043256,67.962081,23.499543,87.226255,60.879827,66.639489,532.597715,13.421904,33.728902,72.715682,103.165223,97.555019,46.128604,83.472260 +gcc -O2,58.528489,79.029227,69.722195,35.488122,12.051830,68.093431,22.629926,84.601132,60.885945,57.417233,201.943369,13.339409,34.282180,59.931092,95.167738,97.600556,50.518496,83.696429 +gcc -O2 -funroll-loops,54.553398,89.972450,64.961008,35.317950,8.873194,68.877634,24.582966,79.269968,60.961322,57.394025,91.243236,13.467646,33.676002,58.057167,87.021039,97.493405,47.983838,84.604225 +gcc -O3,53.185554,79.576107,69.490173,35.868363,8.936720,68.151201,18.872535,75.391980,60.888357,56.272726,361.458864,12.650566,32.961661,58.518981,94.681562,97.455098,50.519216,82.634298 +gcc -O3 -funroll-loops,53.735433,80.184215,62.857397,35.156892,8.854995,68.369059,20.707813,74.308590,61.048415,56.722008,361.464091,12.565713,33.479866,57.650855,85.341065,97.471039,47.397858,58.189929 +gcc -O3 -funroll-loops -march=native,53.073347,79.404277,64.269774,34.057300,8.998630,67.207465,15.054282,73.196990,56.554259,56.724356,319.703654,12.308657,33.792821,57.942055,84.758442,97.513010,46.751766,58.341493 +gcc -O3 -funroll-loops -march=native -ffast-math,53.687528,81.037054,64.229244,34.162603,5.354446,68.481532,15.592614,68.550598,59.472863,32.299678,280.804323,4.078625,33.639297,45.664567,79.383495,97.509049,43.322665,42.007782 +gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize,52.150573,80.554294,64.002047,34.462367,8.926684,68.729029,14.891912,79.479509,56.570775,56.192309,171.264515,12.745797,34.152313,59.295360,83.343775,97.461577,46.460005,59.891128 +gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256,54.205519,80.916347,64.624766,34.104500,9.228338,68.688434,14.888212,76.862057,56.600317,57.030249,1022.255882,12.590834,33.213252,56.145923,85.467429,97.477635,48.534021,82.518841 +gcc -O3 -funroll-loops -mfma,53.075023,78.782741,62.554275,36.291542,9.152685,68.466026,14.664358,77.486360,57.961474,56.046048,722.309460,12.620657,33.529270,57.500901,83.492759,97.521290,47.920304,82.513294 +icx -O1 -fp-model=precise,54.220272,80.680858,65.399496,41.936987,13.636493,68.011421,21.889231,82.568338,52.048994,75.173972,724.241387,14.584138,27.520464,64.555554,84.009657,97.630615,46.857994,58.583215 +icx -O2 -fp-model=precise,58.522756,78.847262,56.624798,41.980911,10.637393,68.109212,17.799878,72.681412,49.012095,67.833927,85.167069,14.149452,27.695186,72.484059,80.167271,97.653358,50.476467,60.549769 +icx -O3 -fma -march=core-avx2 -fp-model=fast=2,53.326588,83.314909,64.842705,34.737858,5.172864,67.779656,13.105014,67.764720,67.073590,29.350948,58.559092,0.419063,26.709966,60.393606,46.005490,97.715695,29.236142,48.072675 +icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec,52.583570,81.247379,55.523301,35.487330,13.578019,67.630031,11.951980,73.941913,49.047120,68.198439,243.634209,14.152319,27.634630,70.647366,75.699886,97.804965,43.618914,50.108487 +icx -O3 -fp-model=precise,55.190232,80.664250,55.634785,34.156879,11.124404,67.521089,16.964203,72.108302,49.001651,70.104826,84.346165,13.991600,26.303782,71.975706,79.485741,97.470691,19.189774,60.104962 +icx -O3 -march=core-avx2 -fp-model=precise,53.447693,81.063133,64.564866,34.651902,13.735661,67.474574,12.023660,72.933499,49.015206,69.890969,58.923453,13.822814,27.530763,73.133977,59.835418,97.672972,23.780409,49.998644 +icx -O3 -march=native -fp-model=precise,51.894806,79.782036,64.377496,33.507346,13.588322,67.492076,11.822286,74.500314,48.938344,70.415894,58.529692,13.539029,26.337984,72.298551,59.471056,97.726663,23.425484,50.183711 diff --git a/resultados/resultados-8.txt b/resultados/resultados-8.txt deleted file mode 100644 index 083303b..0000000 --- a/resultados/resultados-8.txt +++ /dev/null @@ -1,31 +0,0 @@ -aocc -O1 , 52.707668, 79.359512, 65.543273, 42.463967, 17.868977, 68.919723, 26.047946, 80.048053, 55.204832, 72.098692, 951.203883, 13.376726, 36.595150, 69.124841, 106.475906, 97.320302, 29.081211, 85.342495 -aocc -O2 , 52.684725, 79.447004, 65.151317, 36.321612, 16.739789, 68.621123, 24.025050, 74.235804, 55.225240, 71.899371, 119.801210, 12.822446, 36.913717, 64.426103, 107.172522, 97.295295, 27.701610, 47.777099 -aocc -O3 , 58.477441, 80.967910, 64.814801, 37.285759, 17.355928, 69.034008, 18.816213, 74.437436, 55.187787, 69.149705, 113.230810, 13.142887, 36.542652, 64.799489, 106.794146, 97.229444, 27.669219, 47.736058 -aocc -O3 -march=native , 52.958148, 81.120594, 65.072903, 36.215039, 16.862055, 68.401407, 15.759456, 74.367224, 55.109023, 70.175540, 116.578040, 12.729113, 35.523265, 64.432320, 104.364021, 97.191390, 32.056647, 85.132330 -aocc -O3 -march=native -ffast-math , 56.534948, 81.131936, 65.281219, 32.620864, 7.561240, 68.445132, 15.182692, 69.945735, 74.874296, 68.746134, 321.537302, 12.121887, 37.144774, 63.998892, 97.489782, 97.259282, 31.961080, 42.688713 -aocc -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 53.428198, 79.724142, 65.377737, 33.364911, 17.518321, 68.370962, 15.599762, 79.090187, 55.125973, 71.406440, 322.866113, 12.977583, 36.722218, 64.728916, 102.669396, 97.259562, 32.163736, 84.915725 -aocc -O3 -mfma , 52.702671, 80.283144, 65.447606, 37.941258, 17.260082, 68.037873, 15.198440, 73.945019, 53.099985, 69.054829, 103.471249, 12.532510, 36.573997, 64.743780, 104.239878, 97.290173, 33.109534, 51.567968 -clang -O1 , 53.064105, 81.020721, 66.245871, 41.947544, 13.114713, 67.456217, 24.814001, 79.158938, 55.095090, 71.698631, 935.017562, 13.446619, 37.141387, 60.928821, 106.238990, 97.520793, 28.709703, 87.270196 -clang -O2 , 55.659235, 79.385417, 65.998018, 36.577010, 13.534103, 67.270984, 25.964164, 73.615472, 55.094349, 75.716066, 120.199506, 12.670963, 36.011085, 61.851534, 106.272262, 97.553295, 27.218652, 47.605792 -clang -O3 , 52.222536, 80.539734, 66.367845, 36.323205, 12.222968, 68.428378, 22.738100, 75.995192, 55.115481, 71.996425, 109.870925, 12.575958, 37.314054, 61.911955, 105.133010, 97.682645, 27.214880, 47.737932 -clang -O3 -march=native , 53.856870, 79.972712, 66.572894, 34.638367, 13.836204, 68.499197, 15.910882, 76.217868, 52.133873, 71.104762, 105.538785, 12.720267, 36.032946, 62.330654, 104.352725, 97.796869, 32.229199, 84.755206 -clang -O3 -march=native -ffast-math , 56.683245, 80.985779, 65.954406, 36.273950, 8.858909, 68.451523, 16.589868, 69.996308, 73.308986, 68.951331, 258.414031, 13.026850, 35.505559, 60.801679, 101.056753, 97.579236, 32.135355, 42.641673 -clang -O3 -march=native -fno-tree-vectorize -fno-tree-slp-vectorize, 58.934662, 79.874330, 66.403297, 34.944403, 13.694853, 68.359542, 15.741629, 79.306835, 52.187808, 73.998022, 372.325821, 13.238604, 36.697076, 61.899999, 103.625597, 97.682993, 32.074203, 85.107446 -clang -O3 -mfma , 52.181316, 81.055660, 66.427889, 35.309647, 13.568805, 67.559115, 16.283102, 73.518731, 52.159166, 72.691993, 103.938540, 12.457970, 36.307736, 62.707041, 106.653878, 97.549113, 33.345053, 50.471961 -gcc -O1 , 57.158476, 80.306942, 73.929558, 35.188683, 12.043256, 67.962081, 23.499543, 87.226255, 60.879827, 66.639489, 532.597715, 13.421904, 33.728902, 72.715682, 103.165223, 97.555019, 46.128604, 83.472260 -gcc -O2 , 58.528489, 79.029227, 69.722195, 35.488122, 12.051830, 68.093431, 22.629926, 84.601132, 60.885945, 57.417233, 201.943369, 13.339409, 34.282180, 59.931092, 95.167738, 97.600556, 50.518496, 83.696429 -gcc -O2 -funroll-loops , 54.553398, 89.972450, 64.961008, 35.317950, 8.873194, 68.877634, 24.582966, 79.269968, 60.961322, 57.394025, 91.243236, 13.467646, 33.676002, 58.057167, 87.021039, 97.493405, 47.983838, 84.604225 -gcc -O3 , 53.185554, 79.576107, 69.490173, 35.868363, 8.936720, 68.151201, 18.872535, 75.391980, 60.888357, 56.272726, 361.458864, 12.650566, 32.961661, 58.518981, 94.681562, 97.455098, 50.519216, 82.634298 -gcc -O3 -funroll-loops , 53.735433, 80.184215, 62.857397, 35.156892, 8.854995, 68.369059, 20.707813, 74.308590, 61.048415, 56.722008, 361.464091, 12.565713, 33.479866, 57.650855, 85.341065, 97.471039, 47.397858, 58.189929 -gcc -O3 -funroll-loops -march=native , 53.073347, 79.404277, 64.269774, 34.057300, 8.998630, 67.207465, 15.054282, 73.196990, 56.554259, 56.724356, 319.703654, 12.308657, 33.792821, 57.942055, 84.758442, 97.513010, 46.751766, 58.341493 -gcc -O3 -funroll-loops -march=native -ffast-math, 53.687528, 81.037054, 64.229244, 34.162603, 5.354446, 68.481532, 15.592614, 68.550598, 59.472863, 32.299678, 280.804323, 4.078625, 33.639297, 45.664567, 79.383495, 97.509049, 43.322665, 42.007782 -gcc -O3 -funroll-loops -march=native -fno-tree-vectorize -fno-tree-loop-vectorize -fno-tree-slp-vectorize, 52.150573, 80.554294, 64.002047, 34.462367, 8.926684, 68.729029, 14.891912, 79.479509, 56.570775, 56.192309, 171.264515, 12.745797, 34.152313, 59.295360, 83.343775, 97.461577, 46.460005, 59.891128 -gcc -O3 -funroll-loops -march=native -mprefer-vector-width=256, 54.205519, 80.916347, 64.624766, 34.104500, 9.228338, 68.688434, 14.888212, 76.862057, 56.600317, 57.030249, 1022.255882, 12.590834, 33.213252, 56.145923, 85.467429, 97.477635, 48.534021, 82.518841 -gcc -O3 -funroll-loops -mfma , 53.075023, 78.782741, 62.554275, 36.291542, 9.152685, 68.466026, 14.664358, 77.486360, 57.961474, 56.046048, 722.309460, 12.620657, 33.529270, 57.500901, 83.492759, 97.521290, 47.920304, 82.513294 -icx -O1 -fp-model=precise , 54.220272, 80.680858, 65.399496, 41.936987, 13.636493, 68.011421, 21.889231, 82.568338, 52.048994, 75.173972, 724.241387, 14.584138, 27.520464, 64.555554, 84.009657, 97.630615, 46.857994, 58.583215 -icx -O2 -fp-model=precise , 58.522756, 78.847262, 56.624798, 41.980911, 10.637393, 68.109212, 17.799878, 72.681412, 49.012095, 67.833927, 85.167069, 14.149452, 27.695186, 72.484059, 80.167271, 97.653358, 50.476467, 60.549769 -icx -O3 -fma -march=core-avx2 -fp-model=fast=2, 53.326588, 83.314909, 64.842705, 34.737858, 5.172864, 67.779656, 13.105014, 67.764720, 67.073590, 29.350948, 58.559092, 0.419063, 26.709966, 60.393606, 46.005490, 97.715695, 29.236142, 48.072675 -icx -O3 -fma -march=core-avx2 -fp-model=precise -no-vec, 52.583570, 81.247379, 55.523301, 35.487330, 13.578019, 67.630031, 11.951980, 73.941913, 49.047120, 68.198439, 243.634209, 14.152319, 27.634630, 70.647366, 75.699886, 97.804965, 43.618914, 50.108487 -icx -O3 -fp-model=precise , 55.190232, 80.664250, 55.634785, 34.156879, 11.124404, 67.521089, 16.964203, 72.108302, 49.001651, 70.104826, 84.346165, 13.991600, 26.303782, 71.975706, 79.485741, 97.470691, 19.189774, 60.104962 -icx -O3 -march=core-avx2 -fp-model=precise , 53.447693, 81.063133, 64.564866, 34.651902, 13.735661, 67.474574, 12.023660, 72.933499, 49.015206, 69.890969, 58.923453, 13.822814, 27.530763, 73.133977, 59.835418, 97.672972, 23.780409, 49.998644 -icx -O3 -march=native -fp-model=precise , 51.894806, 79.782036, 64.377496, 33.507346, 13.588322, 67.492076, 11.822286, 74.500314, 48.938344, 70.415894, 58.529692, 13.539029, 26.337984, 72.298551, 59.471056, 97.726663, 23.425484, 50.183711 diff --git a/resultados/scrips/calcula-media-aritmetica.py b/resultados/scrips/calcula-media-aritmetica.py new file mode 100644 index 0000000..b7d6d60 --- /dev/null +++ b/resultados/scrips/calcula-media-aritmetica.py @@ -0,0 +1,57 @@ +import csv +import numpy as np + +def compute_means(file_pattern, num_files): + data = [] + header = None + first_column = [] + + for i in range(1, num_files + 1): + file_name = file_pattern.format(i) + with open(file_name, newline='', encoding='utf-8') as f: + reader = csv.reader(f, delimiter=',') + file_data = list(reader) + + if header is None: + header = file_data[0] + + first_column.append([row[0] for row in file_data]) + data.append([row[1:] for row in file_data]) + + num_rows = len(data[0]) + num_columns = len(data[0][0]) + means = [] + + for row_index in range(num_rows): + row_means = [] + + for col_index in range(num_columns): + values = [] + for file_data in data: + value = file_data[row_index][col_index] + try: + values.append(float(value)) + except ValueError: + values.append(np.nan) + + mean_value = np.nanmean(values) + row_means.append(mean_value) + + means.append(row_means) + + return header, first_column[0], means + +def save_means_to_file(header, first_column, means, file_name="../media-aritmetica-resultados.csv"): + with open(file_name, 'w', newline='', encoding='utf-8') as f: + writer = csv.writer(f) + writer.writerow(header) + + for first_col_value, row in zip(first_column, means): + writer.writerow([first_col_value] + row) + +if __name__ == "__main__": + file_pattern = "../resultados-{}.csv" + num_files = 8 + + header, first_column, means = compute_means(file_pattern, num_files) + save_means_to_file(header, first_column, means, "../media-aritmetica-resultados.csv") diff --git a/resultados/calcula-media-geometrica-resumida.py b/resultados/scrips/calcula-media-geometrica-resumida.py similarity index 93% rename from resultados/calcula-media-geometrica-resumida.py rename to resultados/scrips/calcula-media-geometrica-resumida.py index ae2a0f4..9d23dc6 100644 --- a/resultados/calcula-media-geometrica-resumida.py +++ b/resultados/scrips/calcula-media-geometrica-resumida.py @@ -22,9 +22,11 @@ data = {} file_count = 8 for n in range(1, file_count + 1): - filename = f"resultados-{n}.txt" + filename = f"../resultados-{n}.csv" with open(filename, "r") as f: reader = csv.reader(f) + next(reader) + for row in reader: key = clean_field(row[0]) values = list(map(lambda x: float(clean_field(x)), row[1:])) @@ -47,7 +49,7 @@ for key, all_values in data.items(): line_geo_std_dev_excl_12 = geometric_std_dev(line_geo_means_excl_12) output.append([key, round(line_geo_mean, 2), round(line_geo_std_dev, 3), round(line_geo_mean_excl_12, 2), round(line_geo_std_dev_excl_12, 3)]) -with open("tabela-medias-geometricas.csv", "w", newline="") as f: +with open("../tabela-medias-geometricas.csv", "w", newline="") as f: writer = csv.writer(f) writer.writerow(["FLAGS", "GEOMEAN", "GEOSD", "GEOMEANEXLUD", "GEOSDEXLUD"]) writer.writerows(output) diff --git a/scripts/executa-benchmarks.sh b/scripts/executa-benchmarks.sh old mode 100755 new mode 100644 index 65f8214..9e7f4f6 --- a/scripts/executa-benchmarks.sh +++ b/scripts/executa-benchmarks.sh @@ -1,20 +1,26 @@ -cd ../benchmarks-compilados - for N in {1..8}; do + printf "%s" "CompiladorFlags" > ../resultados/"resultados-${N}.csv" + cd ../openmp + for BMK in *; do + printf ",%s" "${BMK}" >> ../resultados/"resultados-${N}.csv" + done + printf "\n" >> ../resultados/"resultados-${N}.csv" + + cd ../benchmarks-compilados for COMP in [!d]*; do - printf "%-45s" "${COMP}" >> ../"resultados-${N}.txt" + printf "%s" "${COMP}" >> ../resultados/"resultados-${N}.csv" cd "${COMP}" - for BMK in */; do + for BMK in *; do cd "${BMK}" usBEFORE=`date +%s%6N` ./run &> /dev/null usAFTER=`date +%s%6N` EXECTIME=`bc <<< "scale=6; (${usAFTER} - ${usBEFORE}) / 1000000"` - printf ",%12f" ${EXECTIME} >> ../../../"resultados-${N}.txt" + printf ",%f" ${EXECTIME} >> ../../../resultados/"resultados-${N}.csv" cd .. done cd .. echo `date` $N $COMP - printf "\n" >> ../"resultados-${N}.txt" + printf "\n" >> ../resultados/"resultados-${N}.csv" done done -- GitLab