Re: GPU-specific code with no GPU-specific features?
Richard Stallman <[email protected]>
| Newsgroups | gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
I am sorry it took me so long to respond.
> Sure, happy to elaborate. The README covers the high level, but
> the short answer is: the GPU backend batches all glyphs in a frame
> into a single draw call against an atlas texture,
What does "atlas texture" mean? I have never heard that term.
which scales
> much better with pixel count. On macOS (Metal) we have
> pixel-perfect parity with the NS renderer, native Retina/@2x
> rasterization,
Could you please explain what that means?
smooth buffer cross-fades, and inline video via
> direct GPU texture upload.
Does this mean Emacs would support a feature on MacOS that it does
not support on the GNU system?
This would be a very bad thing to do. It would be self-defeating!
Our goal is to replace nonfree (therefore unjust) operating systems
such as MacOS with free operating systems such as GNU/Linux.
To give better support to a nonfree system than a free system
would be an own goal.
From reports I have seen, all the modern GPUs require nonfree firmware
to be installed (it's not preinstalled in the harware). This means
that the use of these GPUs implies suffering an injustice.
To have features that work only if the user installs that nonfree
firmware would also be working against or goal. We must not
downgrade freedom-respecting platforms to second-class status!
These are two separate specific moral issues, both of the same form.
On GNU/Linux (OpenGL/EGL) the picture
> is more nuanced: full-redraw and scrolling are noticeably faster
> than Cairo at high resolutions, but typing throughput is still
> behind because glyph batching is not yet complete.
It sounds like you've implemented support for some features on
MacOS but not on GNU/Linux.
The longer-term
> bet is that having a GPU abstraction layer opens the door to
> compositing and effects that are simply not practical in the CPU
> path.
Are you looking at features that would work only on computers with
GPUs? We would need to judge them as possible distortion of our
goals.
--
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)