Commit graph

13287 commits

Author SHA1 Message Date
Kovid Goyal
aef0b9f50f
... 2024-02-25 09:57:31 +05:30
Kovid Goyal
74391d7c50
More work on SIMD utf-8 decode 2024-02-25 09:57:31 +05:30
Kovid Goyal
8975d1a9f4
no need to parametrize sentinel 2024-02-25 09:57:31 +05:30
Kovid Goyal
48bf8c6105
Report out of single byte control code embedded in CSI 2024-02-25 09:57:31 +05:30
Kovid Goyal
0ed1c6f840
Simplify utf8 parser func
Also show a replacement char for incomplete utf-8 sequences interrupted by an esc char
2024-02-25 09:57:31 +05:30
Kovid Goyal
72e73f2f81
Fix alignment of output array in UTF8Decoder 2024-02-25 09:57:31 +05:30
Kovid Goyal
95eac2e510
... 2024-02-25 09:57:31 +05:30
Kovid Goyal
bc499000a5
Infrastructure for developing and testing UTF-8 SIMD decode 2024-02-25 09:57:31 +05:30
Kovid Goyal
e2be8c2d37
Use unaligned loads for SIMD
makes no difference to the benchmarks and simplifies the code
2024-02-25 09:57:31 +05:30
Kovid Goyal
fd4c8e1e2d
Get rid of ByteLoader
Doesnt move the benchmarks
2024-02-25 09:57:31 +05:30
Kovid Goyal
ba18c5a669
Move ByteLoader back to simd-string.c in preparation for getting rid of it 2024-02-25 09:57:31 +05:30
Kovid Goyal
293ad34535
Get rid of utoi() 2024-02-25 09:57:31 +05:30
Kovid Goyal
45e10394a0
Get rid of ByteLoader from csi_parse_loop
It benchmark's 4% slower on my machine
2024-02-25 09:57:31 +05:30
Kovid Goyal
0531b4bc79
Move too long CSI check out of parse loop 2024-02-25 09:57:30 +05:30
Kovid Goyal
0f6d11351b
Fix benchmark rate calculation 2024-02-25 09:57:30 +05:30
Kovid Goyal
1b11c3e923
Double timeouts on flaky test 2024-02-25 09:57:30 +05:30
Kovid Goyal
c79baa56e4
Remove unused SIMD code 2024-02-25 09:57:30 +05:30
Kovid Goyal
c6f4c93d0a
Nicer exit code diagnostic 2024-02-25 09:57:30 +05:30
Kovid Goyal
8742fb8cce
Detect availability of intrinsics on intel macs just in case 2024-02-25 09:57:30 +05:30
Kovid Goyal
0bd67620c6
... 2024-02-25 09:57:30 +05:30
Kovid Goyal
0f60ac2dd7
sprintf -> snprintf 2024-02-25 09:57:30 +05:30
Kovid Goyal
0cd761808a
draw_codepoint is never called with from_inputstream=true 2024-02-25 09:57:30 +05:30
Kovid Goyal
43fb09dc39
Speed up Screen.draw 2024-02-25 09:57:30 +05:30
Kovid Goyal
c2d81d67c2
Nicer macros to ignore diagnostics 2024-02-25 09:57:30 +05:30
Kovid Goyal
272e944a13
DRYer 2024-02-25 09:57:30 +05:30
Kovid Goyal
a9f5519d11
Add tests for writing with cursor on trailer of wide char 2024-02-25 09:57:30 +05:30
Kovid Goyal
a055aaf035
... 2024-02-25 09:57:30 +05:30
Kovid Goyal
718f4b328f
Go back to a single code path for drawing text
Slightly reduces pure ASCII performance and improves Unicode
performance. We should be able to get pure ASCII performance back
via SIMD eventually.
2024-02-25 09:57:30 +05:30
Kovid Goyal
b41cf52ce4
ensure no control chars are drawn 2024-02-25 09:57:29 +05:30
Kovid Goyal
e08e15a676
Ensure parser buffer is aligned to 64 bytes 2024-02-25 09:57:29 +05:30
Kovid Goyal
c5f0b03a62
Remove not needed function 2024-02-25 09:57:29 +05:30
Kovid Goyal
794bd85371
Ignore warning from simde on clang 2024-02-25 09:57:29 +05:30
Kovid Goyal
73d657a21a
Dont use intel intrinsics switches on ARM 2024-02-25 09:57:29 +05:30
Kovid Goyal
103f5f3956
Move ringbuf into 3rdparty 2024-02-25 09:57:29 +05:30
Kovid Goyal
ef7d92a117
Update uthash from upstream 2024-02-25 09:57:29 +05:30
Kovid Goyal
33102d8c4e
Move uthash into 3rdparty 2024-02-25 09:57:29 +05:30
Kovid Goyal
56dcbca238
Move base64simd into a 3rdparty folder 2024-02-25 09:57:29 +05:30
Kovid Goyal
cc6dc96c90
Allow setting benchmark options 2024-02-25 09:57:29 +05:30
Kovid Goyal
2dffad1d8e
Use byteloader for printable char ranges 2024-02-25 09:57:29 +05:30
Kovid Goyal
93430cd5f4
Images benchmark should not measure speed of zlib 2024-02-25 09:57:29 +05:30
Kovid Goyal
3d0a90e63d
Switch to SIMD based base64 2024-02-25 09:57:29 +05:30
Kovid Goyal
9eb91984dd
Cleanup benchmark warmup code 2024-02-25 09:57:29 +05:30
Kovid Goyal
071c8200a6
... 2024-02-25 09:57:29 +05:30
Kovid Goyal
ad7175a24d
... 2024-02-25 09:57:29 +05:30
Kovid Goyal
24232ba277
Ensure goroutine has started before sending data 2024-02-25 09:57:28 +05:30
Kovid Goyal
0f6e5fe57e
Fix benchmark rate calculation 2024-02-25 09:57:28 +05:30
Kovid Goyal
ef8e8313ab
For some reason, memcpy is faster than assignment 2024-02-25 09:57:28 +05:30
Kovid Goyal
17cb65e981
Adjust amount of data in the benchmarks for more consistent timing 2024-02-25 09:57:28 +05:30
Kovid Goyal
f2153f060d
add unicode benchmark 2024-02-25 09:57:28 +05:30
Kovid Goyal
48c0b30671
Install simde on CI 2024-02-25 09:57:28 +05:30