unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Vincent Legoll <vincent.legoll@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 40691@debbugs.gnu.org
Subject: [bug#40691] [PATCH v3 1/1] gnu: Add gromacs.
Date: Thu, 23 Apr 2020 15:07:42 +0200	[thread overview]
Message-ID: <d957d49d-2ce0-6e84-e1e1-28deb838b6fc@gmail.com> (raw)
In-Reply-To: <87y2qnv8da.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2606 bytes --]

On 22/04/2020 17:38, Ludovic Courtès wrote:

> This v2 looks alright to me, but I got this test failure on x86_64:
> 
> --8<---------------cut here---------------start------------->8---
>        Start 13: HardwareUnitTests
> 13/52 Test #13: HardwareUnitTests ...................***Failed    0.04 sec
> [==========] Running 5 tests from 2 test cases.
> [----------] Global test environment set-up.
> [----------] 1 test from CpuInfoTest
> [ RUN      ] CpuInfoTest.SupportLevel
> [       OK ] CpuInfoTest.SupportLevel (0 ms)
> [----------] 1 test from CpuInfoTest (0 ms total)
> 
> [----------] 4 tests from HardwareTopologyTest
> [ RUN      ] HardwareTopologyTest.Execute
> [       OK ] HardwareTopologyTest.Execute (6 ms)
> [ RUN      ] HardwareTopologyTest.HwlocExecute
> /tmp/guix-build-gromacs-2020.1.drv-0/gromacs-2020.1/src/gromacs/hardware/tests/hardwaretopology.cpp:88: Failure
> Expected: (hwTop.supportLevel()) >= (gmx::HardwareTopology::SupportLevel::Basic), actual: 4-byte object <01-00 00-00> vs 4-byte object <02-00 00-00>
> Cannot determine basic hardware topology from hwloc. GROMACS will still
> 
> work, but it might affect your performance for large nodes.
> Please mail gmx-developers@gromacs.org so we can try to fix it.
> [  FAILED  ] HardwareTopologyTest.HwlocExecute (5 ms)
> [ RUN      ] HardwareTopologyTest.ProcessorSelfconsistency
> [       OK ] HardwareTopologyTest.ProcessorSelfconsistency (6 ms)
> [ RUN      ] HardwareTopologyTest.NumaCacheSelfconsistency
> [       OK ] HardwareTopologyTest.NumaCacheSelfconsistency (5 ms)
> [----------] 4 tests from HardwareTopologyTest (22 ms total)
> 
> [----------] Global test environment tear-down
> [==========] 5 tests from 2 test cases ran. (22 ms total)
> [  PASSED  ] 4 tests.
> [  FAILED  ] 1 test, listed below:
> [  FAILED  ] HardwareTopologyTest.HwlocExecute
> 
>   1 FAILED TEST
> 
> […]
> 
> The following tests FAILED:
>           13 - HardwareUnitTests (Failed)
> Errors while running CTest
> make: *** [Makefile:99: test] Error 8
> --8<---------------cut here---------------end--------------->8---
> 
> Could you check what the test is doing?

I think it tries to get CPU topology from the linux kernel,
which is not particularly useful to test on a build server,
the package may run on completely different hardware.

> It may be reasonable to just skip it.

Hope you don't mind trading a test suite failure for a (harmless)
test suite build warning...

How's the crude disabling in the attached patch v3 look to you ?

And does it fix the failure ?
This test is not failing here (kvm on ryzen).

-- 
Vincent Legoll

[-- Attachment #2: 0001-gnu-Add-gromacs.v3.patch --]
[-- Type: text/x-patch, Size: 3840 bytes --]

From 660371d5a3e7c7c763fc123357ddd6c31f730553 Mon Sep 17 00:00:00 2001
From: Vincent Legoll <vincent.legoll@gmail.com>
Date: Sat, 18 Apr 2020 00:14:56 +0200
Subject: [PATCH] gnu: Add gromacs.

* gnu/packages/bioinformatics.scm (gromacs): New variable.
---
 gnu/packages/bioinformatics.scm | 56 +++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index b9be0c1918..62647d6146 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -17,6 +17,7 @@
 ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
 ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -79,6 +80,7 @@
   #:use-module (gnu packages golang)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages graph)
+  #:use-module (gnu packages graphviz)
   #:use-module (gnu packages groff)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
@@ -785,6 +787,60 @@ input/output delimiter.  When the new functionality is not used, bioawk is
 intended to behave exactly the same as the original BWK awk.")
     (license license:x11)))
 
