Marek Patches A "Mega Radeon" Driver
In an effort to aid distribution vendors maximizing their disk space and simplify things, AMD developer Marek Olšák has posted a patch for possible take-up for a "Mega Radeon" driver.
The straight-forward patch by Marek would bundle the R600g and RadeonSI Gallium3D drivers within the R300 Gallium3D driver, r300_dri.so. Effectively this would be a single driver file that would support all of AMD's supported GPUs from the R300 series up through the latest Rx 200 series.
Bundling all of the existing drivers into a single binary file would free-up disk space and allow for possible greater optimizations to be applied by the compiler during link-time. Right now the R300g driver is just under 6MB, the R600g driver is 6.5MB, and the RadeonSI driver is almost 6MB. That's over 18MB of disk space for supporting the three Radeon drivers, but if they were spun into a single file with Marek's Mega Radeon patch, it becomes just 7MB for supporting all three driver generations.
If moving ahead to mainline this patch, there's work to be done by Marek or others for supporting other Gallium3D targets like the OpenCL and VDPAU support, applying the same "mega" process to other Gallium3D targets/APIs, and making other needed changes.
This concept of bundling more code into common shared objects originated last year with Intel's Eric Anholt and his Mesa Mega Driver Series for classic Mesa/DRI to focus on saving a few megabytes of disk space for distribution vendors wishing to cram the whole Mesa stack onto their size-constrained live Linux images. Plus there's the potential for greater performance via LTO with more link-time optimizations being relevant to compiling more code into the same file, but for how that translates to end-users with real-world graphics performance has been minimal according to previous reports.
More information on the Mega Radeon work can be found via the Mesa developers' list.
Latest Linux Hardware Reviews
Latest Linux Articles
Latest Linux News
Latest Forum Discussions