aboutsummaryrefslogtreecommitdiff
path: root/benchmarks
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2006-11-20 21:26:53 +0000
committerMartin Wilke <miwi@FreeBSD.org>2006-11-20 21:26:53 +0000
commit9942a5389f3add6b9b852fc1cc715a2bc0caf347 (patch)
tree6f19440f5284c7eb1a764630f89cc713972f9710 /benchmarks
parentf298e44adbf9e13b76301d0c43f849171e23627c (diff)
downloadports-9942a5389f3add6b9b852fc1cc715a2bc0caf347.tar.gz
ports-9942a5389f3add6b9b852fc1cc715a2bc0caf347.zip
The idea of IMB is to provide a concise set of elementary MPI
benchmark kernels. With one executable, all of the supported benchmarks, or a subset specified by the command line, can be run. The rules, such as time measurement (including a repetitive call of the kernels for better clock synchronization), message lengths, selection of communicators to run a particular benchmark (inside the group of all started processes) are program parameters. WWW: http://www.intel.com/cd/software/products/asmo-na/eng/cluster/mpi/219848.htm PR: ports/105665 Submitted by: trasz <trasz at pin.if.uz.zgora.pl>
Notes
Notes: svn path=/head/; revision=177693
Diffstat (limited to 'benchmarks')
-rw-r--r--benchmarks/Makefile1
-rw-r--r--benchmarks/imb/Makefile63
-rw-r--r--benchmarks/imb/distinfo3
-rw-r--r--benchmarks/imb/files/patch-src-IMB_declare.h10
-rw-r--r--benchmarks/imb/files/patch-src-make_mpich18
-rw-r--r--benchmarks/imb/pkg-descr9
-rw-r--r--benchmarks/imb/pkg-plist7
7 files changed, 111 insertions, 0 deletions
diff --git a/benchmarks/Makefile b/benchmarks/Makefile
index 375fb197a534..47e4e3611833 100644
--- a/benchmarks/Makefile
+++ b/benchmarks/Makefile
@@ -16,6 +16,7 @@
SUBDIR += himenobench
SUBDIR += hpl
SUBDIR += httperf
+ SUBDIR += imb
SUBDIR += iozone
SUBDIR += iozone21
SUBDIR += iperf
diff --git a/benchmarks/imb/Makefile b/benchmarks/imb/Makefile
new file mode 100644
index 000000000000..f4a20d8225e3
--- /dev/null
+++ b/benchmarks/imb/Makefile
@@ -0,0 +1,63 @@
+# New ports collection makefile for: imb
+# Date created: 2006-11-19
+# Whom: trasz <trasz@pin.if.uz.zgora.pl>
+#
+# $FreeBSD$
+#
+
+PORTNAME= imb
+PORTVERSION= 3.0
+CATEGORIES= benchmarks parallel
+MASTER_SITES= ${MASTER_SITE_LOCAL} \
+ http://cache-www.intel.com/cd/00/00/32/71/
+MASTER_SITE_SUBDIR= itetcu
+DISTNAME= 327191_327191
+EXTRACT_SUFX= .gz
+
+MAINTAINER= trasz@pin.if.uz.zgora.pl
+COMMENT= Intel MPI Benchmark
+
+WRKSRC= ${WRKDIR}/IMB_3.0/src/
+USE_GMAKE= yes
+MAKEFILE= make_mpich
+ALL_TARGET= all
+# 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
+
+# Attention: -DCHECK results are not valid as real benchmark data! Don't
+# forget to deactivate DCHECK and recompile in order to get proper results.
+.if defined(CHECK_RESULTS)
+CFLAGS+= -DCHECK
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if exists(${LOCALBASE}/mpi/openmpi/bin/mpirun)
+WITH_OPENMPI= yes
+.endif
+
+.if defined(WITH_OPENMPI)
+BUILD_DEPENDS= ${LOCALBASE}/mpi/openmpi/lib/libmpi.so:${PORTSDIR}/net/openmpi
+RUN_DEPENDS= ${LOCALBASE}/mpi/openmpi/bin/mpirun:${PORTSDIR}/net/openmpi
+MAKE_ENV= MPI_HOME=${LOCALBASE}/mpi/openmpi
+.else
+BUILD_DEPENDS= ${LOCALBASE}/mpich2/bin/mpicc:${PORTSDIR}/net/mpich2
+RUN_DEPENDS= ${LOCALBASE}/mpich2/bin/mpirun:${PORTSDIR}/net/mpich2
+MAKE_ENV= MPI_HOME=${LOCALBASE}/mpich2
+.endif
+
+do-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/IMB_3.0/doc/IMB_ug-3.0.pdf ${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/IMB_3.0/license/license.txt ${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/IMB_3.0/license/use-of-trademark-license.txt ${DOCSDIR}
+.endif
+ ${INSTALL_PROGRAM} ${WRKSRC}/IMB-EXT ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/IMB-IO ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/IMB-MPI1 ${PREFIX}/bin
+
+.include <bsd.port.post.mk>
diff --git a/benchmarks/imb/distinfo b/benchmarks/imb/distinfo
new file mode 100644
index 000000000000..20ff2bd42ea4
--- /dev/null
+++ b/benchmarks/imb/distinfo
@@ -0,0 +1,3 @@
+MD5 (327191_327191.gz) = 4e65d46aaf30d12cdeaf898df5693cdc
+SHA256 (327191_327191.gz) = 5014ec12ae5dc05b1373b47b41d26fe518bc41fe5c77899eb400a25dd9c3ec53
+SIZE (327191_327191.gz) = 464188
diff --git a/benchmarks/imb/files/patch-src-IMB_declare.h b/benchmarks/imb/files/patch-src-IMB_declare.h
new file mode 100644
index 000000000000..c559a7ab49b9
--- /dev/null
+++ b/benchmarks/imb/files/patch-src-IMB_declare.h
@@ -0,0 +1,10 @@
+--- IMB_declare.h.orig Sun Nov 19 13:48:20 2006
++++ IMB_declare.h Sun Nov 19 13:48:36 2006
+@@ -69,7 +69,6 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include <malloc.h>
+ #include <stddef.h>
+ #include "IMB_appl_errors.h"
+ #include "IMB_err_check.h"
diff --git a/benchmarks/imb/files/patch-src-make_mpich b/benchmarks/imb/files/patch-src-make_mpich
new file mode 100644
index 000000000000..642845687643
--- /dev/null
+++ b/benchmarks/imb/files/patch-src-make_mpich
@@ -0,0 +1,18 @@
+--- make_mpich.orig Thu Jun 22 09:43:10 2006
++++ make_mpich Sun Nov 19 14:11:11 2006
+@@ -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 @@
+ LIB_PATH =
+ LIBS =
+ CC = ${MPI_HOME}/bin/mpicc
+-OPTFLAGS = -O3
++OPTFLAGS = ${CFLAGS}
+ CLINKER = ${CC}
+ LDFLAGS =
+ CPPFLAGS =
diff --git a/benchmarks/imb/pkg-descr b/benchmarks/imb/pkg-descr
new file mode 100644
index 000000000000..4b2da053a658
--- /dev/null
+++ b/benchmarks/imb/pkg-descr
@@ -0,0 +1,9 @@
+The idea of IMB is to provide a concise set of elementary MPI
+benchmark kernels. With one executable, all of the supported
+benchmarks, or a subset specified by the command line, can be run.
+The rules, such as time measurement (including a repetitive call
+of the kernels for better clock synchronization), message lengths,
+selection of communicators to run a particular benchmark (inside
+the group of all started processes) are program parameters.
+
+WWW: http://www.intel.com/cd/software/products/asmo-na/eng/cluster/mpi/219848.htm
diff --git a/benchmarks/imb/pkg-plist b/benchmarks/imb/pkg-plist
new file mode 100644
index 000000000000..5594b531142e
--- /dev/null
+++ b/benchmarks/imb/pkg-plist
@@ -0,0 +1,7 @@
+bin/IMB-EXT
+bin/IMB-IO
+bin/IMB-MPI1
+%%PORTDOCS%%%%DOCSDIR%%/IMB_ug-3.0.pdf
+%%PORTDOCS%%%%DOCSDIR%%/license.txt
+%%PORTDOCS%%%%DOCSDIR%%/use-of-trademark-license.txt
+%%PORTDOCS%%@dirrm %%DOCSDIR%%