+(define-public gromacs
+  (package
+    (name "gromacs")
+    (version "2020.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://ftp.gromacs.org/pub/gromacs/gromacs-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1kwrk3i1dxp8abhqqsl049lh361n4910h0415g052f8shdc6arp1"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "-DGMX_DEVELOPER_BUILD=on" ; Needed to run tests
+             ;; Workaround for cmake/FindSphinx.cmake version parsing that does
+             ;; not understand the guix-wrapped `sphinx-build --version' answer
+             (string-append "-DSPHINX_EXECUTABLE_VERSION="
+                            ,(package-version python-sphinx)))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-hwloc-test
+          (lambda _
+             ;; This test warns about the build host hardware
+             (substitute* "src/gromacs/hardware/tests/hardwaretopology.cpp"
+               (("TEST\\(HardwareTopologyTest, HwlocExecute\\)")
+                "void __guix_disabled()"))
+             #t)))))
+    (native-inputs
+     `(("doxygen" ,doxygen)
+       ("graphviz" ,graphviz)
+       ("python" ,python)
+       ("python-pygments" ,python-pygments)
+       ("python-sphinx" ,python-sphinx)))
+    (inputs
+     `(("fftwf" ,fftwf)
+       ("hwloc" ,hwloc-2 "lib")
+       ("imagemagick" ,imagemagick)
+       ("lapack" ,lapack)
+       ("openblas" ,openblas)
+       ("openmpi" ,openmpi)
+       ("perl" ,perl)))
+    (home-page "http://www.gromacs.org/")
+    (synopsis "Molecular dynamics software package")
+    (description "GROMACS is a versatile package to perform molecular dynamics,
+i.e. simulate the Newtonian equations of motion for systems with hundreds to
+millions of particles.  It is primarily designed for biochemical molecules like
+proteins, lipids and nucleic acids that have a lot of complicated bonded
+interactions, but since GROMACS is extremely fast at calculating the nonbonded
+interactions (that usually dominate simulations) many groups are also using it
+for research on non-biological systems, e.g. polymers.  GROMACS supports all the
+usual algorithms you expect from a modern molecular dynamics implementation.")
+    (license license:lgpl2.1+)))
+
 (define-public python-pybedtools
   (package
     (name "python-pybedtools")
-- 
2.26.0


  reply	other threads:[~2020-04-23 13:08 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-17 22:22 [bug#40691] [PATCH 0/1] gnu: Add gromacs Vincent Legoll
2020-04-17 22:24 ` [bug#40691] [PATCH] " Vincent Legoll
2020-04-17 22:48 ` [bug#40691] gromacs - WIP, submitted Vincent Legoll
2020-04-19 22:19 ` [bug#40691] [PATCH 0/1] gnu: Add gromacs Ludovic Courtès
2020-04-20 22:15   ` [bug#40691] [PATCH v2 1/1] " Vincent Legoll
2020-04-22 15:38     ` Ludovic Courtès
2020-04-23 13:07       ` Vincent Legoll [this message]
2020-04-23 19:52         ` [bug#40691] [PATCH v3 " Ludovic Courtès
2020-05-01 22:30           ` Vincent Legoll
2020-05-02 13:35             ` Ludovic Courtès
2020-05-02 13:46           ` [bug#40691] [PATCH v4 0/3] gnu: Add gromacs, tng & lmfit Vincent Legoll
2020-05-03 10:39             ` Ludovic Courtès
2020-05-03 22:31               ` [bug#40691] [PATCH v6 " Vincent Legoll
2020-05-04  8:40                 ` bug#40691: " Ludovic Courtès
2020-05-02 13:48 ` [bug#40691] [PATCH 1/3] gnu: Add tng Vincent Legoll
2020-05-02 13:48   ` [bug#40691] [PATCH 2/3] gnu: Add lmfit Vincent Legoll
2020-05-02 13:48   ` [bug#40691] [PATCH 3/3] gnu: Add gromacs Vincent Legoll
2020-05-02 13:53   ` [bug#40691] [PATCH v4 0/3]: " Vincent Legoll
2020-05-02 16:43 ` [bug#40691] [PATCH 1/3] gnu: Add tng Vincent Legoll
2020-05-02 16:43   ` [bug#40691] [PATCH 2/3] gnu: Add lmfit Vincent Legoll
2020-05-03 10:43     ` Ludovic Courtès
2020-05-02 16:43   ` [bug#40691] [PATCH 3/3] gnu: Add gromacs Vincent Legoll
2020-05-03 10:46     ` Ludovic Courtès
2020-05-03 10:41   ` [bug#40691] [PATCH 1/3] gnu: Add tng Ludovic Courtès
2020-05-03 22:32 ` Vincent Legoll
2020-05-03 22:32   ` [bug#40691] [PATCH 2/3] gnu: Add lmfit Vincent Legoll
2020-05-03 22:32   ` [bug#40691] [PATCH 3/3] gnu: Add gromacs Vincent Legoll
2020-05-03 22:39     ` Vincent Legoll
2020-05-03 22:39 ` [bug#40691] [PATCH] " Vincent Legoll
2020-05-05 21:27 ` [bug#40691] Upstream patches are being merged Vincent Legoll

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d957d49d-2ce0-6e84-e1e1-28deb838b6fc@gmail.com \
    --to=vincent.legoll@gmail.com \
    --cc=40691@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).