On 28 Aug 2016, at 02:10, K. Macy <kmacy at freebsd.org> wrote:> >> The problem here is that Phoronix took a Beta version of FreeBSD 11. >> Beta versions have a lot of debugging (malloc, invariants, witness) >> options enabled which make it significantly slower than release >> versions. This is even obviously when you run a Beta as a desktop. It >> just feels much slower. > > > I don't know what was going on in these particular tests, but in a > more recent benchmarking run > -https://www.phoronix.com/scan.php?page=article&item=freebsd11-clang-gcc&num=1 > - you're seeing the result of openmp being disabled in base. The clang > maintainer for src refuses to include libomp as required for -fopenmp > because nothing in base requires it.Come on, this is nonsense. I have indicated earlier that I would have liked to import openmp into base, but this was shot down precisely for that reason: nothing in base uses it. So for now, the solution is simply: install one of the llvm ports, and use it. These have configuration setting to install every optional component from the LLVM project. -Dimitry -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 194 bytes Desc: Message signed with OpenPGP using GPGMail URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20160828/c16d44a4/attachment.sig>
El 28/8/2016 14:56, "Dimitry Andric" <dim at freebsd.org> escribi?:> > On 28 Aug 2016, at 02:10, K. Macy <kmacy at freebsd.org> wrote: > > > >> The problem here is that Phoronix took a Beta version of FreeBSD 11. > >> Beta versions have a lot of debugging (malloc, invariants, witness) > >> options enabled which make it significantly slower than release > >> versions. This is even obviously when you run a Beta as a desktop. It > >> just feels much slower. > > > > > > I don't know what was going on in these particular tests, but in a > > more recent benchmarking run > > -https://www.phoronix.com/scan.php?page=article&item=freebsd11-clang-gcc&num=1> > - you're seeing the result of openmp being disabled in base. The clang > > maintainer for src refuses to include libomp as required for -fopenmp > > because nothing in base requires it. > > Come on, this is nonsense. I have indicated earlier that I would have > liked to import openmp into base, but this was shot down precisely for > that reason: nothing in base uses it. > > So for now, the solution is simply: install one of the llvm ports, and > use it. These have configuration setting to install every optional > component from the LLVM project. > > -Dimitry >How does the port infrastructure handle openmp-enabled ports (those with an openmp option) then? Is an omp-capable compiler automatically pulled in or is openmp ignored unless the port explicitely requests one from ports? Fernando
On Sun, 28 Aug 2016 14:55:37 +0200 Dimitry Andric <dim at FreeBSD.org> wrote:> On 28 Aug 2016, at 02:10, K. Macy <kmacy at freebsd.org> wrote: > > > >> The problem here is that Phoronix took a Beta version of FreeBSD 11. > >> Beta versions have a lot of debugging (malloc, invariants, witness) > >> options enabled which make it significantly slower than release > >> versions. This is even obviously when you run a Beta as a desktop. It > >> just feels much slower. > > > > > > I don't know what was going on in these particular tests, but in a > > more recent benchmarking run > > -https://www.phoronix.com/scan.php?page=article&item=freebsd11-clang-gcc&num=1 > > - you're seeing the result of openmp being disabled in base. The clang > > maintainer for src refuses to include libomp as required for -fopenmp > > because nothing in base requires it. > > Come on, this is nonsense. I have indicated earlier that I would have > liked to import openmp into base, but this was shot down precisely for > that reason: nothing in base uses it. > > So for now, the solution is simply: install one of the llvm ports, and > use it. These have configuration setting to install every optional > component from the LLVM project. > > -Dimitry >With 11, one can even simply install devel/openmp which will only install the libopenmp bits from llvm, and after that, base cc can do openmp. -- Matthieu Volat <mazhe at alkumuna.eu> -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 181 bytes Desc: OpenPGP digital signature URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20160828/905f6cda/attachment.sig>
On Sunday, August 28, 2016, Dimitry Andric <dim at freebsd.org> wrote:> On 28 Aug 2016, at 02:10, K. Macy <kmacy at freebsd.org <javascript:;>> > wrote: > > > >> The problem here is that Phoronix took a Beta version of FreeBSD 11. > >> Beta versions have a lot of debugging (malloc, invariants, witness) > >> options enabled which make it significantly slower than release > >> versions. This is even obviously when you run a Beta as a desktop. It > >> just feels much slower. > > > > > > I don't know what was going on in these particular tests, but in a > > more recent benchmarking run > > -https://www.phoronix.com/scan.php?page=article&item> freebsd11-clang-gcc&num=1 > > - you're seeing the result of openmp being disabled in base. The clang > > maintainer for src refuses to include libomp as required for -fopenmp > > because nothing in base requires it. > > Come on, this is nonsense. I have indicated earlier that I would have > liked to import openmp into base, but this was shot down precisely for > that reason: nothing in base uses it. > >So for now, the solution is simply: install one of the llvm ports, and> use it. These have configuration setting to install every optional > component from the LLVM project.It's hardly nonsense. I didn't say that it couldn't be made to work by installing the right ports, with the right options, if you pass the right extra library paths (-fopenmp is sufficient on other platforms). I said that it is not present in base. Thus out of the box performance is what we see. Can you point to other platforms where the default system compiler has disabled functionality? I think the whole concept of "base" may be confusing things. Users don't care about what is base and what isn't. The simple fact is you install a compiler with missing functionality, requiring extra steps by the user that only make sense if you're a committer. -M> > -Dimitry > >