From 8f9891cdde4958a9be9adb73508d7d2990a4f694 Mon Sep 17 00:00:00 2001 From: Rokas Puzonas Date: Sat, 16 Dec 2023 14:02:51 +0200 Subject: [PATCH] add showing time taken for each solution --- src/main.zig | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main.zig b/src/main.zig index 4d7bcaf..61f4349 100644 --- a/src/main.zig +++ b/src/main.zig @@ -73,6 +73,7 @@ fn run(allocator: Allocator, args: *cli) !u8 { var input = aoc.Input{ .allocator = allocator, .lines = lines.items }; + var start_time = std.time.microTimestamp(); var result: aoc.Result = undefined; if (args.part == 1) { result = try day.part1.?(&input); @@ -81,6 +82,7 @@ fn run(allocator: Allocator, args: *cli) !u8 { } else { unreachable; } + const end_time = std.time.microTimestamp(); switch (result) { .uint => std.debug.print("{}\n", .{result.uint}), @@ -89,6 +91,9 @@ fn run(allocator: Allocator, args: *cli) !u8 { .text => std.debug.print("{s}\n", .{result.text}), } + const duration = end_time - start_time; + std.debug.print("Time taken: {}ms ({}us)\n", .{@divTrunc(duration, std.time.us_per_ms), duration}); + return 0; } @@ -136,7 +141,7 @@ fn get_input(allocator: Allocator, args: *cli) !u8 { return 255; } - const body = try request.reader().readAllAlloc(allocator, kilobytes(8)); + const body = try request.reader().readAllAlloc(allocator, kilobytes(128)); defer allocator.free(body); var file = try std.fs.cwd().createFile(args.input_file, .{ });