math/blis: update to the first snapshot working on FreeBSD to support runtime kernel selection. For amd64, this will now select, if available, an assembly optimized kernel for the CPU architecture blis is running on. The other architectures continue to only use what is now called the generic kernel but in theory arm and power7 assembly optimizations are available.
Due to this, remove the old explicit kernel selection. Also switch to use devel/llvm50 as a compiler to actually support all the architectures (and upstream compile flags) properly. This hopefully will also help with getting blis to work on other architectures out of the box. Reviewed by: swills (mentor) Approved by: swills (mentor) Differential Revision: https://reviews.freebsd.org/D13264
This commit is contained in:
parent
f7813ae789
commit
9514042786
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=456082
@ -2,8 +2,8 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= blis
|
||||
PORTVERSION= 0.2.2
|
||||
PORTREVISION= 1
|
||||
LIBVERSION= 0.2.2
|
||||
PORTVERSION= ${LIBVERSION}g20171127
|
||||
CATEGORIES= math
|
||||
|
||||
MAINTAINER= jmd@FreeBSD.org
|
||||
@ -12,31 +12,23 @@ COMMENT= Software framework for high-performance BLAS-like libraries
|
||||
LICENSE= BSD3CLAUSE
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= bash:shells/bash
|
||||
BUILD_DEPENDS= bash:shells/bash \
|
||||
llvm50>=0:devel/llvm50
|
||||
|
||||
BROKEN_powerpc64= fails to configure: common.mk:118: Unable to determine compiler vendor
|
||||
|
||||
OPTIONS_DEFINE= PARA CBLAS
|
||||
PARA_DESC= use pthread parallelization
|
||||
CBLAS_DESC= build the CBLAS compatibility layer
|
||||
OPTIONS_RADIO= ARCHITECTURE
|
||||
OPTIONS_RADIO_ARCHITECTURE= REFERENCE BULLDOZER PILEDRIVER CARRIZO DUNNINGTON SANDYBRIDGE HASWELL
|
||||
REFERENCE_DESC= reference kernels (slow)
|
||||
BULLDOZER_DESC= optimized kernels for AMD Bulldozer architecture
|
||||
PILEDRIVER_DESC= optimized kernels for AMD Piledriver architecture
|
||||
CARRIZO_DESC= optimized kernels for AMD Carrizo architecture
|
||||
DUNNINGTON_DESC= optimized kernels for Intel Dunnington architecture
|
||||
SANDYBRIDGE_DESC= optimized kernels for Intel Sandybridge architecture
|
||||
HASWELL_DESC= optimized kernels for Intel Haswell architecture
|
||||
OPTIONS_DEFAULT= PARA CBLAS REFERENCE
|
||||
OPTIONS_SUB= yes
|
||||
OPTIONS_DEFAULT= PARA CBLAS
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= flame
|
||||
GH_TAGNAME= 6e04f9d
|
||||
GH_TAGNAME= 1f30b13
|
||||
|
||||
USE_LDCONFIG= yes
|
||||
USES= gmake
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
HAS_CONFIGURE= yes
|
||||
|
||||
@ -57,27 +49,22 @@ CONFIGURE_ARGS+= -t pthreads
|
||||
CONFIGURE_ARGS+= --enable-cblas
|
||||
.endif
|
||||
|
||||
ARCH= reference
|
||||
.if ${PORT_OPTIONS:MREFERENCE}
|
||||
ARCH= reference
|
||||
.elif ${PORT_OPTIONS:MBULLDOZER}
|
||||
ARCH= bulldozer
|
||||
.elif ${PORT_OPTIONS:MPILEDRIVER}
|
||||
ARCH= piledriver
|
||||
.elif ${PORT_OPTIONS:MCARRIZO}
|
||||
ARCH= carrizo
|
||||
.elif ${PORT_OPTIONS:MDUNNINGTON}
|
||||
ARCH= dunnington
|
||||
.elif ${PORT_OPTIONS:MSANDYBRIDGE}
|
||||
ARCH= sandybridge
|
||||
.elif ${PORT_OPTIONS:MHASWELL}
|
||||
ARCH= haswell
|
||||
.if ${ARCH} == amd64
|
||||
LIBNAME= x86_64
|
||||
CONFIGURE_ARGS+= x86_64
|
||||
PLIST_SUB+= X8664=""
|
||||
.else
|
||||
LIBNAME= generic
|
||||
CONFIGURE_ARGS+= generic
|
||||
PLIST_SUB+= X8664="@comment "
|
||||
.endif
|
||||
CONFIGURE_ARGS+= ${ARCH}
|
||||
|
||||
CC= ${LOCALBASE}/bin/clang50
|
||||
CXX= ${LOCALBASE}/bin/clang++50
|
||||
|
||||
post-install:
|
||||
${MV} ${STAGEDIR}/${PREFIX}/lib/libblis-${PORTVERSION}-${ARCH}.a ${STAGEDIR}/${PREFIX}/lib/libblis.a
|
||||
${MV} ${STAGEDIR}/${PREFIX}/lib/libblis-${PORTVERSION}-${ARCH}.so ${STAGEDIR}/${PREFIX}/lib/libblis.so
|
||||
${MV} ${STAGEDIR}/${PREFIX}/lib/libblis-${LIBVERSION}-${LIBNAME}.a ${STAGEDIR}/${PREFIX}/lib/libblis.a
|
||||
${MV} ${STAGEDIR}/${PREFIX}/lib/libblis-${LIBVERSION}-${LIBNAME}.so ${STAGEDIR}/${PREFIX}/lib/libblis.so
|
||||
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libblis.so
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1495076060
|
||||
SHA256 (flame-blis-0.2.2-6e04f9d_GH0.tar.gz) = bb3fe42d1985d0c18908d6d7e2812e2b2841d35274f653881f37190e16b95a75
|
||||
SIZE (flame-blis-0.2.2-6e04f9d_GH0.tar.gz) = 1298944
|
||||
TIMESTAMP = 1511836356
|
||||
SHA256 (flame-blis-0.2.2g20171127-1f30b13_GH0.tar.gz) = 20b861ad130a20a80dedd1418e8f3420026586218389b7195ccd8516835265a3
|
||||
SIZE (flame-blis-0.2.2g20171127-1f30b13_GH0.tar.gz) = 1314083
|
||||
|
@ -89,6 +89,9 @@ include/blis/bli_addris.h
|
||||
include/blis/bli_adds.h
|
||||
include/blis/bli_adds_mxn.h
|
||||
include/blis/bli_adds_mxn_uplo.h
|
||||
include/blis/bli_arch.h
|
||||
include/blis/bli_arch_config.h
|
||||
include/blis/bli_arch_config_pre.h
|
||||
include/blis/bli_auxinfo.h
|
||||
include/blis/bli_axmyris.h
|
||||
include/blis/bli_axmys.h
|
||||
@ -109,6 +112,7 @@ include/blis/bli_check.h
|
||||
include/blis/bli_clock.h
|
||||
include/blis/bli_cntl.h
|
||||
include/blis/bli_cntx.h
|
||||
include/blis/bli_cntx_ind_stage.h
|
||||
include/blis/bli_complex_macro_defs.h
|
||||
include/blis/bli_config.h
|
||||
include/blis/bli_config_macro_defs.h
|
||||
@ -130,6 +134,7 @@ include/blis/bli_copyris.h
|
||||
include/blis/bli_copys.h
|
||||
include/blis/bli_copys_mxn.h
|
||||
include/blis/bli_copysc.h
|
||||
include/blis/bli_cpuid.h
|
||||
include/blis/bli_dlamch.h
|
||||
include/blis/bli_dotjs.h
|
||||
include/blis/bli_dots.h
|
||||
@ -139,6 +144,16 @@ include/blis/bli_error.h
|
||||
include/blis/bli_error_macro_defs.h
|
||||
include/blis/bli_extern_defs.h
|
||||
include/blis/bli_f2c.h
|
||||
%%X8664%%include/blis/bli_family_bulldozer.h
|
||||
%%X8664%%include/blis/bli_family_excavator.h
|
||||
include/blis/bli_family_generic.h
|
||||
%%X8664%%include/blis/bli_family_haswell.h
|
||||
%%X8664%%include/blis/bli_family_penryn.h
|
||||
%%X8664%%include/blis/bli_family_piledriver.h
|
||||
%%X8664%%include/blis/bli_family_sandybridge.h
|
||||
%%X8664%%include/blis/bli_family_steamroller.h
|
||||
%%X8664%%include/blis/bli_family_x86_64.h
|
||||
%%X8664%%include/blis/bli_family_zen.h
|
||||
include/blis/bli_fprints.h
|
||||
include/blis/bli_func.h
|
||||
include/blis/bli_gemm.h
|
||||
@ -146,9 +161,6 @@ include/blis/bli_gemm_cntl.h
|
||||
include/blis/bli_gemm_front.h
|
||||
include/blis/bli_gemm_int.h
|
||||
include/blis/bli_gemm_var.h
|
||||
include/blis/bli_gemmind_cntx.h
|
||||
include/blis/bli_gemmind_ukr_ref.h
|
||||
include/blis/bli_gemmtrsmind_x_ukr_ref.h
|
||||
include/blis/bli_gemv.h
|
||||
include/blis/bli_gemv_var.h
|
||||
include/blis/bli_genarray_macro_defs.h
|
||||
@ -185,57 +197,45 @@ include/blis/bli_invscaljris.h
|
||||
include/blis/bli_invscaljs.h
|
||||
include/blis/bli_invscalris.h
|
||||
include/blis/bli_invscals.h
|
||||
include/blis/bli_kernel.h
|
||||
include/blis/bli_kernel_1m_macro_defs.h
|
||||
include/blis/bli_kernel_3m1_macro_defs.h
|
||||
include/blis/bli_kernel_3m2_macro_defs.h
|
||||
include/blis/bli_kernel_3m3_macro_defs.h
|
||||
include/blis/bli_kernel_3mh_macro_defs.h
|
||||
include/blis/bli_kernel_4m1_macro_defs.h
|
||||
include/blis/bli_kernel_4mb_macro_defs.h
|
||||
include/blis/bli_kernel_4mh_macro_defs.h
|
||||
include/blis/bli_kernel_ind_macro_defs.h
|
||||
include/blis/bli_kernel_ind_pre_macro_defs.h
|
||||
include/blis/bli_kernel_macro_defs.h
|
||||
include/blis/bli_kernel_pre_macro_defs.h
|
||||
include/blis/bli_kernel_prototypes.h
|
||||
%%X8664%%include/blis/bli_kernels_bulldozer.h
|
||||
%%X8664%%include/blis/bli_kernels_haswell.h
|
||||
%%X8664%%include/blis/bli_kernels_penryn.h
|
||||
%%X8664%%include/blis/bli_kernels_piledriver.h
|
||||
%%X8664%%include/blis/bli_kernels_sandybridge.h
|
||||
include/blis/bli_l0.h
|
||||
include/blis/bli_l0_check.h
|
||||
include/blis/bli_l0_oapi.h
|
||||
include/blis/bli_l0_tapi.h
|
||||
include/blis/bli_l1d.h
|
||||
include/blis/bli_l1d_check.h
|
||||
include/blis/bli_l1d_cntx.h
|
||||
include/blis/bli_l1d_oapi.h
|
||||
include/blis/bli_l1d_tapi.h
|
||||
include/blis/bli_l1f.h
|
||||
include/blis/bli_l1f_check.h
|
||||
include/blis/bli_l1f_cntx.h
|
||||
include/blis/bli_l1f_ft.h
|
||||
include/blis/bli_l1f_ker.h
|
||||
include/blis/bli_l1f_ker_prot.h
|
||||
include/blis/bli_l1f_oapi.h
|
||||
include/blis/bli_l1f_ref.h
|
||||
include/blis/bli_l1f_tapi.h
|
||||
include/blis/bli_l1m.h
|
||||
include/blis/bli_l1m_check.h
|
||||
include/blis/bli_l1m_cntx.h
|
||||
include/blis/bli_l1m_ft.h
|
||||
include/blis/bli_l1m_ker.h
|
||||
include/blis/bli_l1m_ker_prot.h
|
||||
include/blis/bli_l1m_oapi.h
|
||||
include/blis/bli_l1m_tapi.h
|
||||
include/blis/bli_l1m_unb_var1.h
|
||||
include/blis/bli_l1m_voft.h
|
||||
include/blis/bli_l1v.h
|
||||
include/blis/bli_l1v_check.h
|
||||
include/blis/bli_l1v_cntx.h
|
||||
include/blis/bli_l1v_ft.h
|
||||
include/blis/bli_l1v_ker.h
|
||||
include/blis/bli_l1v_ker_prot.h
|
||||
include/blis/bli_l1v_oapi.h
|
||||
include/blis/bli_l1v_ref.h
|
||||
include/blis/bli_l1v_tapi.h
|
||||
include/blis/bli_l2.h
|
||||
include/blis/bli_l2_check.h
|
||||
include/blis/bli_l2_cntx.h
|
||||
include/blis/bli_l2_ft.h
|
||||
include/blis/bli_l2_oapi.h
|
||||
include/blis/bli_l2_tapi.h
|
||||
@ -243,13 +243,13 @@ include/blis/bli_l3.h
|
||||
include/blis/bli_l3_blocksize.h
|
||||
include/blis/bli_l3_check.h
|
||||
include/blis/bli_l3_cntl.h
|
||||
include/blis/bli_l3_cntx.h
|
||||
include/blis/bli_l3_direct.h
|
||||
include/blis/bli_l3_ft.h
|
||||
include/blis/bli_l3_ind.h
|
||||
include/blis/bli_l3_ind_oapi.h
|
||||
include/blis/bli_l3_ind_opt.h
|
||||
include/blis/bli_l3_ind_tapi.h
|
||||
include/blis/bli_l3_ind_ukr.h
|
||||
include/blis/bli_l3_oapi.h
|
||||
include/blis/bli_l3_oft.h
|
||||
include/blis/bli_l3_packm.h
|
||||
@ -258,7 +258,7 @@ include/blis/bli_l3_tapi.h
|
||||
include/blis/bli_l3_thrinfo.h
|
||||
include/blis/bli_l3_ukr.h
|
||||
include/blis/bli_l3_ukr_oapi.h
|
||||
include/blis/bli_l3_ukr_ref.h
|
||||
include/blis/bli_l3_ukr_prot.h
|
||||
include/blis/bli_l3_ukr_tapi.h
|
||||
include/blis/bli_l3_var_oft.h
|
||||
include/blis/bli_l3_voft.h
|
||||
@ -284,29 +284,17 @@ include/blis/bli_obj_macro_defs.h
|
||||
include/blis/bli_obj_scalar.h
|
||||
include/blis/bli_opid.h
|
||||
include/blis/bli_packm.h
|
||||
include/blis/bli_packm_1er_macro_defs.h
|
||||
include/blis/bli_packm_3mis_macro_defs.h
|
||||
include/blis/bli_packm_4mi_macro_defs.h
|
||||
include/blis/bli_packm_blk_var1.h
|
||||
include/blis/bli_packm_check.h
|
||||
include/blis/bli_packm_cntl.h
|
||||
include/blis/bli_packm_cntx.h
|
||||
include/blis/bli_packm_cxk.h
|
||||
include/blis/bli_packm_cxk_1e_ref.h
|
||||
include/blis/bli_packm_cxk_1er.h
|
||||
include/blis/bli_packm_cxk_1r_ref.h
|
||||
include/blis/bli_packm_cxk_3mis.h
|
||||
include/blis/bli_packm_cxk_3mis_ref.h
|
||||
include/blis/bli_packm_cxk_4mi.h
|
||||
include/blis/bli_packm_cxk_4mi_ref.h
|
||||
include/blis/bli_packm_cxk_ref.h
|
||||
include/blis/bli_packm_cxk_rih.h
|
||||
include/blis/bli_packm_cxk_rih_ref.h
|
||||
include/blis/bli_packm_ind_pre_macro_defs.h
|
||||
include/blis/bli_packm_init.h
|
||||
include/blis/bli_packm_int.h
|
||||
include/blis/bli_packm_part.h
|
||||
include/blis/bli_packm_rih_macro_defs.h
|
||||
include/blis/bli_packm_struc_cxk.h
|
||||
include/blis/bli_packm_struc_cxk_1er.h
|
||||
include/blis/bli_packm_struc_cxk_3mis.h
|
||||
@ -406,8 +394,6 @@ include/blis/bli_trsm_cntl.h
|
||||
include/blis/bli_trsm_front.h
|
||||
include/blis/bli_trsm_int.h
|
||||
include/blis/bli_trsm_var.h
|
||||
include/blis/bli_trsmind_cntx.h
|
||||
include/blis/bli_trsmind_x_ukr_ref.h
|
||||
include/blis/bli_trsv.h
|
||||
include/blis/bli_trsv_var.h
|
||||
include/blis/bli_type_defs.h
|
||||
@ -416,7 +402,6 @@ include/blis/bli_unpackm_blk_var1.h
|
||||
include/blis/bli_unpackm_check.h
|
||||
include/blis/bli_unpackm_cntl.h
|
||||
include/blis/bli_unpackm_cxk.h
|
||||
include/blis/bli_unpackm_cxk_ref.h
|
||||
include/blis/bli_unpackm_int.h
|
||||
include/blis/bli_unpackm_unb_var1.h
|
||||
include/blis/bli_util.h
|
||||
|
Loading…
Reference in New Issue
Block a user