From patchwork Fri Jul 12 12:00:04 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Romain GARBAGE X-Patchwork-Id: 29230 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 7519827BBE9; Fri, 12 Jul 2024 13:03:01 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 75E6527BBE2 for ; Fri, 12 Jul 2024 13:02:59 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sSEyi-0000kP-7Y; Fri, 12 Jul 2024 08:02:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sSEyS-0008CI-1J for guix-patches@gnu.org; Fri, 12 Jul 2024 08:02:04 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sSEyR-0004ie-Ck for guix-patches@gnu.org; Fri, 12 Jul 2024 08:02:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sSEyR-00074K-G8 for guix-patches@gnu.org; Fri, 12 Jul 2024 08:02:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#72062] [PATCH v3 4/5] gnu: Add openmpi-5. Resent-From: Romain GARBAGE Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 12 Jul 2024 12:02:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72062 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72062@debbugs.gnu.org Cc: ludovic.courtes@inria.fr, Romain GARBAGE Received: via spool by 72062-submit@debbugs.gnu.org id=B72062.172078572127129 (code B ref 72062); Fri, 12 Jul 2024 12:02:03 +0000 Received: (at 72062) by debbugs.gnu.org; 12 Jul 2024 12:02:01 +0000 Received: from localhost ([127.0.0.1]:53427 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sSEyO-00073S-DV for submit@debbugs.gnu.org; Fri, 12 Jul 2024 08:02:00 -0400 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:1634) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sSEyI-00072F-S2 for 72062@debbugs.gnu.org; Fri, 12 Jul 2024 08:01:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=cbM8mwrO+H9LSBuYWvVfbRlbWYUyW9KXXgE9XUjVVDc=; b=Mzr+LHYcGbxDp4RRCBAHC+mUnjJWxbuB08ISeEcjkaZHNNqglevFoWxj /Vk0+EC5q8aIaYPSAQGkL5kO0oZDdMOvDTuHecUkGOq3DjD1GrGpuZfsm MqXaq1wbsqvuljFGEg2AFqwGsyeQkeGwIVc9r26ZfpQ2+zTS3UW3SJBOy I=; Authentication-Results: mail2-relais-roc.national.inria.fr; dkim=none (message not signed) header.i=none; spf=SoftFail smtp.mailfrom=romain.garbage@inria.fr; dmarc=fail (p=none dis=none) d=inria.fr X-IronPort-AV: E=Sophos;i="6.09,202,1716242400"; d="scan'208";a="175231351" Received: from 91-164-88-5.subs.proxad.net (HELO localhost.localdomain) ([91.164.88.5]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jul 2024 14:01:46 +0200 From: Romain GARBAGE Date: Fri, 12 Jul 2024 14:00:04 +0200 Message-ID: <20240712120140.20391-5-romain.garbage@inria.fr> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20240712120140.20391-1-romain.garbage@inria.fr> References: <20240712120140.20391-1-romain.garbage@inria.fr> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/mpi.scm (openmpi-5): New variable. Change-Id: I048692b2e928077c9cfa9fb8076ceb356251e1db --- gnu/packages/mpi.scm | 59 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 6270108b16..01f07a0f7c 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2018–2022 Tobias Geerinckx-Rice ;;; Copyright © 2018 Paul Garlick ;;; Copyright © 2019, 2021 Ricardo Wurmus +;;; Copyright © 2024 Romain Garbage ;;; ;;; This file is part of GNU Guix. ;;; @@ -49,6 +50,7 @@ (define-module (gnu packages mpi) #:use-module (gnu packages ncurses) #:use-module (gnu packages parallel) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages valgrind) #:use-module (srfi srfi-1) #:use-module (ice-9 match)) @@ -307,6 +309,63 @@ (define-public openmpi ;; See file://LICENSE (license license:bsd-2))) +(define-public openmpi-5 + (package + (inherit openmpi) + (version "5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.open-mpi.org/software/ompi/v" + (version-major+minor version) + "/downloads/openmpi-" version ".tar.bz2")) + (sha256 + (base32 "02x9xmpggw77mdpikjjx83j6i4v3gkqbncda73lk5axk0vr841cr")))) + + (inputs (modify-inputs (package-inputs openmpi) + ;; As of Open MPI 5.0.X, PMIx is used to communicate + ;; with SLURM, so SLURM'S PMI is no longer needed. + (delete "slurm") + (append ucx) ;for Infiniband support + (append openpmix) ;for PMI support (launching via "srun") + (append prrte))) ;for PMI support (launching via "srun") + (native-inputs (modify-inputs (package-native-inputs openmpi) + (append python))) + + (outputs '("out" "debug")) + (arguments + (substitute-keyword-arguments (package-arguments openmpi) + ((#:configure-flags _) + #~(list "--enable-mpi-ext=affinity" ;cr doesn't work + "--with-sge" + + #$@(if (package? (this-package-input "valgrind")) + #~("--enable-memchecker" + "--with-valgrind") + #~("--without-valgrind")) + + "--with-hwloc=external" + "--with-libevent" + + ;; This replaces --enable-mpirun-prefix-by-default wich is deprecated + ;; since 5.x. + "--enable-prte-prefix-by-default" + + ;; Enable support for the 'Process Management Interface for Exascale' + ;; (PMIx) used e.g. by Slurm for the management communication and + ;; coordination of MPI processes. + (string-append "--with-pmix=" #$(this-package-input "openpmix")) + (string-append "--with-prrte=" #$(this-package-input "prrte")) + + ;; Since 5.x, Infiniband support is provided by ucx. + ;; See https://docs.open-mpi.org/en/main/release-notes/networks.html#miscellaneous-network-notes + (string-append "--with-ucx=" #$(this-package-input "ucx")))) + + ((#:phases phases) + #~(modify-phases #$phases + (delete 'remove-absolute) + (delete 'scrub-timestamps))))))) + (define-public openmpi-c++ (package/inherit openmpi (name "openmpi-c++")