On Friday, May 29, 2020 4:02:40 AM MST Paul Dufresne via devel wrote: > had forgotten to reply also to the list... doing it now: > > [cut the part where it was suggested to make package that contains LLVM > Intermediate Representation bitcode rather than CPU specific assembler] > > > On 2020-05-29 1:01 a.m., John M. Harris Jr wrote: > > > Paul, > > What benefit do you see in the overhead of LLVM IR, compared to standard > > packages? > > > John, > > Where do you see overhead in the distribution of LLVM IR? See below responses. > Advantages: > > * more space on the hard disks of the servers, because they contains > repositories only for LLVM IR packages rather than one by supported > architectures This may be a valid point, but I'm not sure it's really all that important. I'm currently mirroring 3 different arches of the Fedora repos, and the total disk space is 495G. That's not a lot of storage space these days, at least not for servers. Additionally, there are a number of packages that cannot be LLVM IR, which are needed to support running LLVM IR. Please also consider how initramfs would be handled. Statically compiled software or LLVM IR and the supporting software? > * less use of the CPU time of the servers because they don't optimize > code for specific CPUs Not handling this on the build servers means doing it on the end system, every time the program is run. > * very reduced cost for supporting more architectures, as code is > client-side generated Does LLVM IR have a way of handling arch-specific code? > * faster code on clients with recent CPUs, because code is optimized for > them, and was not in the old way of doing because you had to distribute > for a common base CPU How does LLVM IR accomplish this? Would it be slower on older CPUs, or does it specifically compile for the host CPU's micro-arch? > * CPU specific code generation and optimizations can be done on idle > time of the clients... there is not much idle time of the servers If it's going to be done on idle time of client systems, this is definitely not going to work in Fedora in general. Perhaps in Silverblue or other systems not designed to be a general purpose operating system? It actually might even work in Fedora Workstation, but then you'd have to separate Workstation from the base distro, assuming GNOME doesn't eat CPU idle time. -- John M. Harris, Jr. Splentity _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx