ChanServ changed the topic of #aarch64-laptops to: Linux support for AArch64 Laptops (Asus NovaGo TP370QL - HP Envy x2 - Lenovo Mixx 630 - Lenovo Yoga C630)
derzahl has joined #aarch64-laptops
<derzahl>
i have my kernel patched with mglru now but its not turned on
<derzahl>
i patched it with a bunch of stuff and was surprised they both applied cleanly and compiled. my main objective was to compile with -O3 and armv8.2a tuning, and switch to the cacule sceduler
<derzahl>
its been running great and now im trying to see if I can get the fingerprint reader to work
hexdump01 has joined #aarch64-laptops
hexdump0815 has quit [Ping timeout: 480 seconds]
jhovold has joined #aarch64-laptops
jhovold has quit [Quit: WeeChat 3.3]
jhovold has joined #aarch64-laptops
<arnd>
derzahl: -O3 tends to make the kernel behave worse because the aggressive loop unrolling just grows the kernel in places that don't matter. However, if you find a workload for which it matters, we can manually unroll the loop that there
<arnd>
I also wouldn't expect armv8.2 to make much of a difference for the kernel, again if you want to have an armv8.2-only kernel it would be better to optimize the places that do matter, such as using the LSE atomics unconditionally
<arnd>
One optimization that apparently does help is to use link-time-optimizations on the kernel
gwolf has quit [Ping timeout: 480 seconds]
gwolf has joined #aarch64-laptops
hexdump0815 has joined #aarch64-laptops
hexdump01 has quit [Ping timeout: 480 seconds]
<hexdump0815>
oh - whitequark irc log is back - a big thanks to whoever is responsible for making it working again
<robclark>
I changed the channel flags back to +M -R .. that seems to be the lesser of evils
<HdkR>
At least then you can flail silently until you realize nickserv failed to authenticate for w/e reason :D
<HdkR>
Looking forward to OFTC gaining support for SASL
<derzahl>
arnd: Thanks for the suggestions. I will check on that. I thought the -O3 problems you stated is no longer true with modern compilers.
<arnd>
derzahl: no, since -O3 tends to make things worse, nobody is using it any more, and we eliminated the Kconfig option for anything other than CONFIG_ARC
<arnd>
so we don't even notice when it breaks
<derzahl>
arnd: I dont think -O3 even enabled -funroll-loops, does it?
<arnd>
most of these are about loop optimization in some form
<arnd>
so no -funroll-loops, but a lot of related options
<derzahl>
yeh, i just ran: gcc -c -Q -O3 --help=optimizers
<derzahl>
I remember reading a discussion on LKML where a dev was suggesting enabling it by default(at least on his particular driver). I think Linus dissented for the sake of caution, But other devs mentioned the loop unrolling problems of the past were solved .
<derzahl>
tried to find it again but cant
<derzahl>
just checked, LSE atomics is enabled
<derzahl>
i have CONFIG_LTO_NONE=y
<derzahl>
so i guess that means its not using LTO?
<derzahl>
Whats your opinion on LLVM vs gcc? Im guessing its not good to use LLVM to compile the kernel on a distro compiled with gcc
<HdkR>
Kernel ABI doesn't care about mixing your compilers like that
<derzahl>
would it make a difference?
<derzahl>
i think I need to use clang to get LTO, right?
<derzahl>
currently Im not given any options for LTO besides "NONE"
jhovold has quit [Ping timeout: 480 seconds]
<HdkR>
gcc also supports LTO, not sure what is necessary for the kernel to enable the option though :)
<robclark>
using llvm to build kernel and gcc to build userspace is fine
<derzahl>
hmm "make LLVM=1 LLVM_IAS=1 nconfig" gives me the option of thinLTO, but not full LTO. Any idea why?
<derzahl>
does it matter?
<robclark>
no idea, haven't really played with LTO myself
<HdkR>
thinlto is pretty much as good as "fat" lto
<HdkR>
and doesn't use all the ram in the world
<HdkR>
thinlto is clang+lld only, gcc doesn't support that