svn commit: r457842 - in head/devel: . inastemp inastemp/files
Yuri Victorovich
yuri at FreeBSD.org
Tue Jan 2 10:41:25 UTC 2018
Author: yuri
Date: Tue Jan 2 10:41:23 2018
New Revision: 457842
URL: https://svnweb.freebsd.org/changeset/ports/457842
Log:
New port: devel/inastemp: C++ library to use SIMD vectorization
Submitted by: myself
Approved by: tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D13703
Added:
head/devel/inastemp/
head/devel/inastemp/Makefile (contents, props changed)
head/devel/inastemp/distinfo (contents, props changed)
head/devel/inastemp/files/
head/devel/inastemp/files/patch-CMakeLists.txt (contents, props changed)
head/devel/inastemp/files/patch-Src_CMakeLists.txt (contents, props changed)
head/devel/inastemp/pkg-descr (contents, props changed)
head/devel/inastemp/pkg-plist (contents, props changed)
Modified:
head/devel/Makefile
Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile Tue Jan 2 10:39:22 2018 (r457841)
+++ head/devel/Makefile Tue Jan 2 10:41:23 2018 (r457842)
@@ -1196,6 +1196,7 @@
SUBDIR += icu-lx
SUBDIR += idutils
SUBDIR += imake
+ SUBDIR += inastemp
SUBDIR += include-what-you-use
SUBDIR += inifiled
SUBDIR += inilib
Added: head/devel/inastemp/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/Makefile Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+PORTNAME= inastemp
+DISTVERSION= 0.2.4
+CATEGORIES= devel
+MASTER_SITES= https://gitlab.mpcdf.mpg.de/bbramas/${PORTNAME}/repository/${DISTVERSION}/archive.tar.gz?ref=v${PORTVERSION}&dummy=/
+
+MAINTAINER= yuri at FreeBSD.org
+COMMENT= C++ library to use SIMD vectorization
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= cmake:outsource
+NO_ARCH= yes
+CMAKE_ARGS= -DINASTEMP_DO_INSTALL:BOOL=ON \
+ -DINASTEMP_JUST_LIB:BOOL=ON
+
+post-extract:
+ @${MV} ${WRKDIR}/${PORTNAME}-* ${WRKSRC}
+
+.include <bsd.port.mk>
Added: head/devel/inastemp/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/distinfo Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1514683011
+SHA256 (inastemp-0.2.4.tar.gz) = ee9b7dc7f23698cbe35fa0d5567a4f955f633a788e66b273d0961968a5eacf49
+SIZE (inastemp-0.2.4.tar.gz) = 233546
Added: head/devel/inastemp/files/patch-CMakeLists.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/files/patch-CMakeLists.txt Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig 2017-12-31 01:19:25 UTC
++++ CMakeLists.txt
+@@ -288,7 +288,7 @@ configure_file(${INASTEMP_SOURCE_DIR}/CM
+ @ONLY IMMEDIATE
+ )
+ if(INASTEMP_DO_INSTALL)
+- install(FILES ${INASTEMP_BINARY_DIR}/InastempInfo.cmake DESTINATION lib/ )
++ install(FILES ${INASTEMP_BINARY_DIR}/InastempInfo.cmake DESTINATION lib/cmake )
+ endif()
+
+ if(INASTEMP_AS_SUBPROJECT)
Added: head/devel/inastemp/files/patch-Src_CMakeLists.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/files/patch-Src_CMakeLists.txt Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,19 @@
+--- Src/CMakeLists.txt.orig 2017-12-31 01:18:23 UTC
++++ Src/CMakeLists.txt
+@@ -20,7 +20,7 @@ file(
+ FOREACH(hpp_file ${hpp_in_dir})
+ file(RELATIVE_PATH relative_hpp_file ${CMAKE_CURRENT_SOURCE_DIR} ${hpp_file})
+ if(INASTEMP_DO_INSTALL)
+- INSTALL( FILES ${hpp_file} DESTINATION include/${relative_hpp_file} )
++ INSTALL( FILES ${hpp_file} DESTINATION include/inastemp/${relative_hpp_file} )
+ endif()
+
+ if($ENV{VERBOSE})
+@@ -29,6 +29,6 @@ FOREACH(hpp_file ${hpp_in_dir})
+ ENDFOREACH()
+
+ if(INASTEMP_DO_INSTALL)
+- INSTALL( FILES "${INASTEMP_BINARY_DIR}/Src/InastempConfig.h" DESTINATION include/Src )
++ INSTALL( FILES "${INASTEMP_BINARY_DIR}/Src/InastempConfig.h" DESTINATION include/inastemp/Src )
+ endif()
+
Added: head/devel/inastemp/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/pkg-descr Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,22 @@
+Inastemp provides a set of C++ classes to make vectorization with intrinsics
+easier. It aims at developing numerical kernels by separating the algorithm
+from the hardware target. Inastemp comes with several examples and patterns
+related to widespread use-cases.
+
+Features:
+
+* The following x86 SIMD types are currently supported:
+ * SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512-KNL, AVX512-SKL
+* The following Powere PC SIMD types are currently supported:
+ * Power-8 Altivec/VMX
+* arithmetic operators */+- are provided
+* CPU capacities are detected automatically during the CMake stage
+* The compiler capacities are detected automatically during the CMake stage
+* The library purely contains of headers, no linkage is necessary.
+* CPU detection may use Intel SDE
+* Unit-tests may use Intel SDE
+* Fast intrinsic exp() function (if not supported natively by the compiler)
+* Explicit branches vectorization several patterns which represent many
+ applications are demonstrated
+
+WWW: https://gitlab.mpcdf.mpg.de/bbramas/inastemp
Added: head/devel/inastemp/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/inastemp/pkg-plist Tue Jan 2 10:41:23 2018 (r457842)
@@ -0,0 +1,31 @@
+include/inastemp/ALTIVEC/InaVecALTIVECDouble.hpp/InaVecALTIVECDouble.hpp
+include/inastemp/ALTIVEC/InaVecALTIVECFloat.hpp/InaVecALTIVECFloat.hpp
+include/inastemp/AVX/InaVecAVXDouble.hpp/InaVecAVXDouble.hpp
+include/inastemp/AVX/InaVecAVXFloat.hpp/InaVecAVXFloat.hpp
+include/inastemp/AVX2/InaVecAVX2Double.hpp/InaVecAVX2Double.hpp
+include/inastemp/AVX2/InaVecAVX2Float.hpp/InaVecAVX2Float.hpp
+include/inastemp/AVX512COMMON/InaVecAVX512COMMONDouble.hpp/InaVecAVX512COMMONDouble.hpp
+include/inastemp/AVX512COMMON/InaVecAVX512COMMONFloat.hpp/InaVecAVX512COMMONFloat.hpp
+include/inastemp/AVX512KNL/InaVecAVX512KNLDouble.hpp/InaVecAVX512KNLDouble.hpp
+include/inastemp/AVX512KNL/InaVecAVX512KNLFloat.hpp/InaVecAVX512KNLFloat.hpp
+include/inastemp/AVX512SKL/InaVecAVX512SKLDouble.hpp/InaVecAVX512SKLDouble.hpp
+include/inastemp/AVX512SKL/InaVecAVX512SKLFloat.hpp/InaVecAVX512SKLFloat.hpp
+include/inastemp/Common/InaFastExp.hpp/InaFastExp.hpp
+include/inastemp/Common/InaIfElse.hpp/InaIfElse.hpp
+include/inastemp/Common/InaMemory.hpp/InaMemory.hpp
+include/inastemp/Common/InaTimer.hpp/InaTimer.hpp
+include/inastemp/Common/InaUtils.hpp/InaUtils.hpp
+include/inastemp/Common/InaVecInterface.hpp/InaVecInterface.hpp
+include/inastemp/FLOPS/InaVecFLOPS.hpp/InaVecFLOPS.hpp
+include/inastemp/SCALAR/InaVecSCALARDouble.hpp/InaVecSCALARDouble.hpp
+include/inastemp/SCALAR/InaVecSCALARFloat.hpp/InaVecSCALARFloat.hpp
+include/inastemp/SSE3/InaVecSSE3Double.hpp/InaVecSSE3Double.hpp
+include/inastemp/SSE3/InaVecSSE3Float.hpp/InaVecSSE3Float.hpp
+include/inastemp/SSE41/InaVecSSE41Double.hpp/InaVecSSE41Double.hpp
+include/inastemp/SSE41/InaVecSSE41Float.hpp/InaVecSSE41Float.hpp
+include/inastemp/SSE42/InaVecSSE42Double.hpp/InaVecSSE42Double.hpp
+include/inastemp/SSE42/InaVecSSE42Float.hpp/InaVecSSE42Float.hpp
+include/inastemp/SSSE3/InaVecSSSE3Double.hpp/InaVecSSSE3Double.hpp
+include/inastemp/SSSE3/InaVecSSSE3Float.hpp/InaVecSSSE3Float.hpp
+include/inastemp/Src/InastempConfig.h
+lib/cmake/InastempInfo.cmake
More information about the svn-ports-head
mailing list