From nobody Sun Apr 16 08:27:08 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PzjwD5tYJz44ttf; Sun, 16 Apr 2023 08:27:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PzjwD56C9z445R; Sun, 16 Apr 2023 08:27:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681633628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZKLEDZpjqZySQ0GyXa/cbq9cyVI0Me/7K/w5R3jUtMM=; b=V0Kk5NQge7DXbZVYkspVHOd34gjzjvOjJoa6Jl+RCq1/yRlBNytD+90J4Ktln7VpCDAel6 yJntZ1kPc2sOYQmwR1SUb55492xxNGhdNENhrb4l3bmjmD3rs3b8hUtuwCf1XCvORw8Aof xdBp8jXU3DjchIIOnkOqKbgnveBvVoJRuUeZR959zjXP00UYZ9R/ScFo7CFlhlsdoKIxDU pTQj1KhFhoL+CfC+oJaUVxIwml9pYOOVKSW/5NDZt6mIdiDk0WaHPNz8HhFccGI0CYJrZz N2FByqiDJ45kc+jNF62zPnk4r4Udu5YgSpiUxzv0rXXo+l2Ohzq3Et37fiP+rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681633628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZKLEDZpjqZySQ0GyXa/cbq9cyVI0Me/7K/w5R3jUtMM=; b=iuQHs9BMvzTxkupF+VAoGqDvmGr8slsYSeHB51rLmnWO+YdiQXQ4ta0GmOb9qQ+bxPMVA2 NV8BwYVfMVewbZaKnCPAoi9jRDYig4zI7xy7qgRtc2nqLNBw7QqNMuxqWORzQvsvgv0fus VpL18pjtWdJtKRT7FWiJRQN0Irro7GrZssQ8Fwz29os0uuQT8VDiTe4WKoa6pOYwbJ6y+5 92MfepS1N6U26pCJMbvVA1cQ5+7sifau69lfGx5PGzfbJAfbaBapXiI2t10ATyT9xQo+cq xzWAiCTW8xAWzlWX/1NnfldWqdLuPiUlPHoiHQzynA3cF1PLfxr1ekzUA4xW9Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681633628; a=rsa-sha256; cv=none; b=iv530cJm6YWlhqlEU3dkQdowy/FgQs81dLYbjmkpc+TcxepT7Ub/x8ZbVT6YEpffJgbpQw q7xs0Q1Yi+58eRGSUZ6BfZUz+0j2RecJFZEJII5YwTla4LnhiqG/KSxcZY13IM76ORs5vR FPmDFDV+1g5+/JOVZUJ67ZgVwGDX8XjmzF5wKGJoKtgtcZNVceZIogzivJZO1k/bF4gBp4 dnvkqFo8vNjGkl70VjRsiNwxjlLVqw5QfaoEnNYrxb4Tcyslh7bdUlnEZGK89Y5x+lGGZV VsEVibn3TpgAmGc5/F+27GuMv3vhvIkpUoPgRq0TWpG4You9YKW1R1i79y9coQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PzjwD49j7zgCv; Sun, 16 Apr 2023 08:27:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33G8R8Ys074433; Sun, 16 Apr 2023 08:27:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33G8R8j4074432; Sun, 16 Apr 2023 08:27:08 GMT (envelope-from git) Date: Sun, 16 Apr 2023 08:27:08 GMT Message-Id: <202304160827.33G8R8j4074432@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Thierry Thomas Subject: git: 3eb5a6be9e4b - main - benchmarks/imb: upgrade to 2021.3 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: thierry X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3eb5a6be9e4b6c2119ed2753376da7a55bb96e79 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by thierry: URL: https://cgit.FreeBSD.org/ports/commit/?id=3eb5a6be9e4b6c2119ed2753376da7a55bb96e79 commit 3eb5a6be9e4b6c2119ed2753376da7a55bb96e79 Author: Thierry Thomas AuthorDate: 2023-04-16 08:18:59 +0000 Commit: Thierry Thomas CommitDate: 2023-04-16 08:18:59 +0000 benchmarks/imb: upgrade to 2021.3 This port was very outdated: releases notes are available at . The PDF is no more included but the user guide is available at . Also modernize the port and switch from OpenMPI 3 to OpenMPI4 (optiopnal, MPICH still being the default). --- benchmarks/imb/Makefile | 60 ++++++++++++---------- benchmarks/imb/distinfo | 5 +- benchmarks/imb/files/patch-IMB__declare.h | 10 ---- benchmarks/imb/files/patch-make__mpich | 18 ------- benchmarks/imb/files/patch-src__c_P2P_Makefile | 11 ++++ .../imb/files/patch-src__cpp_args__parser.cpp | 24 +++++++++ benchmarks/imb/files/patch-src__cpp_args__parser.h | 10 ++++ benchmarks/imb/pkg-plist | 8 ++- 8 files changed, 88 insertions(+), 58 deletions(-) diff --git a/benchmarks/imb/Makefile b/benchmarks/imb/Makefile index 13228b8fdde8..3f4f1003f58d 100644 --- a/benchmarks/imb/Makefile +++ b/benchmarks/imb/Makefile @@ -1,49 +1,57 @@ -PORTNAME= imb -PORTVERSION= 3.0 -PORTREVISION= 17 +PORTNAME= IMB +DISTVERSIONPREFIX= v +DISTVERSION= 2021.3 CATEGORIES= benchmarks parallel -MASTER_SITES= LOCAL/itetcu \ - http://cache-www.intel.com/cd/00/00/32/71/ -DISTNAME= 327191_327191 -EXTRACT_SUFX= .gz +MASTER_SITES= https://github.com/intel/mpi-benchmarks/archive/refs/tags/ MAINTAINER= ports@FreeBSD.org COMMENT= Intel MPI Benchmark +WWW= https://software.intel.com/en-us/imb-user-guide + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/license/license.txt + +#USE_GITHUB= yes +#GH_ACCOUNT= intel +#GH_PROJECT= mpi-benchmarks + +USES= gmake localbase +BINARY_ALIAS= make=${GMAKE} + +WRKSRC= ${WRKDIR}/mpi-benchmarks-${DISTNAME} -WRKSRC= ${WRKDIR}/IMB_3.0/src/ -USES= dos2unix gmake -MAKEFILE= make_mpich # Intel hardcodes -O3 in make_mpich. Replacing it with system defaults # would make it impossible to compare benchmark results with other systems. # By putting it here we make it easier for somebody to change it, if they # _really_ want it. -CFLAGS= -O3 - -MAKE_JOBS_UNSAFE=yes - -OPTIONS_DEFINE= CHECK_RESULTS DOCS OPENMPI +OPT_CFLAGS= -O3 +CC= ${MPICC} +CXX= ${MPICXX} +CFLAGS+= ${OPT_CFLAGS} ${MPI_CFLAGS} +LDFLAGS+= ${MPI_LIBS} +MAKE_ENV= MPI_HOME=${MPI_HOME} + +OPTIONS_DEFINE= CHECK_RESULTS DOCS +OPTIONS_RADIO= MPI +OPTIONS_RADIO_MPI= MPICH OPENMPI +OPTIONS_DEFAULT= MPICH # Attention: -DCHECK results are not valid as real benchmark data! Don't # forget to deactivate DCHECK and recompile in order to get proper results. CHECK_RESULTS_DESC= Check results (not valid as real benchmark data) CHECK_RESULTS_CFLAGS= -DCHECK -OPENMPI_BUILD_DEPENDS= ${LOCALBASE}/mpi/openmpi3/lib/libmpi.so:net/openmpi3 -OPENMPI_RUN_DEPENDS= ${LOCALBASE}/mpi/openmpi3/bin/mpirun:net/openmpi3 -OPENMPI_MAKE_ENV= MPI_HOME=${LOCALBASE}/mpi/openmpi3 -OPENMPI_BUILD_DEPENDS_OFF= ${LOCALBASE}/bin/mpicc:net/mpich -OPENMPI_RUN_DEPENDS_OFF= ${LOCALBASE}/bin/mpirun:net/mpich -OPENMPI_MAKE_ENV_OFF= MPI_HOME=${LOCALBASE} +MPICH_USES= mpi:mpich +OPENMPI_USES= mpi:openmpi do-install: - (cd ${WRKSRC} && ${INSTALL_PROGRAM} IMB-EXT IMB-IO IMB-MPI1 \ - ${STAGEDIR}${PREFIX}/bin) + (cd ${WRKSRC} && ${INSTALL_PROGRAM} IMB-* ${STAGEDIR}${PREFIX}/bin) do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKDIR}/IMB_3.0/doc/IMB_ug-3.0.pdf ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKDIR}/IMB_3.0/license/license.txt ${STAGEDIR}${DOCSDIR} - ${INSTALL_DATA} ${WRKDIR}/IMB_3.0/license/use-of-trademark-license.txt \ + ${INSTALL_DATA} ${WRKSRC}/ReadMe_IMB.txt ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/license/third-party-programs.txt ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/license/use-of-trademark-license.txt \ ${STAGEDIR}${DOCSDIR} .include diff --git a/benchmarks/imb/distinfo b/benchmarks/imb/distinfo index 984c30bc8835..c9ab740128e0 100644 --- a/benchmarks/imb/distinfo +++ b/benchmarks/imb/distinfo @@ -1,2 +1,3 @@ -SHA256 (327191_327191.gz) = 5014ec12ae5dc05b1373b47b41d26fe518bc41fe5c77899eb400a25dd9c3ec53 -SIZE (327191_327191.gz) = 464188 +TIMESTAMP = 1681570443 +SHA256 (IMB-v2021.3.tar.gz) = 9b58a4a7eef7c0c877513152340948402fd87cb06270d2d81308dc2ef740f4c7 +SIZE (IMB-v2021.3.tar.gz) = 221038 diff --git a/benchmarks/imb/files/patch-IMB__declare.h b/benchmarks/imb/files/patch-IMB__declare.h deleted file mode 100644 index 7dbf858d52e2..000000000000 --- a/benchmarks/imb/files/patch-IMB__declare.h +++ /dev/null @@ -1,10 +0,0 @@ ---- IMB_declare.h.orig 2016-07-27 14:58:51 UTC -+++ IMB_declare.h -@@ -69,7 +69,6 @@ For more documentation than found here, - #include - #include - #include --#include - #include - #include "IMB_appl_errors.h" - #include "IMB_err_check.h" diff --git a/benchmarks/imb/files/patch-make__mpich b/benchmarks/imb/files/patch-make__mpich deleted file mode 100644 index 32b2b1a644b7..000000000000 --- a/benchmarks/imb/files/patch-make__mpich +++ /dev/null @@ -1,18 +0,0 @@ ---- make_mpich.orig 2016-07-27 14:58:51 UTC -+++ make_mpich -@@ -1,5 +1,5 @@ - # Enter root directory of mpich install --MPI_HOME= -+#MPI_HOME= - - MPICC=$(shell find ${MPI_HOME} -name mpicc -print) - -@@ -12,7 +12,7 @@ endif - LIB_PATH = - LIBS = - CC = ${MPI_HOME}/bin/mpicc --OPTFLAGS = -O3 -+OPTFLAGS = ${CFLAGS} - CLINKER = ${CC} - LDFLAGS = - CPPFLAGS = diff --git a/benchmarks/imb/files/patch-src__c_P2P_Makefile b/benchmarks/imb/files/patch-src__c_P2P_Makefile new file mode 100644 index 000000000000..f8884706e99e --- /dev/null +++ b/benchmarks/imb/files/patch-src__c_P2P_Makefile @@ -0,0 +1,11 @@ +--- src_c/P2P/Makefile.orig 2021-10-01 13:09:19 UTC ++++ src_c/P2P/Makefile +@@ -50,7 +50,7 @@ BINARY:=IMB-P2P + TARGET=P2P + BINARY:=IMB-P2P + +-override CFLAGS += -O3 -Wall -Wextra -pedantic -Wno-long-long ++override CFLAGS += -Wall -Wextra -pedantic -Wno-long-long + override LDFLAGS += -lm + + ifeq ($(origin CC),default) diff --git a/benchmarks/imb/files/patch-src__cpp_args__parser.cpp b/benchmarks/imb/files/patch-src__cpp_args__parser.cpp new file mode 100644 index 000000000000..be14a05b618f --- /dev/null +++ b/benchmarks/imb/files/patch-src__cpp_args__parser.cpp @@ -0,0 +1,24 @@ +--- src_cpp/args_parser.cpp.orig 2021-10-01 13:09:19 UTC ++++ src_cpp/args_parser.cpp +@@ -299,7 +299,7 @@ void args_parser::print_help_advice() const { + #endif + + void args_parser::print_help_advice() const { +- sout << "Try \"" << basename(argv[0]) << " " << option_starter << "help\" for usage information" << endl; ++ sout << "Try \"" << basename(const_cast(argv[0])) << " " << option_starter << "help\" for usage information" << endl; + } + + // NOTE: This one is just to loop over expected_args 2-level array in a easier way. +@@ -381,10 +381,10 @@ void args_parser::print_help() const { + void args_parser::print_help() const { + if (program_name.size() != 0) + sout << program_name << endl; +- sout << "Usage: " << basename(argv[0]) << " "; ++ sout << "Usage: " << basename(const_cast(argv[0])) << " "; + string header; + header += "Usage: "; +- header += basename(argv[0]); ++ header += basename(const_cast(argv[0])); + header += " "; + size_t size = min(header.size(), (size_t)16); + string tab(size - 2, ' '); diff --git a/benchmarks/imb/files/patch-src__cpp_args__parser.h b/benchmarks/imb/files/patch-src__cpp_args__parser.h new file mode 100644 index 000000000000..ac6df75e7c84 --- /dev/null +++ b/benchmarks/imb/files/patch-src__cpp_args__parser.h @@ -0,0 +1,10 @@ +--- src_cpp/args_parser.h.orig 2021-10-01 13:09:19 UTC ++++ src_cpp/args_parser.h +@@ -52,6 +52,7 @@ goods and services. + #include + #include + #include ++#include + #include + #include + #include diff --git a/benchmarks/imb/pkg-plist b/benchmarks/imb/pkg-plist index 31993f2563ad..36506631b8d1 100644 --- a/benchmarks/imb/pkg-plist +++ b/benchmarks/imb/pkg-plist @@ -1,6 +1,10 @@ bin/IMB-EXT bin/IMB-IO bin/IMB-MPI1 -%%PORTDOCS%%%%DOCSDIR%%/IMB_ug-3.0.pdf -%%PORTDOCS%%%%DOCSDIR%%/license.txt +bin/IMB-MT +bin/IMB-NBC +bin/IMB-P2P +bin/IMB-RMA +%%PORTDOCS%%%%DOCSDIR%%/ReadMe_IMB.txt +%%PORTDOCS%%%%DOCSDIR%%/third-party-programs.txt %%PORTDOCS%%%%DOCSDIR%%/use-of-trademark-license.txt