View previous topic :: View next topic |
Author |
Message |
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3403 Location: Rasi, Finland
|
Posted: Wed Nov 07, 2018 6:10 am Post subject: |
|
|
So far the most compelling distro for my personal use, besides Gentoo, is Void Linux.
When it comes to my relatives, I just feed them with Fedora, because the updates just work without my intervention... every time. _________________ ..: Zucca :..
Gentoo IRC channels reside on Libera.Chat.
--
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
berferd Tux's lil' helper
Joined: 13 May 2004 Posts: 117
|
Posted: Thu Nov 15, 2018 3:21 am Post subject: |
|
|
Zucca wrote: | So far the most compelling distro for my personal use, besides Gentoo, is Void Linux. |
Void Linux looks really interesting. I'm going to have to give it a try on a VM. Thanks! |
|
Back to top |
|
|
Cuong Nguyen Apprentice
Joined: 18 Jan 2018 Posts: 152
|
Posted: Thu Nov 15, 2018 3:36 am Post subject: |
|
|
Have been playing with Gentoo more than a year, still can't adopt it for my main workstation.
My laptop in working mode is Ubuntu, but I am moving to Fedora Workstation GNOME rawhide, . Games mode is Windows 10. Programming mode is SystemRescueCD with 64-bit kernel and 32-bit user-space apps, keep factory binary kernel but recompile all apps with -Ofast and latest gcc toolchain.
My #1 hate about Gentoo is USE. How is yours? |
|
Back to top |
|
|
John R. Graham Administrator
Joined: 08 Mar 2005 Posts: 10590 Location: Somewhere over Atlanta, Georgia
|
Posted: Thu Nov 15, 2018 2:31 pm Post subject: |
|
|
I'd be interested in learning why you can't adopt it for your main workstation. Could you elaborate, please?
Also, if you hate USE flags, it seems the simplest thing in the world to avoid them: just don't set any of them (outside the profile, that is). Why is this a problem for you?
Genuinely curious on both points.
- John _________________ I can confirm that I have received between 0 and 499 National Security Letters. |
|
Back to top |
|
|
Yamakuzure Advocate
Joined: 21 Jun 2006 Posts: 2285 Location: Adendorf, Germany
|
Posted: Fri Nov 16, 2018 7:50 am Post subject: |
|
|
Cuong Nguyen wrote: | My #1 hate about Gentoo is USE. How is yours? | Oh? My #1 reason for using Gentoo is USE. Where else do you get such a power over your system? _________________ Important German:- "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
- "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
|
|
Back to top |
|
|
Cuong Nguyen Apprentice
Joined: 18 Jan 2018 Posts: 152
|
Posted: Fri Nov 16, 2018 9:18 am Post subject: |
|
|
I intended to install to my laptop Gentoo with the following configuration:
Latest GCC Toolchain ~amd64 and LLVM Clang Toolchain
-march=ivybridge with many optimization flags -O3 -ffast-match; stack-protector, spectre and meltdown elimination flags.
GNOME Desktop Environment with Dantrell's Gnome Patchsets
OpenRC Init System
Elogind
Latest ck-sources (4.19.2-ck-gnu as of thís writing)
LUKS on LVM
Combined EFISTUB kernel + initramfs as per Sakaki Guide.
I do compiling on another box in chroot mode and the same CPU architecture as my laptop.
I use rsync or PORTAGE_BINHOST to install it to a VM (that can run in both VirtualBox and VMware) on the same hardware.
I test it on VM, everything seems OK with some glitches like plymouth booting screen, Wayland Server doesnt work, KMS VirtualBox dont work etc.
Moved the binary to real hardware. It can boot, except some issues with boot loader (rEFInd Boot Loader cant load EFISTUB, but GRUB can)
Now it can't load firmware for wifi card (compiled as module, all modules and firmware are included in initramfs) ".../* DEBLOBBED */ error -2"
I have other configurations as well e.g. XFCE, LXQt, GNOME + systemd, more generic gcc flags, successfully up and run on VM
Now I am continuing investigations and make fixes, cutting down non-necessary features like crypto, adopt systemd and ditch Dantrell's patch sets.
Maybe because I am putting to much targets for my Gentoo Laptop, I made it up and run couple of times in the past but I was busy with other projects that need Windows.
I dont like USE because it would require having it defined before making binaries, so I borrow USE-flags from other Gentoo-based distros like Calculate Sabayon. If something changes, it will require recompiling, solving dependency conflicts. I have no problem with compiling at all, because I have big servers to do that work. |
|
Back to top |
|
|
ayeyes Tux's lil' helper
Joined: 03 Dec 2017 Posts: 104
|
Posted: Tue Nov 27, 2018 9:54 pm Post subject: |
|
|
Got a new 250GB SSD I haven't installed anything on yet. Have only run Gentoo on a spinning disk, and it's tempting to install Gentoo on the SSD, I have to admit. Manjaro is nice, but...
Last edited by ayeyes on Tue Nov 27, 2018 10:12 pm; edited 1 time in total |
|
Back to top |
|
|
ayeyes Tux's lil' helper
Joined: 03 Dec 2017 Posts: 104
|
Posted: Tue Nov 27, 2018 10:05 pm Post subject: |
|
|
Cuong Nguyen wrote: | I intended to install to my laptop Gentoo with the following configuration:
Latest GCC Toolchain ~amd64 and LLVM Clang Toolchain
-march=ivybridge with many optimization flags -O3 -ffast-match; stack-protector, spectre and meltdown elimination flags.
GNOME Desktop Environment with Dantrell's Gnome Patchsets
OpenRC Init System
Elogind
Latest ck-sources (4.19.2-ck-gnu as of thís writing)
LUKS on LVM
Combined EFISTUB kernel + initramfs as per Sakaki Guide.
I do compiling on another box in chroot mode and the same CPU architecture as my laptop.
I use rsync or PORTAGE_BINHOST to install it to a VM (that can run in both VirtualBox and VMware) on the same hardware.
I test it on VM, everything seems OK with some glitches like plymouth booting screen, Wayland Server doesnt work, KMS VirtualBox dont work etc.
Moved the binary to real hardware. It can boot, except some issues with boot loader (rEFInd Boot Loader cant load EFISTUB, but GRUB can)
Now it can't load firmware for wifi card (compiled as module, all modules and firmware are included in initramfs) ".../* DEBLOBBED */ error -2"
I have other configurations as well e.g. XFCE, LXQt, GNOME + systemd, more generic gcc flags, successfully up and run on VM
Now I am continuing investigations and make fixes, cutting down non-necessary features like crypto, adopt systemd and ditch Dantrell's patch sets.
Maybe because I am putting to much targets for my Gentoo Laptop, I made it up and run couple of times in the past but I was busy with other projects that need Windows.
I dont like USE because it would require having it defined before making binaries, so I borrow USE-flags from other Gentoo-based distros like Calculate Sabayon. If something changes, it will require recompiling, solving dependency conflicts. I have no problem with compiling at all, because I have big servers to do that work. |
-march=native is always best. It detects what your CPU supports, and is not using a preset. |
|
Back to top |
|
|
ayeyes Tux's lil' helper
Joined: 03 Dec 2017 Posts: 104
|
Posted: Tue Nov 27, 2018 10:18 pm Post subject: |
|
|
Ant P. wrote: | Whatever.
If you've got a problem and won't explain what it is so it can be fixed, it probably isn't the distro at fault. |
Right! Gentoo is great! It's my anxiety that has made me restore a BTRFS snapshot a 10s times. If I'm going to install Gentoo again it's going to be on ext4, and trying to relax. |
|
Back to top |
|
|
John R. Graham Administrator
Joined: 08 Mar 2005 Posts: 10590 Location: Somewhere over Atlanta, Georgia
|
Posted: Tue Nov 27, 2018 10:23 pm Post subject: |
|
|
ayeyes wrote: | -march=native is always best. It detects what your CPU supports, and is not using a preset. | Not always. For instance, take Cuong Nguyen's case. He's using a server farm to do compiles. The -march setting on the servers needs to be set not to native, which would optimize for the servers, but instead to a value that reflects the minimum common set of capabilities between all the target machines.
- John _________________ I can confirm that I have received between 0 and 499 National Security Letters. |
|
Back to top |
|
|
ayeyes Tux's lil' helper
Joined: 03 Dec 2017 Posts: 104
|
Posted: Tue Nov 27, 2018 10:28 pm Post subject: |
|
|
John R. Graham wrote: | ayeyes wrote: | -march=native is always best. It detects what your CPU supports, and is not using a preset. | Not always. For instance, take Cuong Nguyen's case. He's using a server farm to do compiles. The -march setting on the servers needs to be set not to native, which would optimize for the servers, but instead to a value that reflects the minimum common set of capabilities between all the target machines.
- John |
Right! I though of adding the distcc to my post, as 'native' isn't optimal then. I read on Reddit. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21849
|
Posted: Wed Nov 28, 2018 2:48 am Post subject: |
|
|
Modern distcc already suppresses itself when it detects use of -march=native. This will likely overload the distcc coordinator when all the jobs try to run locally, but at least you won't get inconsistent and broken -march effects. |
|
Back to top |
|
|
gjy0724 Apprentice
Joined: 11 Jun 2005 Posts: 166 Location: Lock Haven, Pennsylvania
|
Posted: Thu Dec 13, 2018 4:49 pm Post subject: |
|
|
matt_w wrote: | Naib wrote: | You will be back | Gentoo is the Hotel California of linux. I tried leaving here too many times to count. I was 18 when I first joined. And boy does it show.
EDIT: Wow, in 11 days, it'll have been 15 years ago since I first attempted an install. |
Glad I am not the only one. I started back in 2006 and used it until about 2012...I have still installed many times since then. This weekend I switched back from Scientific Linux (RHEL) and re-installed it on my desktop. Still haven't got everything I want on it yet but I am functional at least. I may even do the same to my work laptop over the Christmas break. |
|
Back to top |
|
|
1clue Advocate
Joined: 05 Feb 2006 Posts: 2569
|
Posted: Thu Dec 13, 2018 4:57 pm Post subject: |
|
|
John R. Graham wrote: | ayeyes wrote: | -march=native is always best. It detects what your CPU supports, and is not using a preset. | Not always. For instance, take Cuong Nguyen's case. He's using a server farm to do compiles. The -march setting on the servers needs to be set not to native, which would optimize for the servers, but instead to a value that reflects the minimum common set of capabilities between all the target machines.
- John |
I have frequently wondered how complicated it would be to have the target machine collect exactly what '-march=native' means in terms of cpuflags and anything else, and then pass that onto distcc.
The thing is, I have an atom with special capabilities, and everything on the net I would use in a farm has something else. It seems that if we can change the major architecture for a compile farm, compiling "alien" code, then we should also be able to handle something like special processor features not assigned to one of the -march options. |
|
Back to top |
|
|
Muso Veteran
Joined: 22 Oct 2002 Posts: 1052 Location: The Holy city of Honolulu
|
Posted: Thu Dec 13, 2018 6:30 pm Post subject: |
|
|
ayeyes wrote: | Got a new 250GB SSD I haven't installed anything on yet. Have only run Gentoo on a spinning disk, and it's tempting to install Gentoo on the SSD, I have to admit. Manjaro is nice, but... |
My Gentoo desktop is set up with 2 identical 500gb SSD's (one for / and ccache, and the other just for /home) and a 4tb "normal" hard drive mounted as /storage. Booting is very fast, a login and startx takes no time at all, and everything is just beautiful.
I would highly recommend putting Gentoo on that 250gb SSD. You'll never want your system on "spinning disks" again. _________________ "You can lead a horticulture but you can't make her think" ~ Dorothy Parker
2021 is the year of the Linux Desktop! |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21849
|
Posted: Fri Dec 14, 2018 2:36 am Post subject: |
|
|
1clue wrote: | I have frequently wondered how complicated it would be to have the target machine collect exactly what '-march=native' means in terms of cpuflags and anything else, and then pass that onto distcc. | There is a fairly frequently quoted invocation that asks gcc to dump the meaning of -march=native. It should just be a matter of running that tool, then patching the resulting text into make.conf.
1clue wrote: | The thing is, I have an atom with special capabilities, and everything on the net I would use in a farm has something else. It seems that if we can change the major architecture for a compile farm, compiling "alien" code, then we should also be able to handle something like special processor features not assigned to one of the -march options. | If the feature has a -mfeature name, which most if not all of them do, then yes, this is possible. |
|
Back to top |
|
|
Cuong Nguyen Apprentice
Joined: 18 Jan 2018 Posts: 152
|
Posted: Fri Dec 14, 2018 11:00 am Post subject: |
|
|
ayeyes wrote: |
-march=native is always best. It detects what your CPU supports, and is not using a preset. |
I dont think -march=native is the best. My most-used laptop is 3 years old with Ivybridge. I do compiles on Nehalem and Westmere CPUs and the most common incompatibilities is in CPU_X86_FLAGS avx and avx2 in media repalted packages.
Pentoo distro uses -mtune=nocona - that the oldest CPU microarchitecture after atom. I will try following this, setting -mtune=nehalem that the lowest CPU I use for compiling. |
|
Back to top |
|
|
Cuong Nguyen Apprentice
Joined: 18 Jan 2018 Posts: 152
|
Posted: Fri Dec 14, 2018 11:03 am Post subject: |
|
|
Muso wrote: | ayeyes wrote: | Got a new 250GB SSD I haven't installed anything on yet. Have only run Gentoo on a spinning disk, and it's tempting to install Gentoo on the SSD, I have to admit. Manjaro is nice, but... |
My Gentoo desktop is set up with 2 identical 500gb SSD's (one for / and ccache, and the other just for /home) and a 4tb "normal" hard drive mounted as /storage. Booting is very fast, a login and startx takes no time at all, and everything is just beautiful.
I would highly recommend putting Gentoo on that 250gb SSD. You'll never want your system on "spinning disks" again. |
I got 48GB RAM and I set ccache as 6GB tmpfs and /var/tmp/portage on 32GB tmpfs and compile flawlessly even largest packages like firefox or chromium. |
|
Back to top |
|
|
Anon-E-moose Watchman
Joined: 23 May 2008 Posts: 6103 Location: Dallas area
|
Posted: Fri Dec 14, 2018 12:13 pm Post subject: |
|
|
Hu wrote: | There is a fairly frequently quoted invocation that asks gcc to dump the meaning of -march=native. It should just be a matter of running that tool, then patching the resulting text into make.conf. |
This shows flags and march for native, but I wouldn't just copy the whole thing into make.conf.
Code: | gcc -march=native -E -v - </dev/null 2>&1 | sed -n 's/.* -v - //p' |
_________________ PRIME x570-pro, 3700x, 6.1 zen kernel
gcc 13, profile 17.0 (custom bare multilib), openrc, wayland |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
Cuong Nguyen Apprentice
Joined: 18 Jan 2018 Posts: 152
|
Posted: Sun Dec 16, 2018 4:08 am Post subject: |
|
|
Jaglover wrote: | Code: | gcc -### -E - -march=native 2>&1 | sed -r '/cc1/!d;s/(")|(^.* - )|( -mno-[^\ ]+)//g' |
|
Thank you Jaglover,
Is there any benchmark to prove that per cpu settings help improve execution speed?
IMHO, those scrutinized cpu flags would bring much benefit, because most of time OS codes running integer calculations. |
|
Back to top |
|
|
erm67 l33t
Joined: 01 Nov 2005 Posts: 653 Location: EU
|
Posted: Mon Dec 17, 2018 9:56 am Post subject: |
|
|
Quote: | Is there any benchmark to prove that per cpu settings help improve execution speed? |
It is not easy to find Gentoo specific benchmarks but since apparently your question is OS agnostic try to give a look at the benchmarks for Clear Linux on Phoronix:
https://www.phoronix.com/scan.php?page=search&q=Clear+Linux
It is a distro compiled by Intel for Intel processors only, it runs on all recent Intel processors but it's really fast, if you only need the few programs packaged with it of course, but is usually a lot faster than all other distro. The only difference is that it is compiled and optimized for a subset of Intel CPU (>SandyBridge IIRC).
I am not sure if it is possible to get the same level of optimization just setting the correct CPU flags in gentoo, but that is probably the goal
Clear Linux also beats a generic gentoo, see:
https://www.phoronix.com/scan.php?page=article&item=ec2-holiday-2017&num=1
-march local on x86 CPU is usually more powerful that -march=<cpu name> because it also tunes for the cache size of the current CPU _________________ Ok boomer
True ignorance is not the absence of knowledge, but the refusal to acquire it.
Ab esse ad posse valet, a posse ad esse non valet consequentia
My fediverse account: @erm67@erm67.dynu.net
Last edited by erm67 on Mon Dec 17, 2018 11:39 am; edited 1 time in total |
|
Back to top |
|
|
mir3x Guru
Joined: 02 Jun 2012 Posts: 455
|
Posted: Mon Dec 17, 2018 11:07 am Post subject: |
|
|
To rock in phoronix tests all distros would just need need to export CC and CFLAGS, its pretty bullshit, bc it usually compiles testing program with flags given by system and then testing it.
So even Ubuntu could catch clear linux if they export some tuned CFLAGS and CXXFLAGS. _________________ Sent from Windows |
|
Back to top |
|
|
erm67 l33t
Joined: 01 Nov 2005 Posts: 653 Location: EU
|
Posted: Mon Dec 17, 2018 11:45 am Post subject: |
|
|
Most of the programs are precompiled by the distro and phoronix only runs them, and it would be non sense use optimized CFLAGS for a program and unoptimized CFLAGS for the libraries&kernel when probably only 10% of CPU time is spent running user code .......... _________________ Ok boomer
True ignorance is not the absence of knowledge, but the refusal to acquire it.
Ab esse ad posse valet, a posse ad esse non valet consequentia
My fediverse account: @erm67@erm67.dynu.net |
|
Back to top |
|
|
C5ace Guru
Joined: 23 Dec 2013 Posts: 474 Location: Brisbane, Australia
|
Posted: Mon Dec 17, 2018 1:41 pm Post subject: |
|
|
Compile @world with -march=generic and time your hard working applications. Then do the same with -march=native. |
|
Back to top |
|
|
|