5031 Commits

Author SHA1 Message Date
Mitchell Hashimoto
acbc6f77e8 Merge pull request #1478 from qwerasd205/fix-c0
fix(terminal): send SI to execute instead of print
2024-02-06 23:12:24 -08:00
Qwerasd
343cb9a334 fix(terminal): send SI to execute instead of print 2024-02-07 00:14:54 -05:00
Mitchell Hashimoto
4e3fdf7243 Merge pull request #1477 from qwerasd205/improve-benchmarks
Benchmark improvements
2024-02-06 17:00:36 -08:00
Mitchell Hashimoto
b7c5fd4908 build: if emit-bench is on, do not emit exes
This isn't the cleanest approach yet. But this gets things going
quickly. Ideally longer term I want to be able to specify a list of
artifacts that you want to build or something like that.
2024-02-06 16:45:29 -08:00
Qwerasd
d96243fa5b bench/stream: script adjustments 2024-02-06 19:30:27 -05:00
Qwerasd
2db24fdd57 bench/stream: add gen-rand (arbitrary random bytes) 2024-02-06 19:29:06 -05:00
Qwerasd
b31099daf4 bench/stream: only generate benchmark input once, improve utf8 gen 2024-02-06 18:22:59 -05:00
Mitchell Hashimoto
ba2cd0d16b Merge pull request #1474 from jcollie/fish-completions
Generate fish command completions for Ghostty.
2024-02-06 08:56:23 -08:00
Mitchell Hashimoto
6eb24a1c67 fish: make generators non-pub 2024-02-06 08:55:54 -08:00
Mitchell Hashimoto
238f86dda5 Merge pull request #1475 from qwerasd205/fix-invalid-boundary-crash
Fix boundary utf-8 decoding crash
2024-02-06 08:46:21 -08:00
Mitchell Hashimoto
fdc67a08f4 terminal: add tests for incomplete utf-8, fix one bug 2024-02-06 08:45:41 -08:00
Qwerasd
689a521256 terminal: remove unused properties 2024-02-06 03:04:00 -05:00
Qwerasd
5769bb16dd fix(terminal): Fix boundary utf-8 decoding crash
Get rid of completePartialUtf8 and simply use the scalar parse (`.next`) to resolve boundary conditions instead.
2024-02-06 02:51:04 -05:00
Jeffrey C. Ollie
72b1084162 Do the fish completion generation with comptime during the build rather than building a standalone executable. 2024-02-06 00:04:36 -06:00
Mitchell Hashimoto
7256c8e091 Merge pull request #1472 from mitchellh/simd
SIMD Beginnings
2024-02-05 21:46:32 -08:00
Jeffrey C. Ollie
c55d5c383a Generate fish command completions for Ghostty. 2024-02-05 23:32:12 -06:00
Mitchell Hashimoto
dc6c52fac1 terminal: do not have the UTF8Decoder overhead if SIMD 2024-02-05 21:26:40 -08:00
Mitchell Hashimoto
8bbcf6821a pkg: remove unused files, add highway API to get targets 2024-02-05 21:22:28 -08:00
Mitchell Hashimoto
49f9059e0c nix: update cache hash 2024-02-05 21:22:28 -08:00
Mitchell Hashimoto
03fceb81a5 move bench script 2024-02-05 21:22:28 -08:00
Mitchell Hashimoto
0c8dd34ea7 build: update build and comments 2024-02-05 21:22:28 -08:00
Mitchell Hashimoto
e88292f096 bench/stream: add utf8 2024-02-05 21:22:28 -08:00
David Rubin
a853277dbf make benchmarks more accurate
by adding a `--size` flag we make the size of buffers not comptime known, which prevents certain unrolling optimizations from happening.

secondly, `noinline` creates a more reproducable env for benchmarking by isolating the contents of the functions
2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
caf9405db0 bench/stream: add terminal option 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
b030663e03 bench/stream: benchmark for stream processing 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
120273aa1a pkg/utfcpp 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
626d4170fe move simdutf to a pkg 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
5c39df3ab0 add clang-format for C++ 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
996517eb43 build: missing simdutf 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
12885a445a simd: remove old attempts 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
449d3b49a4 terminal: split input to fit output chunks 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
351d9eb402 terminal: use new VT simd to process slices 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
50e7159288 simd: implement utf8 decode until esc in C++ 2024-02-05 21:22:27 -08:00
Mitchell Hashimoto
c751619b7e terminal: use highway-based indexOf to support all targets 2024-02-05 21:22:26 -08:00
Mitchell Hashimoto
36b0db2a72 pkg/highway 2024-02-05 21:22:26 -08:00
Mitchell Hashimoto
fc605c7865 terminal: fix import issue 2024-02-05 21:22:26 -08:00
Mitchell Hashimoto
62ce93dcff terminal: use SIMD w/ Neon to find ESC in VT streams 2024-02-05 21:22:25 -08:00
Mitchell Hashimoto
4fa3ea604b simd/aarch64: additional intrinsics 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
c042b052b2 simd: convert indexOf, mess around with simdvt 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
a66174678b simd: utf decode using simdutf 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
9391048e1a simd: utf8 decode 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
fe098f80cc simd: simplify isa.funcMap, find Zig compiler bug 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
1e51cedd94 simd: isa.funcMap to ensure only possible ISAs are analyzed 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
6523721846 simd: utf8 count 2024-02-05 21:22:04 -08:00
Mitchell Hashimoto
5b295cf6e2 simd: only ref buildable decls 2024-02-05 21:22:03 -08:00
Mitchell Hashimoto
e682cea911 simd/utf8: document neon better 2024-02-05 21:22:03 -08:00
Mitchell Hashimoto
987c5d213e simd: utf8 validation 2024-02-05 21:22:03 -08:00
Mitchell Hashimoto
dc041f86fd src/simd: improve isa detection 2024-02-05 21:22:03 -08:00
Mitchell Hashimoto
7feba12eab simd: indexOf implementation using NEON 2024-02-05 21:22:03 -08:00
Mitchell Hashimoto
31d5785105 simd: basic ISA detection, boilerplate 2024-02-05 21:22:03 -08:00