svn commit: r480184 - in head/math: . libxsmm libxsmm/files
Yuri Victorovich
yuri at FreeBSD.org
Thu Sep 20 17:44:49 UTC 2018
Author: yuri
Date: Thu Sep 20 17:44:47 2018
New Revision: 480184
URL: https://svnweb.freebsd.org/changeset/ports/480184
Log:
New port: math/libxsmm: Library for dense and sparse matrix operations and deep learning
Added:
head/math/libxsmm/
head/math/libxsmm/Makefile (contents, props changed)
head/math/libxsmm/distinfo (contents, props changed)
head/math/libxsmm/files/
head/math/libxsmm/files/patch-Makefile (contents, props changed)
head/math/libxsmm/files/patch-Makefile.inc (contents, props changed)
head/math/libxsmm/pkg-descr (contents, props changed)
head/math/libxsmm/pkg-plist (contents, props changed)
Modified:
head/math/Makefile
Modified: head/math/Makefile
==============================================================================
--- head/math/Makefile Thu Sep 20 17:25:40 2018 (r480183)
+++ head/math/Makefile Thu Sep 20 17:44:47 2018 (r480184)
@@ -321,6 +321,7 @@
SUBDIR += libtsnnls
SUBDIR += libxls
SUBDIR += libxlsxwriter
+ SUBDIR += libxsmm
SUBDIR += linpack
SUBDIR += lll_spect
SUBDIR += lp_solve
Added: head/math/libxsmm/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/Makefile Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+PORTNAME= libxsmm
+DISTVERSION= 1.9
+CATEGORIES= math science
+
+MAINTAINER= yuri at FreeBSD.org
+COMMENT= Library for dense and sparse matrix operations and deep learning
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE.md
+
+BROKEN_i386= LIBXSMM is only supported on a 64-bit platform!
+
+BUILD_DEPENDS= bash:shells/bash
+
+USES= fortran gmake localbase:ldflags python:build shebangfix
+SHEBANG_GLOB= *.sh
+USE_GITHUB= yes
+GH_ACCOUNT= hfp
+USE_LDCONFIG= yes
+
+MAKE_ARGS= STATIC=0 DEPSTATIC=0 MAKE_PARALLEL=1
+LDFLAGS+= -lm
+
+BINARY_ALIAS= python=${PYTHON_CMD}
+
+.include <bsd.port.mk>
Added: head/math/libxsmm/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/distinfo Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1537456119
+SHA256 (hfp-libxsmm-1.9_GH0.tar.gz) = cd8532021352b4a0290d209f7f9bfd7c2411e08286a893af3577a43457287bfa
+SIZE (hfp-libxsmm-1.9_GH0.tar.gz) = 1881825
Added: head/math/libxsmm/files/patch-Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/files/patch-Makefile Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,29 @@
+--- Makefile.orig 2018-03-15 13:08:45 UTC
++++ Makefile
+@@ -398,7 +398,7 @@ endif
+ lib: headers drytest lib_hst lib_mic
+
+ .PHONY: all
+-all: libxsmm samples
++all: libxsmm
+
+ .PHONY: headers
+ headers: cheader cheader_only fheader
+@@ -1502,7 +1502,7 @@ realclean-all: realclean
+
+ # Dummy prefix
+ ifneq (,$(strip $(PREFIX)))
+-INSTALL_ROOT = $(PREFIX)
++INSTALL_ROOT = $(DESTDIR)$(PREFIX)
+ else
+ INSTALL_ROOT = .
+ endif
+@@ -1581,7 +1581,7 @@ ifneq ($(abspath $(INSTALL_ROOT)),$(absp
+ endif
+
+ .PHONY: install-all
+-install-all: install samples
++install-all: install
+ ifneq ($(abspath $(INSTALL_ROOT)),$(abspath .))
+ @echo
+ @echo "LIBXSMM installing samples..."
Added: head/math/libxsmm/files/patch-Makefile.inc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/files/patch-Makefile.inc Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,26 @@
+--- Makefile.inc.orig 2018-03-15 13:08:45 UTC
++++ Makefile.inc
+@@ -53,9 +53,9 @@ MAKE ?= make
+ ENV ?= env
+
+ ifneq (Darwin,$(UNAME))
+- ifneq (,$(strip $(CP)))
+- CP += -u
+- endif
++ #ifneq (,$(strip $(CP)))
++ # CP += -u
++ #endif
+ DLIBEXT ?= so
+ SLIBEXT ?= a
+ else
+@@ -164,8 +164,8 @@ TBB_OLDRTL ?= 0
+ ifneq (Darwin,$(UNAME))
+ XGROUP_BEGIN = -Wl,--start-group
+ XGROUP_END = -Wl,--end-group
+- XLIB_BEGIN = -Wl,--as-needed
+- XLIB_END = -Wl,--no-as-needed
++ #XLIB_BEGIN = -Wl,--as-needed
++ #XLIB_END = -Wl,--no-as-needed
+ XRPATH = -Wl,--rpath=$(NULL)
+ else
+ XRPATH = -Xlinker -rpath -Xlinker $(NULL)
Added: head/math/libxsmm/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/pkg-descr Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,18 @@
+LIBXSMM is a library for specialized dense and sparse matrix operations as well
+as for deep learning primitives such as small convolutions targeting Intel
+Architecture. Small matrix multiplication kernels (SMMs) are generated for Intel
+SSE, Intel AVX, Intel AVX2, IMCI (KNCni) for Intel Xeon Phi coprocessors (KNC),
+and Intel AVX-512 as found in the Intel Xeon Phi processor family (KNL, KNM) and
+Intel Xeon processors (SKX). Highly optimized code for small convolutions is
+targeting Intel AVX2 and Intel AVX-512, whereas other targets can automatically
+leverage specialized SMMs to perform convolutions.
+
+The library supports statically generated code at configuration time (SMMs),
+uses optimized code paths based on compiler-generated code as well as Intrinsic
+functions, but mainly utilizes Just-In-Time (JIT) code specialization for
+compiler-independent performance (matrix multiplications, matrix transpose/copy,
+sparse functionality, and small convolutions). LIBXSMM is suitable for "build
+once and deploy everywhere" i.e., no special target flags are needed to exploit
+the available performance.
+
+WWW: https://github.com/hfp/libxsmm
Added: head/math/libxsmm/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/libxsmm/pkg-plist Thu Sep 20 17:44:47 2018 (r480184)
@@ -0,0 +1,57 @@
+bin/libxsmm_conv_generator
+bin/libxsmm_convwino_generator
+bin/libxsmm_gemm_generator
+include/libxsmm.f
+include/libxsmm.h
+include/libxsmm.mod
+include/libxsmm_bgemm.h
+include/libxsmm_config.h
+include/libxsmm_cpuid.h
+include/libxsmm_dnn.h
+include/libxsmm_frontend.h
+include/libxsmm_fsspmdm.h
+include/libxsmm_generator.h
+include/libxsmm_intrinsics_x86.h
+include/libxsmm_macros.h
+include/libxsmm_malloc.h
+include/libxsmm_math.h
+include/libxsmm_mhd.h
+include/libxsmm_source.h
+include/libxsmm_spmdm.h
+include/libxsmm_sync.h
+include/libxsmm_timer.h
+include/libxsmm_typedefs.h
+lib/libxsmm.so
+lib/libxsmm.so.1
+lib/libxsmm.so.1.9.0
+lib/libxsmmext.so
+lib/libxsmmext.so.1
+lib/libxsmmext.so.1.9.0
+lib/libxsmmf.so
+lib/libxsmmf.so.1
+lib/libxsmmf.so.1.9.0
+lib/libxsmmgen.so
+lib/libxsmmgen.so.1
+lib/libxsmmgen.so.1.9.0
+lib/libxsmmnoblas.so
+lib/libxsmmnoblas.so.1
+lib/libxsmmnoblas.so.1.9.0
+%%DATADIR%%/CODE_OF_CONDUCT.md
+%%DATADIR%%/CONTRIBUTING.md
+%%DATADIR%%/LICENSE.md
+%%DATADIR%%/README.md
+%%DATADIR%%/cp2k.md
+%%DATADIR%%/cp2k.pdf
+%%DATADIR%%/index.md
+%%DATADIR%%/libxsmm.pdf
+%%DATADIR%%/libxsmm_aux.md
+%%DATADIR%%/libxsmm_be.md
+%%DATADIR%%/libxsmm_dnn.md
+%%DATADIR%%/libxsmm_mm.md
+%%DATADIR%%/libxsmm_prof.md
+%%DATADIR%%/libxsmm_samples.md
+%%DATADIR%%/libxsmm_samples.pdf
+%%DATADIR%%/libxsmm_tune.md
+%%DATADIR%%/tensorflow.md
+%%DATADIR%%/tensorflow.pdf
+%%DATADIR%%/version.txt
More information about the svn-ports-head
mailing list