* Re: 01/01: gnu: fftw: Build SIMD codelets. [not found] ` <20180417212551.BB270208E4@vcs0.savannah.gnu.org> @ 2018-05-03 23:25 ` Mark H Weaver 2018-05-04 14:44 ` Eric Bavier 2018-05-08 20:56 ` Mark H Weaver 0 siblings, 2 replies; 6+ messages in thread From: Mark H Weaver @ 2018-05-03 23:25 UTC (permalink / raw) To: Eric Bavier; +Cc: guix-devel Hi Eric, ericbavier@centurylink.net (Eric Bavier) writes: > bavier pushed a commit to branch core-updates > in repository guix. > > commit 65bb22796f854cbc3eae053a80b1d64365dad376 > Author: Eric Bavier <bavier@cray.com> > Date: Fri Apr 6 10:53:06 2018 -0500 > > gnu: fftw: Build SIMD codelets. > > * gnu/packages/algebra.scm (fftw)[arguments]: Remove 'no-native phase; use > configure cache value instead. Add configure flags for SIMD codelets. > (fftwf)[arguments]: Add neon configuration flag for 32-bit arm. > (fftw-avx): Remove variable. [...] > @@ -560,7 +569,10 @@ cosine/ sine transforms or DCT/DST).") > (arguments > (substitute-keyword-arguments (package-arguments fftw) > ((#:configure-flags cf) > - `(cons "--enable-float" ,cf)))) > + (if (string-prefix? "arm" (or (%current-target-system) > + (%current-system))) > + `(cons "--enable-neon" ,cf) > + cf)))) Did you intend to remove the "--enable-float" configure flag in fftwf? You didn't mention this change in the commit log. The description of fftwf appends "Single-precision version" to the description from fftw, but since your commit above, the fftw and fftwf packages are identical except on armhf, as far as I can tell. On armhf, the build now fails with "configure: error: NEON requires single precision". https://hydra.gnu.org/build/2674813/nixlog/1/tail-reload Can you take a look? Mark ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: 01/01: gnu: fftw: Build SIMD codelets. 2018-05-03 23:25 ` 01/01: gnu: fftw: Build SIMD codelets Mark H Weaver @ 2018-05-04 14:44 ` Eric Bavier 2018-05-08 20:56 ` Mark H Weaver 1 sibling, 0 replies; 6+ messages in thread From: Eric Bavier @ 2018-05-04 14:44 UTC (permalink / raw) To: 'Mark H Weaver'; +Cc: 'guix-devel@gnu.org' Hi Mark, > -----Original Message----- > From: Mark H Weaver [mailto:mhw@netris.org] > Sent: Thursday, May 03, 2018 6:26 PM > To: Eric Bavier > Cc: guix-devel@gnu.org > Subject: Re: 01/01: gnu: fftw: Build SIMD codelets. > > Hi Eric, > > ericbavier@centurylink.net (Eric Bavier) writes: > > > bavier pushed a commit to branch core-updates in repository guix. > > > > commit 65bb22796f854cbc3eae053a80b1d64365dad376 > > Author: Eric Bavier <bavier@cray.com> > > Date: Fri Apr 6 10:53:06 2018 -0500 > > > > gnu: fftw: Build SIMD codelets. > > > > * gnu/packages/algebra.scm (fftw)[arguments]: Remove 'no-native > phase; use > > configure cache value instead. Add configure flags for SIMD codelets. > > (fftwf)[arguments]: Add neon configuration flag for 32-bit arm. > > (fftw-avx): Remove variable. > > [...] > > > @@ -560,7 +569,10 @@ cosine/ sine transforms or DCT/DST).") > > (arguments > > (substitute-keyword-arguments (package-arguments fftw) > > ((#:configure-flags cf) > > - `(cons "--enable-float" ,cf)))) > > + (if (string-prefix? "arm" (or (%current-target-system) > > + (%current-system))) > > + `(cons "--enable-neon" ,cf) > > + cf)))) > > Did you intend to remove the "--enable-float" configure flag in fftwf? > You didn't mention this change in the commit log. Indeed, I think this was unintentional. > Can you take a look? Yes, thanks for checking. `~Eric ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: 01/01: gnu: fftw: Build SIMD codelets. 2018-05-03 23:25 ` 01/01: gnu: fftw: Build SIMD codelets Mark H Weaver 2018-05-04 14:44 ` Eric Bavier @ 2018-05-08 20:56 ` Mark H Weaver 2018-05-08 21:01 ` Eric Bavier 1 sibling, 1 reply; 6+ messages in thread From: Mark H Weaver @ 2018-05-08 20:56 UTC (permalink / raw) To: Eric Bavier; +Cc: guix-devel Hi Eric, Mark H Weaver <mhw@netris.org> writes: > ericbavier@centurylink.net (Eric Bavier) writes: > >> bavier pushed a commit to branch core-updates >> in repository guix. >> >> commit 65bb22796f854cbc3eae053a80b1d64365dad376 >> Author: Eric Bavier <bavier@cray.com> >> Date: Fri Apr 6 10:53:06 2018 -0500 >> >> gnu: fftw: Build SIMD codelets. >> >> * gnu/packages/algebra.scm (fftw)[arguments]: Remove 'no-native phase; use >> configure cache value instead. Add configure flags for SIMD codelets. >> (fftwf)[arguments]: Add neon configuration flag for 32-bit arm. >> (fftw-avx): Remove variable. > > [...] > >> @@ -560,7 +569,10 @@ cosine/ sine transforms or DCT/DST).") >> (arguments >> (substitute-keyword-arguments (package-arguments fftw) >> ((#:configure-flags cf) >> - `(cons "--enable-float" ,cf)))) >> + (if (string-prefix? "arm" (or (%current-target-system) >> + (%current-system))) >> + `(cons "--enable-neon" ,cf) >> + cf)))) > > Did you intend to remove the "--enable-float" configure flag in fftwf? > You didn't mention this change in the commit log. > > The description of fftwf appends "Single-precision version" to the > description from fftw, but since your commit above, the fftw and fftwf > packages are identical except on armhf, as far as I can tell. On armhf, > the build now fails with "configure: error: NEON requires single > precision". > > https://hydra.gnu.org/build/2674813/nixlog/1/tail-reload > > Can you take a look? Another problem with the above commit has now become apparent. In addition to the 'fftwf' failure at configuration time on armhf, the 'fftw' package also now fails its test suite on our armhf build slaves. While running the test suite, a test process is killed with SIGILL (Illegal instruction). I looked into it, and it appears that the "--enable-armv7a-cntvct" configure flag that you added should be removed. Adding it was a good guess, but apparently the ARMv7-a CNTVCT instruction is not available from user mode unless you use a specially patched kernel to enable it. For details, see: https://github.com/FFTW/fftw3/blob/master/README-perfcnt.md https://github.com/thoughtpolice/enable_arm_pmu https://neocontra.blogspot.com/2013/05/user-mode-performance-counters-for.html Since these issues are delaying the build-out of 'core-updates' on armhf with ~1K dependency failures, and I'm reasonably confident what needs to be done here, I'll go ahead and apply untested fixes for these issues to 'core-updates' soon. Regards, Mark ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: 01/01: gnu: fftw: Build SIMD codelets. 2018-05-08 20:56 ` Mark H Weaver @ 2018-05-08 21:01 ` Eric Bavier 2018-05-08 23:29 ` Mark H Weaver 0 siblings, 1 reply; 6+ messages in thread From: Eric Bavier @ 2018-05-08 21:01 UTC (permalink / raw) To: 'Mark H Weaver'; +Cc: 'guix-devel@gnu.org' Ok, if you feel confident, that's fine with me. Otherwise, I have a patch that I've tested on x86-64, and in the middle of testing for armhf that I can push in a few hours. I could easily add a commit that remove the "--enable-armv7a-cntvct" flag. Eric Bavier, Scientific Libraries, Cray Inc. > -----Original Message----- > From: Mark H Weaver [mailto:mhw@netris.org] > Sent: Tuesday, May 08, 2018 3:57 PM > To: Eric Bavier > Cc: guix-devel@gnu.org > Subject: Re: 01/01: gnu: fftw: Build SIMD codelets. > > Hi Eric, > > Mark H Weaver <mhw@netris.org> writes: > > > ericbavier@centurylink.net (Eric Bavier) writes: > > > >> bavier pushed a commit to branch core-updates in repository guix. > >> > >> commit 65bb22796f854cbc3eae053a80b1d64365dad376 > >> Author: Eric Bavier <bavier@cray.com> > >> Date: Fri Apr 6 10:53:06 2018 -0500 > >> > >> gnu: fftw: Build SIMD codelets. > >> > >> * gnu/packages/algebra.scm (fftw)[arguments]: Remove 'no-native > phase; use > >> configure cache value instead. Add configure flags for SIMD codelets. > >> (fftwf)[arguments]: Add neon configuration flag for 32-bit arm. > >> (fftw-avx): Remove variable. > > > > [...] > > > >> @@ -560,7 +569,10 @@ cosine/ sine transforms or DCT/DST).") > >> (arguments > >> (substitute-keyword-arguments (package-arguments fftw) > >> ((#:configure-flags cf) > >> - `(cons "--enable-float" ,cf)))) > >> + (if (string-prefix? "arm" (or (%current-target-system) > >> + (%current-system))) > >> + `(cons "--enable-neon" ,cf) > >> + cf)))) > > > > Did you intend to remove the "--enable-float" configure flag in fftwf? > > You didn't mention this change in the commit log. > > > > The description of fftwf appends "Single-precision version" to the > > description from fftw, but since your commit above, the fftw and fftwf > > packages are identical except on armhf, as far as I can tell. On > > armhf, the build now fails with "configure: error: NEON requires > > single precision". > > > > https://hydra.gnu.org/build/2674813/nixlog/1/tail-reload > > > > Can you take a look? > > Another problem with the above commit has now become apparent. In > addition to the 'fftwf' failure at configuration time on armhf, the 'fftw' > package also now fails its test suite on our armhf build slaves. > While running the test suite, a test process is killed with SIGILL (Illegal > instruction). > > I looked into it, and it appears that the "--enable-armv7a-cntvct" > configure flag that you added should be removed. Adding it was a good > guess, but apparently the ARMv7-a CNTVCT instruction is not available from > user mode unless you use a specially patched kernel to enable it. > > For details, see: > > https://github.com/FFTW/fftw3/blob/master/README-perfcnt.md > https://github.com/thoughtpolice/enable_arm_pmu > https://neocontra.blogspot.com/2013/05/user-mode-performance- > counters-for.html > > Since these issues are delaying the build-out of 'core-updates' on armhf > with ~1K dependency failures, and I'm reasonably confident what needs to > be done here, I'll go ahead and apply untested fixes for these issues to > 'core-updates' soon. > > Regards, > Mark ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: 01/01: gnu: fftw: Build SIMD codelets. 2018-05-08 21:01 ` Eric Bavier @ 2018-05-08 23:29 ` Mark H Weaver 2018-05-09 2:29 ` Eric Bavier 0 siblings, 1 reply; 6+ messages in thread From: Mark H Weaver @ 2018-05-08 23:29 UTC (permalink / raw) To: Eric Bavier; +Cc: guix-devel Hi Eric, Eric Bavier <bavier@cray.com> writes: > Ok, if you feel confident, that's fine with me. > > Otherwise, I have a patch that I've tested on x86-64, and in the > middle of testing for armhf that I can push in a few hours. I could > easily add a commit that remove the "--enable-armv7a-cntvct" flag. Sorry for the duplicate work, but I already pushed my fixes in commit 69d5909e032e2fba57814ea9db52389d384d9341 to core-updates. I tested them on x86_64, but nowhere else. It's not ideal, and I certainly wouldn't do such a thing on 'master', but given the large number of affected builds and my uncertainty about when you would fix it, I didn't want to wait any longer. FYI, I also removed "--enable-armv8-cntvct-el0" on 64-bit ARM, because <https://github.com/FFTW/fftw3/blob/master/README-perfcnt.md> suggests that as on 32-bit ARM, the relevant instruction is not normally available from user mode. I removed "--enable-mips-zbus-timer" on MIPS as well, because I suspect that it's not supported on Loongson devices, although I'm not certain. If you see any problems with my commit, please let me know. Thanks! Mark ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: 01/01: gnu: fftw: Build SIMD codelets. 2018-05-08 23:29 ` Mark H Weaver @ 2018-05-09 2:29 ` Eric Bavier 0 siblings, 0 replies; 6+ messages in thread From: Eric Bavier @ 2018-05-09 2:29 UTC (permalink / raw) To: Mark H Weaver; +Cc: guix-devel@gnu.org Hello Mark, No problem. I don't mind some parallel work that results in more confidence in the changes. I saw your commit 69d5909, which looks good to me (you even untangled my nasty quoting, which I often can't seem to get right). Sorry for the slow response, and thanks for finding the issue in the first place. Eric Bavier, Scientific Libraries, Cray Inc. ________________________________________ From: Mark H Weaver <mhw@netris.org> Sent: Tuesday, May 8, 2018 18:29 To: Eric Bavier Cc: guix-devel@gnu.org Subject: Re: 01/01: gnu: fftw: Build SIMD codelets. Hi Eric, Eric Bavier <bavier@cray.com> writes: > Ok, if you feel confident, that's fine with me. > > Otherwise, I have a patch that I've tested on x86-64, and in the > middle of testing for armhf that I can push in a few hours. I could > easily add a commit that remove the "--enable-armv7a-cntvct" flag. Sorry for the duplicate work, but I already pushed my fixes in commit 69d5909e032e2fba57814ea9db52389d384d9341 to core-updates. I tested them on x86_64, but nowhere else. It's not ideal, and I certainly wouldn't do such a thing on 'master', but given the large number of affected builds and my uncertainty about when you would fix it, I didn't want to wait any longer. FYI, I also removed "--enable-armv8-cntvct-el0" on 64-bit ARM, because <https://github.com/FFTW/fftw3/blob/master/README-perfcnt.md> suggests that as on 32-bit ARM, the relevant instruction is not normally available from user mode. I removed "--enable-mips-zbus-timer" on MIPS as well, because I suspect that it's not supported on Loongson devices, although I'm not certain. If you see any problems with my commit, please let me know. Thanks! Mark ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-05-09 2:29 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20180417212549.1283.62731@vcs0.savannah.gnu.org> [not found] ` <20180417212551.BB270208E4@vcs0.savannah.gnu.org> 2018-05-03 23:25 ` 01/01: gnu: fftw: Build SIMD codelets Mark H Weaver 2018-05-04 14:44 ` Eric Bavier 2018-05-08 20:56 ` Mark H Weaver 2018-05-08 21:01 ` Eric Bavier 2018-05-08 23:29 ` Mark H Weaver 2018-05-09 2:29 ` Eric Bavier
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.