1
0
Fork 0
mirror of https://github.com/alacritty/alacritty.git synced 2024-11-25 14:05:41 -05:00
alacritty/src
Joe Wilm 3cdba29124 Reduce InstanceData footprint
The InstanceData type in the rendering subsystem was previously 16
floats which occupied a total of 64 bytes per instance. This meant that
for every character or background cell drawn, 64 bytes were sent to the
GPU. In the case of a 400x100 cell grid, a total of 2.5MB would be sent.

This patch reduces InstanceData's size to 26 bytes, a 60% improvement!
Using the above example for comparison, a worst case of 1MB would be
transferred.

The motivation for this patch comes from macOS. Once the terminal grid
would reach a certain size, performance experienced a sharp and dramatic
drop (render times would go from ~3ms to ~16ms). I don't want to
speculate too much on the underlying issue, but suffice it to say that
this patch alleviates the problem in my testing.
2017-07-01 10:24:50 -07:00
..
renderer Reduce InstanceData footprint 2017-07-01 10:24:50 -07:00
term Add dim color support 2017-06-23 11:27:15 -07:00
ansi.rs Add dim color support 2017-06-23 11:27:15 -07:00
cli.rs Add config file as cli option (#576) 2017-05-28 17:42:36 -07:00
config.rs Add dim color support 2017-06-23 11:27:15 -07:00
display.rs Implement semantic and line selection dragging 2017-06-19 21:31:50 -07:00
event.rs Fix unnecessary redraws with active selection 2017-06-19 21:31:50 -07:00
event_loop.rs Minor cleanup, style fix, dead code removal 2017-05-24 10:56:50 -07:00
grid.rs Implement semantic and line selection dragging 2017-06-19 21:31:50 -07:00
index.rs Clippy fixes! 2017-01-06 20:44:51 -08:00
input.rs Update tests for new Selection API 2017-06-19 21:31:50 -07:00
lib.rs Reduce InstanceData footprint 2017-07-01 10:24:50 -07:00
logging.rs Return an error from logging::initialize 2017-01-23 09:14:01 -08:00
macros.rs Remove debug_print! macros 2017-01-23 09:14:01 -08:00
main.rs Implement semantic and line selection dragging 2017-06-19 21:31:50 -07:00
meter.rs Misc formatting fixes 2016-12-16 22:48:04 -08:00
selection.rs Update tests for new Selection API 2017-06-19 21:31:50 -07:00
sync.rs Fix some compiler warnings 2016-09-23 10:12:11 -07:00
tty.rs Find and set $WINDOWID to X11 window ID (#586) 2017-05-27 20:08:28 -07:00
util.rs Add better printing for ref test failure 2017-04-03 20:44:23 -07:00
window.rs Find and set $WINDOWID to X11 window ID (#586) 2017-05-27 20:08:28 -07:00