mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-24 00:45:52 +00:00
RAMspeed is a command line utility to measure cache and memory performance of
computer systems. It offers 18 cache and memory benchmarks for i386 and amd64 machines, though 6 only for alpha ones. There are *mark benchmarks such as INTmark, FLOATmark, MMXmark and SSEmark. They operate with linear (sequential) data streams passed through ALU, FPU, MMX and SSE units respectively. There are also *mem benchmarks such as INTmem, FLOATmem, MMXmem and SSEmem. These are supposed to illustrate how fast is actual read/write memory performance. There are also non-temporal versions of MMX and SSE benchmarks. They have been coded with special instructions to minimise cache pollution on memory reads and to eliminate it completely on memory writes. In addition, they operate with a built in aggressive data prefetching algorithm. In some cases, non-temporal MMXmark and SSEmark can deliver almost 100% of theoretical bandwidth while reading. WWW: http://alasir.com/software/ramspeed/ PR: ports/186108 Submitted by: Martin Kammerhofer <mkamm@gmx.net>
This commit is contained in:
parent
9283ec7f2a
commit
97fe3ab28b
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=341993
@ -58,6 +58,7 @@
|
||||
SUBDIR += postmark
|
||||
SUBDIR += pybench
|
||||
SUBDIR += raidtest
|
||||
SUBDIR += ramspeed
|
||||
SUBDIR += randomio
|
||||
SUBDIR += rubygem-railsbench
|
||||
SUBDIR += scimark2
|
||||
|
29
benchmarks/ramspeed/Makefile
Normal file
29
benchmarks/ramspeed/Makefile
Normal file
@ -0,0 +1,29 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= ramspeed
|
||||
PORTVERSION= 3.5.0
|
||||
CATEGORIES= benchmarks
|
||||
MASTER_SITES= http://www.alasir.com/software/ramspeed/
|
||||
DISTNAME= ramsmp-${PORTVERSION}
|
||||
|
||||
MAINTAINER= mkamm@gmx.net
|
||||
COMMENT= Cache and memory benchmarking tool
|
||||
|
||||
NO_CDROM= do not sell for money
|
||||
LICENSE= ALASIR
|
||||
LICENSE_NAME= Alasir Licence
|
||||
LICENSE_FILE= ${WRKSRC}/LICENCE
|
||||
LICENSE_PERMS= dist-mirror no-dist-sell pkg-mirror no-pkg-sell
|
||||
|
||||
PLIST_FILES= bin/ramspeed
|
||||
PORTDOCS= HISTORY README
|
||||
|
||||
do-build:
|
||||
cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${SH} build.sh
|
||||
|
||||
do-install:
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/ramsmp ${STAGEDIR}${PREFIX}/bin/ramspeed
|
||||
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|g} ${STAGEDIR}${DOCSDIR}
|
||||
|
||||
.include <bsd.port.mk>
|
2
benchmarks/ramspeed/distinfo
Normal file
2
benchmarks/ramspeed/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (ramsmp-3.5.0.tar.gz) = 39fb15493fb3c293575746d56f6ab9faaa1d876d8b1f0d8e5a4042d2ace95839
|
||||
SIZE (ramsmp-3.5.0.tar.gz) = 79481
|
56
benchmarks/ramspeed/files/patch-build.sh
Normal file
56
benchmarks/ramspeed/files/patch-build.sh
Normal file
@ -0,0 +1,56 @@
|
||||
--- build.sh.orig 2007-11-01 22:00:00.000000000 +0100
|
||||
+++ build.sh 2014-01-25 19:53:28.000000000 +0100
|
||||
@@ -15,6 +15,16 @@
|
||||
if [ "$1" ]; then OS=$1; fi
|
||||
if [ "$2" ]; then ARCH=$2; fi
|
||||
|
||||
+# respect the user's options patch here
|
||||
+echo " "
|
||||
+echo "=== this is RAMspeed's build script ===================================="
|
||||
+echo " "
|
||||
+if [ -n "$CC" -a \( -n "$LD" -o -n "$AS" -o -n "$CFLAGS" -o -n "$LDFLAGS" \) ]
|
||||
+then
|
||||
+ _CC=$CC;_LD=$LD;_AS=$AS;_CFLAGS=$CFLAGS;_LDFLAGS=$LDFLAGS;_respect=yes
|
||||
+fi
|
||||
+# end of patch
|
||||
+
|
||||
case $OS in
|
||||
|
||||
FreeBSD)
|
||||
@@ -127,10 +137,20 @@
|
||||
esac
|
||||
|
||||
echo "building for $OS $RELEASE $ARCH"
|
||||
-echo "compiler is $CC, linker is $LD, assembler is $AS"
|
||||
-echo "compiler's flags are $CFLAGS"
|
||||
-echo "linker's flags are $LFLAGS"
|
||||
+echo "compiler is '$CC', linker is '$LD', assembler is '$AS'"
|
||||
+echo "compiler's flags are '$CFLAGS'"
|
||||
+echo "linker's flags are '$LFLAGS'"
|
||||
echo " "
|
||||
+# respect the user's options patch here
|
||||
+if [ X"$_respect" = Xyes ] ; then
|
||||
+ CC=$_CC;LD=$_CC;AS=${_AS:-$AS};CFLAGS=$_CFLAGS;LFLAGS=$_LDFLAGS
|
||||
+ echo "OVERRIDING build script defaults with your system's defaults:"
|
||||
+ echo "compiler is '$CC', linker is '$LD', assembler is '$AS'"
|
||||
+ echo "compiler's flags are '$CFLAGS'"
|
||||
+ echo "linker's flags are '$LFLAGS'"
|
||||
+ echo " "
|
||||
+fi
|
||||
+# end of patch
|
||||
|
||||
if [ $TARGET = "GENERIC" ]
|
||||
then echo "WARNING! BUILDING FOR AN UNSUPPORTED OPERATING SYSTEM AND\OR ARCHITECTURE!"
|
||||
@@ -139,8 +159,10 @@
|
||||
echo " "
|
||||
fi
|
||||
|
||||
-echo "press Enter to continue or Control-C to abort"
|
||||
-read ANS
|
||||
+if [ X"$_respect" != Xyes -a -t 0 -a -t 1 ] ; then
|
||||
+ echo "press Enter to continue or Control-C to abort"
|
||||
+ read ANS
|
||||
+fi
|
||||
|
||||
case $TARGET in
|
||||
|
15
benchmarks/ramspeed/pkg-descr
Normal file
15
benchmarks/ramspeed/pkg-descr
Normal file
@ -0,0 +1,15 @@
|
||||
RAMspeed is a command line utility to measure cache and memory performance of
|
||||
computer systems. It offers 18 cache and memory benchmarks for i386 and amd64
|
||||
machines, though 6 only for alpha ones. There are *mark benchmarks such as
|
||||
INTmark, FLOATmark, MMXmark and SSEmark. They operate with linear (sequential)
|
||||
data streams passed through ALU, FPU, MMX and SSE units respectively.
|
||||
There are also *mem benchmarks such as INTmem, FLOATmem, MMXmem and SSEmem.
|
||||
These are supposed to illustrate how fast is actual read/write memory
|
||||
performance. There are also non-temporal versions of MMX and SSE benchmarks.
|
||||
They have been coded with special instructions to minimise cache pollution on
|
||||
memory reads and to eliminate it completely on memory writes. In addition, they
|
||||
operate with a built in aggressive data prefetching algorithm. In some cases,
|
||||
non-temporal MMXmark and SSEmark can deliver almost 100% of theoretical
|
||||
bandwidth while reading.
|
||||
|
||||
WWW: http://alasir.com/software/ramspeed/
|
Loading…
Reference in New Issue
Block a user