5 ms·
A few years back I wrote an N64 emulator graphics module for the Raspberry Pi because I was unhappy with the poor performance of the existing ones and I would h
by pcwalton 6y ago
A few years back I wrote an N64 emulator graphics module for the Raspberry Pi because I was unhappy with the poor performance of the existing ones and I would have really wanted this. Drawcall overhead for Broadcom's official drivers is extreme: you can't have more than a single-digit number of drawcalls per frame and still maintain 60 FPS. I ended up having to go to ubershaders for everything just to maintain 30 FPS. I'm certain the hardware was capable of much more, but the drivers were holding it back.
- mobilio 6y agoThis is one of RPi limitation - closed source firmware and drivers. But hardware is much better...
- dividuum 6y agoOnly partially true on the Pi4: The complete OpenGL stack is now open source using Mesa (it was optional on previous models). Video decoding is slowly moving over from the closed MMAL stack to KMS and V4L2. The boot firmware is still closed though.
- messe 6y ago> The boot firmware is still closed though. Not much worse than a PC then in that regard.
- mobilio 6y agoUPDATE - mine fault. CPU doesn't have AES instructions! Actually it is. For example some RPi CPUs have AES acceleration instructions built similar as AES-NI on x86. But due firmware limit we can't use them. Probably it's licensing and pricing issue...
- messe 6y agoI looked it up. That's not true. The hardware isn't there, and would require the RPi foundation purchase a license to implement. See the engineer reply in this thread: https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=207888 https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=2078... > That is licence for the HW, so you buy it then add the requisite HW to the die, so no, it cannot be added later without redeisgning the HW, which would cost about $1M Plus the licence....
- messe 6y agoCan't edit my own post, but please stop downvoting mobilio. They admitted they were wrong, and there's no shame in that. Even if they had been wrong, they shouldn't necessarily have been downvoted, because it still ended up adding to the discussion.
- my123 6y agoIt's an export law issue. Raspberry Pi is an educational product that should be exportable all around the world. They can't let crypto regulation laws upend that goal.
- psykotic 6y agoWasn't one of the issues with earlier Pi versions that the driver just serialized high-level GLES-like commands to a front-end processor that ran a huge closed firmware blob? All GPUs have built-in command processors but this was closer to a full driver running as a firmware blob on an auxiliary CPU.
- pabs3 6y agoThere is open RPi boot firmware here: https://github.com/librerpi/rpi-open-firmware/ https://github.com/librerpi/rpi-open-firmware/
- rasz 6y agoVideo decoding is still a binary blob. There is no documentation to start writing your own decoders.
- 0xfaded 6y agoThe video core documentation for the gpu is open and you can actually write code for the GPU (and an open source assembler exists)
- soylentgraham 6y agoDo you mean hardware module? Have you got any blogs or docs about this? Came across the same thing doing a baremetal kernel (fun!) and this never crossed my mind!
- app4soft 6y ago> I'm certain the hardware was capable of much more, but the drivers were holding it back. Exactly like iPhone story on performance decreasing "for battery life" for older devices, each time on next device model rolled out.
- oceanswave 6y agoOr like samsung phones, where they just stop giving you updates after 2 major releases