fix bench compilation

This commit is contained in:
Mitchell Hashimoto
2024-03-11 21:19:25 -07:00
parent 65909df9f9
commit 37251dca95
6 changed files with 41 additions and 46 deletions

View File

@ -8,7 +8,8 @@ const assert = std.debug.assert;
const Allocator = std.mem.Allocator; const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator; const ArenaAllocator = std.heap.ArenaAllocator;
const cli = @import("../cli.zig"); const cli = @import("../cli.zig");
const terminal = @import("../terminal/main.zig"); const terminal = @import("../terminal-old/main.zig");
const terminal_new = @import("../terminal/main.zig");
const Args = struct { const Args = struct {
mode: Mode = .alloc, mode: Mode = .alloc,
@ -59,15 +60,15 @@ pub fn main() !void {
noinline fn benchAlloc(count: usize) !void { noinline fn benchAlloc(count: usize) !void {
for (0..count) |_| { for (0..count) |_| {
_ = try terminal.new.Page.init(terminal.new.page.std_capacity); _ = try terminal_new.Page.init(terminal_new.page.std_capacity);
} }
} }
noinline fn benchPool(alloc: Allocator, count: usize) !void { noinline fn benchPool(alloc: Allocator, count: usize) !void {
var list = try terminal.new.PageList.init( var list = try terminal_new.PageList.init(
alloc, alloc,
terminal.new.page.std_capacity.cols, terminal_new.page.std_capacity.cols,
terminal.new.page.std_capacity.rows, terminal_new.page.std_capacity.rows,
0, 0,
); );
defer list.deinit(); defer list.deinit();

View File

@ -5,7 +5,8 @@ const assert = std.debug.assert;
const Allocator = std.mem.Allocator; const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator; const ArenaAllocator = std.heap.ArenaAllocator;
const cli = @import("../cli.zig"); const cli = @import("../cli.zig");
const terminal = @import("../terminal/main.zig"); const terminal = @import("../terminal-old/main.zig");
const terminal_new = @import("../terminal/main.zig");
const Args = struct { const Args = struct {
mode: Mode = .old, mode: Mode = .old,
@ -60,11 +61,10 @@ pub fn main() !void {
}, },
.new => { .new => {
var t = try terminal.new.Terminal.init( var t = try terminal_new.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.cols),
@intCast(args.cols), .rows = @intCast(args.rows),
@intCast(args.rows), });
);
defer t.deinit(alloc); defer t.deinit(alloc);
try benchNew(&t, args); try benchNew(&t, args);
}, },
@ -90,7 +90,7 @@ noinline fn benchOld(t: *terminal.Terminal, args: Args) !void {
} }
} }
noinline fn benchNew(t: *terminal.new.Terminal, args: Args) !void { noinline fn benchNew(t: *terminal_new.Terminal, args: Args) !void {
// We fill the terminal with letters. // We fill the terminal with letters.
for (0..args.rows) |row| { for (0..args.rows) |row| {
for (0..args.cols) |col| { for (0..args.cols) |col| {

View File

@ -5,7 +5,8 @@ const assert = std.debug.assert;
const Allocator = std.mem.Allocator; const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator; const ArenaAllocator = std.heap.ArenaAllocator;
const cli = @import("../cli.zig"); const cli = @import("../cli.zig");
const terminal = @import("../terminal/main.zig"); const terminal = @import("../terminal-old/main.zig");
const terminal_new = @import("../terminal/main.zig");
const Args = struct { const Args = struct {
mode: Mode = .old, mode: Mode = .old,
@ -61,21 +62,19 @@ pub fn main() !void {
}, },
.new => { .new => {
var t = try terminal.new.Terminal.init( var t = try terminal_new.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.cols),
@intCast(args.cols), .rows = @intCast(args.rows),
@intCast(args.rows), });
);
defer t.deinit(alloc); defer t.deinit(alloc);
try benchNew(alloc, &t, args); try benchNew(alloc, &t, args);
}, },
.@"new-pooled" => { .@"new-pooled" => {
var t = try terminal.new.Terminal.init( var t = try terminal_new.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.cols),
@intCast(args.cols), .rows = @intCast(args.rows),
@intCast(args.rows), });
);
defer t.deinit(alloc); defer t.deinit(alloc);
try benchNewPooled(alloc, &t, args); try benchNewPooled(alloc, &t, args);
}, },
@ -101,7 +100,7 @@ noinline fn benchOld(alloc: Allocator, t: *terminal.Terminal, args: Args) !void
} }
} }
noinline fn benchNew(alloc: Allocator, t: *terminal.new.Terminal, args: Args) !void { noinline fn benchNew(alloc: Allocator, t: *terminal_new.Terminal, args: Args) !void {
// We fill the terminal with letters. // We fill the terminal with letters.
for (0..args.rows) |row| { for (0..args.rows) |row| {
for (0..args.cols) |col| { for (0..args.cols) |col| {
@ -116,7 +115,7 @@ noinline fn benchNew(alloc: Allocator, t: *terminal.new.Terminal, args: Args) !v
} }
} }
noinline fn benchNewPooled(alloc: Allocator, t: *terminal.new.Terminal, args: Args) !void { noinline fn benchNewPooled(alloc: Allocator, t: *terminal_new.Terminal, args: Args) !void {
// We fill the terminal with letters. // We fill the terminal with letters.
for (0..args.rows) |row| { for (0..args.rows) |row| {
for (0..args.cols) |col| { for (0..args.cols) |col| {
@ -125,7 +124,7 @@ noinline fn benchNewPooled(alloc: Allocator, t: *terminal.new.Terminal, args: Ar
} }
} }
var pool = try terminal.new.PageList.MemoryPool.init(alloc, std.heap.page_allocator, 4); var pool = try terminal_new.PageList.MemoryPool.init(alloc, std.heap.page_allocator, 4);
defer pool.deinit(); defer pool.deinit();
for (0..args.count) |_| { for (0..args.count) |_| {

View File

@ -99,11 +99,10 @@ pub fn main() !void {
defer f.close(); defer f.close();
const r = f.reader(); const r = f.reader();
const TerminalStream = terminal.Stream(*NewTerminalHandler); const TerminalStream = terminal.Stream(*NewTerminalHandler);
var t = try terminalnew.Terminal.init( var t = try terminalnew.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.@"terminal-cols"),
@intCast(args.@"terminal-cols"), .rows = @intCast(args.@"terminal-rows"),
@intCast(args.@"terminal-rows"), });
);
var handler: NewTerminalHandler = .{ .t = &t }; var handler: NewTerminalHandler = .{ .t = &t };
var stream: TerminalStream = .{ .handler = &handler }; var stream: TerminalStream = .{ .handler = &handler };
try benchSimd(r, &stream, buf); try benchSimd(r, &stream, buf);
@ -141,11 +140,10 @@ pub fn main() !void {
.new => { .new => {
const TerminalStream = terminal.Stream(*NewTerminalHandler); const TerminalStream = terminal.Stream(*NewTerminalHandler);
var t = try terminalnew.Terminal.init( var t = try terminalnew.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.@"terminal-cols"),
@intCast(args.@"terminal-cols"), .rows = @intCast(args.@"terminal-rows"),
@intCast(args.@"terminal-rows"), });
);
var handler: NewTerminalHandler = .{ .t = &t }; var handler: NewTerminalHandler = .{ .t = &t };
var stream: TerminalStream = .{ .handler = &handler }; var stream: TerminalStream = .{ .handler = &handler };
switch (tag) { switch (tag) {

View File

@ -5,7 +5,8 @@ const assert = std.debug.assert;
const Allocator = std.mem.Allocator; const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator; const ArenaAllocator = std.heap.ArenaAllocator;
const cli = @import("../cli.zig"); const cli = @import("../cli.zig");
const terminal = @import("../terminal/main.zig"); const terminal = @import("../terminal-old/main.zig");
const terminal_new = @import("../terminal/main.zig");
const Args = struct { const Args = struct {
mode: Mode = .old, mode: Mode = .old,
@ -60,11 +61,10 @@ pub fn main() !void {
}, },
.new => { .new => {
var t = try terminal.new.Terminal.init( var t = try terminal_new.Terminal.init(alloc, .{
alloc, .cols = @intCast(args.cols),
@intCast(args.cols), .rows = @intCast(args.rows),
@intCast(args.rows), });
);
defer t.deinit(alloc); defer t.deinit(alloc);
try benchNew(&t, args); try benchNew(&t, args);
}, },
@ -87,7 +87,7 @@ noinline fn benchOld(t: *terminal.Terminal, args: Args) !void {
} }
} }
noinline fn benchNew(t: *terminal.new.Terminal, args: Args) !void { noinline fn benchNew(t: *terminal_new.Terminal, args: Args) !void {
// We fill the terminal with letters. // We fill the terminal with letters.
for (0..args.rows) |row| { for (0..args.rows) |row| {
for (0..args.cols) |col| { for (0..args.cols) |col| {

View File

@ -50,9 +50,6 @@ pub usingnamespace if (builtin.target.isWasm()) struct {
pub usingnamespace @import("wasm.zig"); pub usingnamespace @import("wasm.zig");
} else struct {}; } else struct {};
// TODO(paged-terminal) remove before merge
pub const new = @import("../terminal/main.zig");
test { test {
@import("std").testing.refAllDecls(@This()); @import("std").testing.refAllDecls(@This());
} }