3 ms·
One application which has impressed me with metal implementation even on low end HW (intel HD 620) is iterm2[1] terminal emulator. IMO, it is a perfect example
by Abishek_Muthian 7y ago
One application which has impressed me with metal implementation even on low end HW (intel HD 620) is iterm2[1] terminal emulator.
IMO, it is a perfect example of how normal screen drawing if made using HW accelerated API could make a huge difference. This is especially true with low end hardware e.g. if Raspberry Pi (Broadcom/Videocore) had implicit support for OpenGL from the start by default like Apple has done with Metal, there could have been a decent desktop experience which is not possible with current SW rendering on low power CPU.
GPU rendering talk is getting lost with discussions about High end graphics cards or GPGPU computation, but I think Metal has brought back the focus to general screen drawing and judging from how developers like George Nachman (iTerm2) was able to take advantage of it; Apple seems to have done good with it.
[1]:https://gitlab.com/gnachman/iterm2/wikis/Metal-Renderer https://gitlab.com/gnachman/iterm2/wikis/Metal-Renderer
- Teknoman117 7y agoIf you've ever played with Wayland on a raspberry pi, it's an amazing experience. It doesn't feel slow anymore. Now, apps still run slowly if they are doing anything particularly compute intensive (chromium), but it's very "responsive".
- Abishek_Muthian 7y agoYes, these are my experience. Please suggest if I had missed something which could provide a better experience. My configuration to minimize variables which diminish Pi desktop experience - USB SSD boot, Zswap, Btrfs on Arch Linux 64bit (for better support for the latter 2). 1. Enabling VC4 driver at boot, enables OpenGL support to Pi. 2. For Wayland compositor, I used Enlightenment (Gnome, GDM didn't launch). I enabled HW rendering via OpenGL for all default rendering. Basic windowing experience is fast, as expected from HW rendering. Few default applications like terminal (Terminology) if used carefully(not resizing windows, not dragging etc.) works. But any other applications which use OpenGL like screenshot (or) applications which use XWayland chromium, firefox failed to launch. So, my conclusion is that this setup works only for basic windowing i.e. file transfers and careful use of console. Perhaps Wayland via SW rendering (likely the one mentioned by you) could provide a crash free experience, but that defeats the purpose of getting general screen drawing HW accelerated (to feel responsive)?
- gnachman 7y agoThanks!
- Abishek_Muthian 7y agoThank you.
- astrange 7y agoEven without Metal, all drawing on macOS/iOS is "hardware-accelerated", especially if based on CALayers. Performance comes from focusing on performance no matter what layer you use.