svn commit: r382863 - in head/benchmarks: . smhasher smhasher/files
George Neville-Neil
gnn at neville-neil.com
Tue Mar 31 20:28:42 UTC 2015
For the record. This port includes patches from Jim Thompson.
Best,
George
On 31 Mar 2015, at 15:25, George V. Neville-Neil wrote:
> Author: gnn
> Date: Tue Mar 31 20:25:23 2015
> New Revision: 382863
> URL: https://svnweb.freebsd.org/changeset/ports/382863
> QAT: https://qat.redports.org/buildarchive/r382863/
>
> Log:
> Add SMHasher hashing benchmark and test system as a new port.
>
> SMHasher is a test suite designed to test the distribution, collision,
> and performance properties of non-cryptographic hash functions -
> it aims to be the "DieHarder" of hash testing, and does a pretty
> good job of finding flaws with a number of popular hashes.
>
> The SMHasher suite also includes MurmurHash3, which is the latest
> version in the series of MurmurHash functions - the new version is
> faster, more robust, and its variants can produce 32- and 128-bit
> hash values efficiently on both x86 and x64 platforms.
>
> https://code.google.com/p/smhasher/
>
> Added:
> head/benchmarks/smhasher/
> head/benchmarks/smhasher/Makefile (contents, props changed)
> head/benchmarks/smhasher/distinfo (contents, props changed)
> head/benchmarks/smhasher/files/
> head/benchmarks/smhasher/files/patch-smhasher-Platform.cpp
> (contents, props changed)
> head/benchmarks/smhasher/files/patch-smhasher-Platform.h (contents,
> props changed)
> head/benchmarks/smhasher/pkg-descr (contents, props changed)
> Modified:
> head/benchmarks/Makefile
>
> Modified: head/benchmarks/Makefile
> ==============================================================================
> --- head/benchmarks/Makefile Tue Mar 31 20:16:05 2015 (r382862)
> +++ head/benchmarks/Makefile Tue Mar 31 20:25:23 2015 (r382863)
> @@ -66,6 +66,7 @@
> SUBDIR += siege
> SUBDIR += sipp
> SUBDIR += slowloris
> + SUBDIR += smhasher
> SUBDIR += spp
> SUBDIR += stream
> SUBDIR += super-smack
>
> Added: head/benchmarks/smhasher/Makefile
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/benchmarks/smhasher/Makefile Tue Mar 31 20:25:23
> 2015 (r382863)
> @@ -0,0 +1,26 @@
> +# Created by: gnn
> +# $FreeBSD$
> +
> +PORTNAME= smhasher
> +PORTVERSION= 1.0
> +PORTREVISION= 1
> +CATEGORIES= benchmarks
> +
> +MAINTAINER= gnn at FreeBSD.org
> +COMMENT= Hash Algorithm Benchmarking
> +
> +LICENSE= MIT
> +
> +USE_GITHUB= yes
> +GH_ACCOUNT= gvnn3
> +GH_PROJECT= smhasher
> +DISTVERSIONPREFIX= v
> +
> +USES= cmake
> +
> +PLIST_FILES= bin/SMHasher
> +
> +do-install:
> + ${INSTALL_PROGRAM} ${WRKSRC}/SMHasher ${STAGEDIR}${PREFIX}/bin
> +
> +.include <bsd.port.mk>
>
> Added: head/benchmarks/smhasher/distinfo
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/benchmarks/smhasher/distinfo Tue Mar 31 20:25:23
> 2015 (r382863)
> @@ -0,0 +1,2 @@
> +SHA256 (smhasher-v1.0_GH0.tar.gz) =
> cd40a370b59446a4a70be0a6399bd9df4944adf6c1854c23dc0ff61fa7011e76
> +SIZE (smhasher-v1.0_GH0.tar.gz) = 61909
>
> Added: head/benchmarks/smhasher/files/patch-smhasher-Platform.cpp
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/benchmarks/smhasher/files/patch-smhasher-Platform.cpp Tue Mar
> 31 20:25:23 2015 (r382863)
> @@ -0,0 +1,41 @@
> +--- Platform.cpp 2015-03-30 17:26:46.000000000 -0400
> ++++ Platform.cpp.new 2015-03-30 17:26:56.000000000 -0400
> +@@ -19,6 +19,38 @@
> + SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_HIGHEST);
> + }
> +
> ++#elif __FreeBSD__
> ++
> ++#include <string.h>
> ++#include <errno.h>
> ++#include <sys/types.h>
> ++#include <sys/param.h>
> ++#include <sys/cpuset.h>
> ++
> ++void
> ++SetAffinity(int cpu)
> ++{
> ++ cpuset_t mask;
> ++ unsigned int i;
> ++
> ++ fprintf(stdout, "SetAffinity called with arg %d\n", cpu);
> ++
> ++ CPU_ZERO(&mask);
> ++ i = 0;
> ++ do {
> ++ if (cpu & 1) {
> ++ CPU_SET(i, &mask);
> ++ }
> ++ i++;
> ++ cpu >>= 1;
> ++ } while (cpu);
> ++
> ++ if (cpuset_setaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, -1,
> sizeof(cpuset_t), &mask) == -1)
> ++ {
> ++ fprintf(stderr, "SetAffinity() failed. %s",
> strerror(errno));
> ++ }
> ++}
> ++
> + #else
> +
> + #include <sched.h>
>
> Added: head/benchmarks/smhasher/files/patch-smhasher-Platform.h
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/benchmarks/smhasher/files/patch-smhasher-Platform.h Tue Mar
> 31 20:25:23 2015 (r382863)
> @@ -0,0 +1,12 @@
> +--- Platform.h 2015-03-30 17:28:57.000000000 -0400
> ++++ Platform.h.new 2015-03-30 17:28:51.000000000 -0400
> +@@ -39,6 +39,9 @@
> + #else // defined(_MSC_VER)
> +
> + #include <stdint.h>
> ++#if defined(__FreeBSD__)
> ++#include <stdlib.h>
> ++#endif
> +
> + #define FORCE_INLINE inline __attribute__((always_inline))
> + #define NEVER_INLINE __attribute__((noinline))
>
> Added: head/benchmarks/smhasher/pkg-descr
> ==============================================================================
> --- /dev/null 00:00:00 1970 (empty, because file is newly added)
> +++ head/benchmarks/smhasher/pkg-descr Tue Mar 31 20:25:23
> 2015 (r382863)
> @@ -0,0 +1,4 @@
> +SMHasher is a test suite designed to test the distribution,
> collision,
> +and performance properties of non-cryptographic hash functions - it
> +aims to be the "DieHarder" of hash testing, and does a pretty good
> job
> +of finding flaws with a number of popular hashes.
More information about the svn-ports-all
mailing list