{ "summary": { "total_programs": 10, "compilation": { "O2_success": 10, "O3_success": 10, "Ofast_success": 10 }, "execution": { "O2_success": 10, "O3_success": 10, "Ofast_success": 10 }, "regressions": { "functional": 0, "numeric": 0, "total": 0 }, "performance": { "mean_speedup": 0.9944620302725363, "median_speedup": 1.0, "std_speedup": 0.06431391182012028, "min_speedup": 0.880408515364681, "max_speedup": 1.1551328081433208, "programs_with_speedup": 1, "programs_with_regression": 4 }, "flag_distribution": { "-O2": 5, "-Ofast": 2, "-O3": 3 }, "speedup_stats": [ 1.0, 1.0, 0.880408515364681, 0.9765419300488691, 1.0, 0.9816838797552055, 1.0, 1.1551328081433208, 0.9508531694132868, 1.0 ] }, "programs": [ { "name": "simple_loop", "source": "data/training_programs_generated/simple_loop.c", "predicted_flag": "-O2", "best_flag": "-Ofast", "speedup_vs_O2": 1.0, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.15247930819750763, "-O3": 0.1442916415981017, "-Ofast": 0.12886328299646266 }, "std_times": { "-O2": 0.25385070989802394, "-O3": 0.23661296960636743, "-Ofast": 0.20444230641553046 }, "characteristics": { "file_size": 196, "line_count": 12, "has_float_ops": false, "has_loops": true, "has_classes": false } }, { "name": "loop_unroll", "source": "data/training_programs_generated/loop_unroll.c", "predicted_flag": "-O2", "best_flag": "-O3", "speedup_vs_O2": 1.0, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.18074895000318064, "-O3": 0.15507194160018117, "-Ofast": 0.18982595799607224 }, "std_times": { "-O2": 0.2307010138589997, "-O3": 0.18044834295582626, "-Ofast": 0.25136396342260203 }, "characteristics": { "file_size": 180, "line_count": 8, "has_float_ops": false, "has_loops": true, "has_classes": false } }, { "name": "vector_add", "source": "data/training_programs_generated/vector_add.c", "predicted_flag": "-Ofast", "best_flag": "-O3", "speedup_vs_O2": 0.880408515364681, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.23937117520254106, "-O3": 0.20596668340149335, "-Ofast": 0.27188648340525107 }, "std_times": { "-O2": 0.2460166487403934, "-O3": 0.1992387749427167, "-Ofast": 0.32420720130736785 }, "characteristics": { "file_size": 365, "line_count": 12, "has_float_ops": true, "has_loops": true, "has_classes": false } }, { "name": "stencil", "source": "data/training_programs_generated/stencil.c", "predicted_flag": "-O3", "best_flag": "-O2", "speedup_vs_O2": 0.9765419300488691, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.27598043339676226, "-O3": 0.28260991658899004, "-Ofast": 0.2856776585918851 }, "std_times": { "-O2": 0.17773019758134276, "-O3": 0.19725064744335646, "-Ofast": 0.20180202672454456 }, "characteristics": { "file_size": 447, "line_count": 13, "has_float_ops": true, "has_loops": true, "has_classes": false } }, { "name": "pointer_chase", "source": "data/training_programs_generated/pointer_chase.c", "predicted_flag": "-O2", "best_flag": "-Ofast", "speedup_vs_O2": 1.0, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.24279357480700128, "-O3": 0.22459964199224486, "-Ofast": 0.21941420839866624 }, "std_times": { "-O2": 0.232241943688172, "-O3": 0.19752634725077783, "-Ofast": 0.18000409474714854 }, "characteristics": { "file_size": 299, "line_count": 13, "has_float_ops": false, "has_loops": true, "has_classes": false } }, { "name": "matrix_mult", "source": "data/training_programs_generated/matrix_mult.c", "predicted_flag": "-O3", "best_flag": "-O2", "speedup_vs_O2": 0.9816838797552055, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.27934430000022986, "-O3": 0.2845562667993363, "-Ofast": 0.293462625000393 }, "std_times": { "-O2": 0.1706388351047846, "-O3": 0.17667766146696368, "-Ofast": 0.20201313309464797 }, "characteristics": { "file_size": 520, "line_count": 12, "has_float_ops": true, "has_loops": true, "has_classes": false } }, { "name": "reduction", "source": "data/training_programs_generated/reduction.c", "predicted_flag": "-O2", "best_flag": "-O3", "speedup_vs_O2": 1.0, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.2002322333981283, "-O3": 0.17403901659999974, "-Ofast": 0.1952446165960282 }, "std_times": { "-O2": 0.2322811919961541, "-O3": 0.18877273271512207, "-Ofast": 0.2340651743067221 }, "characteristics": { "file_size": 248, "line_count": 10, "has_float_ops": false, "has_loops": true, "has_classes": false } }, { "name": "transcendental", "source": "data/training_programs_generated/transcendental.c", "predicted_flag": "-Ofast", "best_flag": "-Ofast", "speedup_vs_O2": 1.1551328081433208, "functional_regression": false, "numeric_regression": false, "numeric_diff": 5.791143728184937e-13, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.19092872500186786, "-O3": 0.18837440020870416, "-Ofast": 0.1652872497914359 }, "std_times": { "-O2": 0.17508665536089266, "-O3": 0.17176675502449731, "-Ofast": 0.2042853348020438 }, "characteristics": { "file_size": 252, "line_count": 12, "has_float_ops": true, "has_loops": true, "has_classes": false } }, { "name": "branchy", "source": "data/training_programs_generated/branchy.c", "predicted_flag": "-O3", "best_flag": "-O2", "speedup_vs_O2": 0.9508531694132868, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.15222080841194838, "-O3": 0.16008865859475918, "-Ofast": 0.15224265001015738 }, "std_times": { "-O2": 0.19928136628973592, "-O3": 0.2148360380087237, "-Ofast": 0.20043288319380897 }, "characteristics": { "file_size": 238, "line_count": 13, "has_float_ops": false, "has_loops": true, "has_classes": false } }, { "name": "float_math", "source": "data/training_programs_generated/float_math.c", "predicted_flag": "-O2", "best_flag": "-O3", "speedup_vs_O2": 1.0, "functional_regression": false, "numeric_regression": false, "numeric_diff": 0.0, "compilation": { "-O2": true, "-O3": true, "-Ofast": true }, "execution": { "-O2": true, "-O3": true, "-Ofast": true }, "mean_times": { "-O2": 0.3993352334015071, "-O3": 0.38659901659702883, "-Ofast": 0.4501397666055709 }, "std_times": { "-O2": 0.21156396958599014, "-O3": 0.18007558112523395, "-Ofast": 0.30381617377494036 }, "characteristics": { "file_size": 249, "line_count": 13, "has_float_ops": true, "has_loops": true, "has_classes": false } } ] }