math/hptt: New port: High-Performance Tensor Transpose library
This commit is contained in:
parent
98bb07bb28
commit
7402f09157
7 changed files with 75 additions and 0 deletions
|
@ -376,6 +376,7 @@
|
|||
SUBDIR += hmat-oss
|
||||
SUBDIR += hpcombi
|
||||
SUBDIR += hpipm
|
||||
SUBDIR += hptt
|
||||
SUBDIR += hs-Agda
|
||||
SUBDIR += hs-penrose
|
||||
SUBDIR += hsl
|
||||
|
|
26
math/hptt/Makefile
Normal file
26
math/hptt/Makefile
Normal file
|
@ -0,0 +1,26 @@
|
|||
PORTNAME= hptt
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 1.0.5-18
|
||||
DISTVERSIONSUFFIX= -g9425386
|
||||
CATEGORIES= math
|
||||
|
||||
MAINTAINER= yuri@FreeBSD.org
|
||||
COMMENT= High-Performance Tensor Transpose library
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
|
||||
|
||||
TEST_DEPENDS= gmake:devel/gmake
|
||||
|
||||
USES= cmake:testing compiler:c++11-lang
|
||||
USE_GCC= yes # workaround for https://github.com/springer13/hptt/issues/21
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= springer13
|
||||
|
||||
CMAKE_ON= BUILD_SHARED_LIBS
|
||||
|
||||
do-test: # tests fail to build, see https://github.com/springer13/hptt/issues/23
|
||||
@cd ${WRKSRC}/testframework && ${SETENV} ${MAKE_ENV} ${GMAKE} FREEBSD_GCC_DEFAULT=${GCC_DEFAULT} all
|
||||
|
||||
.include <bsd.port.mk>
|
3
math/hptt/distinfo
Normal file
3
math/hptt/distinfo
Normal file
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1654029691
|
||||
SHA256 (springer13-hptt-v1.0.5-18-g9425386_GH0.tar.gz) = 00cc170a88bd7d3b18a02d6750a9475f34b2f1a9b9bf387e373e712282c4d556
|
||||
SIZE (springer13-hptt-v1.0.5-18-g9425386_GH0.tar.gz) = 635751
|
11
math/hptt/files/patch-CMakeLists.txt
Normal file
11
math/hptt/files/patch-CMakeLists.txt
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- CMakeLists.txt.orig 2022-05-31 20:45:22 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -37,7 +37,7 @@ endif()
|
||||
|
||||
set(HPTT_SRCS src/hptt.cpp src/plan.cpp src/transpose.cpp src/utils.cpp)
|
||||
|
||||
-add_library(hptt STATIC ${HPTT_SRCS})
|
||||
+add_library(hptt ${HPTT_SRCS})
|
||||
target_compile_features(hptt PUBLIC cxx_std_11)
|
||||
target_include_directories(hptt PUBLIC ${PROJECT_SOURCE_DIR}/include)
|
||||
#target_compile_definitions(hptt PRIVATE ${HPTT_CXX_COMPILE_DEFS})
|
11
math/hptt/files/patch-testframework_Makefile
Normal file
11
math/hptt/files/patch-testframework_Makefile
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- testframework/Makefile.orig 2022-05-31 21:42:42 UTC
|
||||
+++ testframework/Makefile
|
||||
@@ -3,7 +3,7 @@ CXX_FLAGS=-O3 -std=c++11
|
||||
ifeq ($(CXX),icpc)
|
||||
CXX_FLAGS += -qopenmp -xhost
|
||||
else
|
||||
-ifeq ($(CXX),g++)
|
||||
+ifeq ($(CXX),g++$(FREEBSD_GCC_DEFAULT))
|
||||
CXX_FLAGS += -fopenmp -march=native
|
||||
else
|
||||
ifeq ($(CXX),clang++)
|
15
math/hptt/pkg-descr
Normal file
15
math/hptt/pkg-descr
Normal file
|
@ -0,0 +1,15 @@
|
|||
HPTT is a high-performance C++ library for out-of-place tensor
|
||||
transpositions.
|
||||
|
||||
Key Features:
|
||||
* Multi-threading support
|
||||
* Explicit vectorization
|
||||
* Auto-tuning (akin to FFTW)
|
||||
* Loop order
|
||||
* Parallelization
|
||||
* Multi architecture support
|
||||
* Explicitly vectorized kernels for (AVX and ARM)
|
||||
* Supports float, double, complex and double complex data types
|
||||
* Supports both column-major and row-major data layouts
|
||||
|
||||
WWW: https://github.com/springer13/hptt
|
8
math/hptt/pkg-plist
Normal file
8
math/hptt/pkg-plist
Normal file
|
@ -0,0 +1,8 @@
|
|||
include/compute_node.h
|
||||
include/hptt.h
|
||||
include/hptt_types.h
|
||||
include/macros.h
|
||||
include/plan.h
|
||||
include/transpose.h
|
||||
include/utils.h
|
||||
lib/libhptt.so
|
Loading…
Reference in a new issue