Add extra information to -show-more-timings

This commit is contained in:
gingerBill
2020-05-21 09:30:15 +01:00
parent 3f23a0b3b0
commit 89d824216a
3 changed files with 89 additions and 62 deletions
+1 -1
View File
@@ -41,7 +41,7 @@ encode :: proc(data: []byte, ENC_TBL := ENC_TABLE, allocator := context.allocato
} }
@private @private
_encode :: inline proc "contextless"(out, data: []byte, ENC_TBL := ENC_TABLE, allocator := context.allocator) { _encode :: proc(out, data: []byte, ENC_TBL := ENC_TABLE, allocator := context.allocator) {
out := out; out := out;
data := data; data := data;
+1
View File
@@ -4405,6 +4405,7 @@ void check_parsed_files(Checker *c) {
error(token, "Undefined entry point procedure 'main'"); error(token, "Undefined entry point procedure 'main'");
} }
} }
TIME_SECTION("type check finish");
#undef TIME_SECTION #undef TIME_SECTION
} }
+33 -7
View File
@@ -1174,11 +1174,10 @@ void show_timings(Checker *c, Timings *t) {
total_file_size += file->tokenizer.end - file->tokenizer.start; total_file_size += file->tokenizer.end - file->tokenizer.start;
} }
} }
#if 1
timings_print_all(t); timings_print_all(t);
#else if (build_context.show_more_timings) {
{ {
timings_print_all(t);
gb_printf("\n"); gb_printf("\n");
gb_printf("Total Lines - %td\n", lines); gb_printf("Total Lines - %td\n", lines);
gb_printf("Total Tokens - %td\n", tokens); gb_printf("Total Tokens - %td\n", tokens);
@@ -1188,8 +1187,16 @@ void show_timings(Checker *c, Timings *t) {
gb_printf("\n"); gb_printf("\n");
} }
{ {
TimeStamp ts = t->sections[0]; TimeStamp ts = {};
for_array(i, t->sections) {
TimeStamp s = t->sections[i];
if (s.label == "parse files") {
ts = s;
break;
}
}
GB_ASSERT(ts.label == "parse files"); GB_ASSERT(ts.label == "parse files");
f64 parse_time = time_stamp_as_s(ts, t->freq); f64 parse_time = time_stamp_as_s(ts, t->freq);
gb_printf("Parse pass\n"); gb_printf("Parse pass\n");
gb_printf("LOC/s - %.3f\n", cast(f64)lines/parse_time); gb_printf("LOC/s - %.3f\n", cast(f64)lines/parse_time);
@@ -1197,13 +1204,30 @@ void show_timings(Checker *c, Timings *t) {
gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/parse_time); gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/parse_time);
gb_printf("us/Token - %.3f\n", 1.0e6*parse_time/cast(f64)tokens); gb_printf("us/Token - %.3f\n", 1.0e6*parse_time/cast(f64)tokens);
gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/parse_time); gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/parse_time);
gb_printf("MiB/s - %.3f\n", cast(f64)(total_file_size/parse_time)/(1024*1024));
gb_printf("us/bytes - %.3f\n", 1.0e6*parse_time/cast(f64)total_file_size); gb_printf("us/bytes - %.3f\n", 1.0e6*parse_time/cast(f64)total_file_size);
gb_printf("\n"); gb_printf("\n");
} }
{ {
TimeStamp ts = t->sections[1]; TimeStamp ts = {};
GB_ASSERT(ts.label == "type check"); TimeStamp ts_end = {};
for_array(i, t->sections) {
TimeStamp s = t->sections[i];
if (s.label == "type check") {
ts = s;
}
if (s.label == "type check finish") {
GB_ASSERT(ts.label != "");
ts_end = s;
break;
}
}
GB_ASSERT(ts.label != "");
GB_ASSERT(ts_end.label != "");
ts.finish = ts_end.finish;
f64 parse_time = time_stamp_as_s(ts, t->freq); f64 parse_time = time_stamp_as_s(ts, t->freq);
gb_printf("Checker pass\n"); gb_printf("Checker pass\n");
gb_printf("LOC/s - %.3f\n", cast(f64)lines/parse_time); gb_printf("LOC/s - %.3f\n", cast(f64)lines/parse_time);
@@ -1211,6 +1235,7 @@ void show_timings(Checker *c, Timings *t) {
gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/parse_time); gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/parse_time);
gb_printf("us/Token - %.3f\n", 1.0e6*parse_time/cast(f64)tokens); gb_printf("us/Token - %.3f\n", 1.0e6*parse_time/cast(f64)tokens);
gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/parse_time); gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/parse_time);
gb_printf("MiB/s - %.3f\n", (cast(f64)total_file_size/parse_time)/(1024*1024));
gb_printf("us/bytes - %.3f\n", 1.0e6*parse_time/cast(f64)total_file_size); gb_printf("us/bytes - %.3f\n", 1.0e6*parse_time/cast(f64)total_file_size);
gb_printf("\n"); gb_printf("\n");
} }
@@ -1222,10 +1247,11 @@ void show_timings(Checker *c, Timings *t) {
gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/total_time); gb_printf("Tokens/s - %.3f\n", cast(f64)tokens/total_time);
gb_printf("us/Token - %.3f\n", 1.0e6*total_time/cast(f64)tokens); gb_printf("us/Token - %.3f\n", 1.0e6*total_time/cast(f64)tokens);
gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/total_time); gb_printf("bytes/s - %.3f\n", cast(f64)total_file_size/total_time);
gb_printf("MiB/s - %.3f\n", cast(f64)(total_file_size/total_time)/(1024*1024));
gb_printf("us/bytes - %.3f\n", 1.0e6*total_time/cast(f64)total_file_size); gb_printf("us/bytes - %.3f\n", 1.0e6*total_time/cast(f64)total_file_size);
gb_printf("\n"); gb_printf("\n");
} }
#endif }
} }
void remove_temp_files(String output_base) { void remove_temp_files(String output_base) {