Michał "phoe" Herda
Michał "phoe" Herda
GL_VERSION = 4.6 (Compatibility Profile) Mesa 23.3.1-3 wine-9.0-rc2 Linux helix 6.5.0-5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.13-1 (2023-11-29) x86_64 GNU/Linux
This is likely because the methods for vector streams always operate element-by-element: https://github.com/edicl/flexi-streams/blob/74a1027311371a57258eba1bc908e050f5702277/in-memory.lisp#L235-L252 https://github.com/edicl/flexi-streams/blob/74a1027311371a57258eba1bc908e050f5702277/in-memory.lisp#L262-L270 It should be possible to optimize these with techniques like `(setf (subseq ...) (subseq ...))` for...
Good catch - in that case, it might be generic dispatch overhead, since each byte means a single GF call. Are you required to use `trivial-utf-8`, or can you do...
> Somehow I _want_ to believe the issue is something else than generic dispatch overhead. :) Profile this maybe? We'll see where most of the time is spent this way.
With the current behavior, `transform-octet` loads the stream's transformer via `in-memory-stream-transformer` for every single byte, which perhaps can mitigate some multiprocessing problems (modifying a transformer mid-IO-operation?), but maybe this can...
Slash commands work for me at the moment. I think this is closeable.
Should this issue be linked on the SBCL bugtracker, too?
Beep boop.
Beep beep boop. Should I request Quicklisp to pull from my tree?
OK, done. I volunteer to maintain the fork.