diff options
author | YiyangWu <xgreenlandforwyy@gmail.com> | 2021-08-25 21:51:30 +0800 |
---|---|---|
committer | Benda Xu <heroxbd@gentoo.org> | 2021-08-27 19:53:48 +0800 |
commit | 53a7ade3df5481b63bdad1da958080d3c298c782 (patch) | |
tree | 94c2fab24d3d925e018fc4e3c5851e282dd34785 /sci-libs/rocSPARSE | |
parent | sci-libs/rocBLAS: Next generation BLAS implementation for ROCm (diff) | |
download | gentoo-53a7ade3df5481b63bdad1da958080d3c298c782.tar.gz gentoo-53a7ade3df5481b63bdad1da958080d3c298c782.tar.bz2 gentoo-53a7ade3df5481b63bdad1da958080d3c298c782.zip |
sci-libs/rocSPARSE: bump version to 4.3.0
Enable test and benchmark, although with minor issues.
Closes: https://github.com/gentoo/gentoo/pull/22112/
Bug: https://github.com/ROCmSoftwarePlatform/rocSPARSE/issues/227
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
Signed-off-by: Benda Xu <heroxbd@gentoo.org>
Diffstat (limited to 'sci-libs/rocSPARSE')
-rw-r--r-- | sci-libs/rocSPARSE/Manifest | 25 | ||||
-rw-r--r-- | sci-libs/rocSPARSE/files/rocSPARSE-4.3.0-remove-matrices-unpacking.patch | 36 | ||||
-rw-r--r-- | sci-libs/rocSPARSE/metadata.xml | 3 | ||||
-rw-r--r-- | sci-libs/rocSPARSE/rocSPARSE-4.3.0.ebuild | 122 |
4 files changed, 186 insertions, 0 deletions
diff --git a/sci-libs/rocSPARSE/Manifest b/sci-libs/rocSPARSE/Manifest index a9b843595f7e..98aae8203d6a 100644 --- a/sci-libs/rocSPARSE/Manifest +++ b/sci-libs/rocSPARSE/Manifest @@ -1 +1,26 @@ DIST rocSPARSE-4.0.0.tar.gz 587761 BLAKE2B 25f9f0183c06b574505fe6e9011b32ea4fbe48c0a1883b8991baf45b8a2238312f352e614c0069531c986e548453b6e7b7a77f883dffea82ed41df488964b55d SHA512 4a4acf24a789ea58b53a8d06ea528a6aed8eabac21a7a3cd73011e9b31d03dceb488cc72f29c5513205f2b538d24e9dbaccda1a932bcc466cd04a65606a77b3b +DIST rocSPARSE-4.3.0.tar.gz 809183 BLAKE2B 06a83d98572927f0f2c65f4f36194394b66a02a5ce9d3e21da04c53e9ad97809daffe02a35691aa52466f7dfb4d4a8c645b87e1e4da579de7f91323df3a41d59 SHA512 e3ee5a15d36c3002ee60aabd94c7f47b0cb9f0b5a33cefa9061df9f04b1fcc3c1503e4f01e2f36c07477179c6753827b505e9b512e8b5bfca00f76e3efd99c1d +DIST rocSPARSE_ASIC_320k.tar.gz 11301444 BLAKE2B a00cc4a3ededab3fb56339319e34e936645ddce2dee3c630153b37e337384c207b0a2829227fb7f4c2db1fe33383e97410ab7ad459d391c025f5410843d51cf2 SHA512 1db3af391c30a371c1ac0087436e266721474273a39d5b2b6d56408d950dcbbee004750e4dce4e3dbc4cb512f38f6d945676d7f29b62c52fd5a7fed0fe789e03 +DIST rocSPARSE_Chebyshev4.tar.gz 50165660 BLAKE2B f1a95554c8f38937f501488fabfd406b773eb980d7463cadac0de162529ac2f834c655cadd2b65f4c42a8487bc2d67c749601ae33bd789051f9e4d1e157196a0 SHA512 fdec4947a4af923d28b4be8d23690fd6d356c58f8344a5dcdd2e3fa61769d83e47a84d65316b527e6e82d9f988de2675a852367d406e44b44d784137a90b95c0 +DIST rocSPARSE_Chevron2.tar.gz 3210636 BLAKE2B 919bc19931cbcb32c09e6b623c9d3890400895dfd65e83845d351a8e3dd8b30ef43374c3c0ca3ee9708c81b5fb8886f1a4adbea6086495f08f9498f19a2279d5 SHA512 22b71deddec4f1af5b239d4065089230cf70e521102803a77ab3f16b34a0d69534817e54d81dfa7f8d1f299932c0f0424237baeb3d8289bcfffa4b902b00e256 +DIST rocSPARSE_Chevron3.tar.gz 15315390 BLAKE2B 72d06664f17ffb0190f27438244fbbdaab495d7fdda087f48608a8c3afbd52d9409bd9f96de5790e70d59ff2ae225a0992b50144746db3ca6b3853a03fd7530c SHA512 db80fd3c61c1b6e7cf1eb28b6e142cd4dbc61ad274003f1fcc8bd35e74d36add2f746550abc1b967cd46389a8f9b2a93016802777733b3f5a56338f753fe49ed +DIST rocSPARSE_Chevron4.tar.gz 30454185 BLAKE2B 42f906acde4046c1ca10b5c8a88356da0ae90875129b72805fc3c69954d194f712a26ee1a05093953e3d2f6d2af498aa4d28389ff8c2cb5a88389a0db3b34f9d SHA512 0b9fe82d58e9cdae8b9a585d57f12122708bdad453885c259ff5345b7756474bd15ecac26c10456eca8020b84c520a8b46c06bdd2414cb56efd5bd3ae07ade36 +DIST rocSPARSE_amazon0312.tar.gz 11303646 BLAKE2B 388947a29380253bb5eecb22d3a3b6f3378711044b3fe98d6d2517cd27330f11b3d12fdb96320a2889e139224f1a6a5ad1c455ff8e91a262aa2aadbe16301330 SHA512 aed2d62581763742d9c7faf3dcaf1eaa983caa1e2e7ad4abebe97c5e7c2aec9942e0e32291092b348b60052c92b130e721ec19ed59bda22e1b233ef72ac7d2ff +DIST rocSPARSE_bibd_22_8.tar.gz 20548479 BLAKE2B b6d0f7b7eb9c3b4ccade55313ca29f5706dde264c03d5d342f16ff27d7cf38ff2648dabea0342683257a6bb16cae85259c7e102a56c70d1e81c8a334c36f3d91 SHA512 3df85485f679c82e7554e8f6dff9d498bc9135bfc70aa81e85d83dbef457f31831dfc23b8d83425289329efc45fdcd41eef1e79f5205500479992892bbcf11fe +DIST rocSPARSE_bmwcra_1.tar.gz 67958791 BLAKE2B 8be4e73cf837fd717e77042c416dee81995cd39bae39bdc1b7f6e6b309ee263130774f030ce7883ae89234227fec115d0178cfe1b2589af79fde6e2a3270b01c SHA512 049722d3524fb7397c4f00ce9a034e75612b839353bbbd7b963900ec19eeb5a4ec54a780882b4929fc4dd6932efb2f676432d444c3d256f9b57d5f392e5241ca +DIST rocSPARSE_mac_econ_fwd500.tar.gz 12051668 BLAKE2B cd59723ea4fa8b0b4024c3534b3c3b42541754353319eca88628ca8216fb619dce3b1e774d6b823155c8afc9b5a65b3ea113edb36f6141c72e1189e97bfcbd37 SHA512 f279d2d71c92456bb0a5168bf3d8bc77eb991f4cbef6eea2c98d038be9ab2f2b576480e081099f766fe888480e91026a619a8de9d04758c26ee316ac4a09fdb5 +DIST rocSPARSE_mc2depi.tar.gz 10874561 BLAKE2B 89fd12479a76a9ec2f488aeadcf58688a2bf9dbc0e1065a7002b0a458bfa48704711ab69d1be6a25396c3c3e48ee4f6b6866984c1ff76074619898eeebb951bc SHA512 82e5bd935d5d6fb83801b5a7848bf7dc636459ba7b14b327a135c5e88528bdc47e4822927aa44c8e21316b538e5f6563024152253c5deb606dbaec77ff986594 +DIST rocSPARSE_mplate.tar.gz 499620 BLAKE2B 794b2e3b054ea40274115db8b981f475e9420982ded0e381fe0670350bda3918d36fdc5d21b1df417423dcce35f85d7c7dfa591d177c5a4491892abfceefdb4f SHA512 61f27e268fb17c24faeddca8279ca4747b076d6c7f98f2caaf814fcbbb9ccd374d133d6b7943dc4f1f7197a64a9fbc4366d194c51bad515bf48ceb5a73a0b1c8 +DIST rocSPARSE_nos1.tar.gz 3025 BLAKE2B cb0630782e996fd8717f845dfecc979abf9d59e5573c00226990a9575a9ec4b14d25197c3a0602baa5bf3e9073e14484374f28ce43108e3df680c1f62995cc77 SHA512 6eb5b65ba2230bb2468d93526990772ce7508faffe0fa5b0c5767859cd0fb0acbdc2d94dab3e5097a4a47dc4d7b0313891037d8a29720eb803cfaf26ae529495 +DIST rocSPARSE_nos2.tar.gz 10313 BLAKE2B 15e83686358285746b4d51e4d69d27bf058ea29aa448745fde76e3cb9ed6f1f8612f94739d980ff830e3610da7a9afe8ee9f6eb86e28e41bf8df74032a23ad63 SHA512 2e50b3bf99e2bedb1eabf58d0293bf9484713204340b2f68ae919d9e842a8c6e4ca917b7d61d4e171ae9e4002ced034913d83c5de6e75f16dae9079467cc424a +DIST rocSPARSE_nos3.tar.gz 34282 BLAKE2B 741257a8c0945cfacce808ad56ee5c306a6d7ea96c8c36183bd3b5b24ddef586d78bbfb5dfdb251ab8e6905842b63ebfa9c481c272d598ff195558248a566e01 SHA512 cb260dec5947765004f497249c0b46d15271e2dd69e99bc2925352d52ac75d27bb9635b1d4bb445b1d79de03aa6803a219a5c80a242fcf7ff74c7e80c0f8f59c +DIST rocSPARSE_nos4.tar.gz 1760 BLAKE2B 24b9dadfd42a6c5f1988c98ef01319d8ae20f447293ce334723f9290f76b878311df4e0ae0fe7788081f27303359392b8694e06b7dc0a64a69fac00a3168d59a SHA512 2f0c40c971d5eea986efc389fc6770f5e8099c8924c7221b1c46ab0be44641d499f20d536b313999d2b31b356568255c98cbba3b0804a00de18a95a052431e0b +DIST rocSPARSE_nos5.tar.gz 13125 BLAKE2B 3b5e7166dfae258e9b6667eaa7b172d862eb3fc755751f6f9e63e76b16b5a0b14bf2f58a59ed5513fc641eb7df7f478e1cacc45940a6a49ec87eb1007c3209c3 SHA512 6151b9de84498495f3e03d11ff26d7013b5109068474abbee6018b3fe90a5e518823a06a9cc8c62013cd61925061b45d3f5aabaa01da61286665039d8cb06655 +DIST rocSPARSE_nos6.tar.gz 7644 BLAKE2B 1690af9969bcd2eee760571874a04e36ef4dd76a8349a307c0cc4d02cbc59ed12df0646509528e3b136836230d887a8eb4e1095b7423737a3831e5680ea07e9e SHA512 22dbbb825648948fd3d2eb7a2ca8c45d6746b5b386406b1dacbeb575f1ebeeb14ff49f62e5fbdc8a784def398c319f810537991180740f6efffe4e94fdb15aef +DIST rocSPARSE_nos7.tar.gz 9639 BLAKE2B 5d63cfbe45f2f968a62cd8bcf0c25b831f485cd9dd0d95bdb248ab7b62ab67476c60ed8a4ad811f7db158a893e08a753beb3b1e7ed6f727219b985d932570eb0 SHA512 39109bbe3d0d791a0a2eeb272f2359bad34332191c53db7487a01770ac4c7ea1af2cc5e05a0ff5744f413113b7fcbe493a36cfc880436af274fe7dc6c39d6e11 +DIST rocSPARSE_qc2534.tar.gz 1247151 BLAKE2B 9e0515d5fa20019bf436e45b72be6ee6d832388e59194516a393c9c6efc52fdbc6dee64e75d72576b495886324acc81be3642b7cde2f07dff2072059fbf5ebf9 SHA512 d2a18d73122362484944cddca55c28cbb41ba351257481b6803452295a41563976fcf7c73ef00e7b693550c0b32bad2af1220b67a14ac727c023fe80b4abb271 +DIST rocSPARSE_rma10.tar.gz 19466055 BLAKE2B bb8ac5fe06bb6d7814864b3d43f9ddd1d2daafe55c31bdd9153cf6744d3d113fff878c4396a26d1a021bf9612c08798964c3bd9de8ea9829b202b912fb31db2e SHA512 c8ce8fc8fa7192ba2ac240439c90701080a590945dfb92bb80886f513205a0360ff8e5fd19819ad97d1eb58c3d83b57e5482e5361199cc9626e2afee8d84f4ac +DIST rocSPARSE_scircuit.tar.gz 8635362 BLAKE2B 3f1d6e35a6a774664bd653dd466fa3c07818bfdee4a2633bfcacd5936569194863753fe7ebd0e1497ecdabbc716617ca6012801242e8d733f5d5d189e8d3feb2 SHA512 4949c869c17a66f19660cbe21b61615fb468d5afb1a773f9d6fe09cbc45b4c6245b647148dbab102b45599c53acaf4ed96ab815e17e538068c927a4d25b9bd2a +DIST rocSPARSE_shipsec1.tar.gz 22175245 BLAKE2B f1d34482b8c3d3ee48033097d7d6f9b648e3c396a5ab2379efdc7de218adec519a235e2e94904f85a4f24c8d4ff15af096ca089379e00db47519023f64b85c16 SHA512 e027097e74f8ffc058339855b1c38cab52c68b661058318b429487e7188e11e907f6734894f9c71d1e38d262986525fba8d0f165bc0a1b4632d7e25be8db4f17 +DIST rocSPARSE_sme3Dc.tar.gz 42483568 BLAKE2B f0d16b58f6ea28e67727637697a812a0b10d524c73aeb82f702411b9ebaea3670780e762ed0701aae80c6829e950233f74555523ef2d6c5740b007c7a65c03d4 SHA512 c5a0be2db919a45310a73ea1dd96d0d30168135f887a8c5c3d7ca11e2c3d12ea7d1331be20968d0135bd18da4ef2b043db68eeb7567b6f0f8daf782b87083c3a +DIST rocSPARSE_webbase-1M.tar.gz 11360460 BLAKE2B 01b1d06adb5fb32fa402ed888d25a7e52a34779b078fc2e21c60e688d03579bb4ca8694f5ee4a824f7859952d55590a1fd9449dc80d6fe894d7b662b918882d4 SHA512 6401a965b8f6dd5392879956fde3c94f77fe1801a4a43428c03b6d639031575c647eab47b1babe53f4ecc2c3b8fc183e8339536b78dcd0d94ce62bfedd87c161 diff --git a/sci-libs/rocSPARSE/files/rocSPARSE-4.3.0-remove-matrices-unpacking.patch b/sci-libs/rocSPARSE/files/rocSPARSE-4.3.0-remove-matrices-unpacking.patch new file mode 100644 index 000000000000..2f19725a6e10 --- /dev/null +++ b/sci-libs/rocSPARSE/files/rocSPARSE-4.3.0-remove-matrices-unpacking.patch @@ -0,0 +1,36 @@ +Don't let cmake handle test data download, unpack and convert + +--- orig/clients/tests/CMakeLists.txt ++++ rocSPARSE-rocm-4.3.0/clients/tests/CMakeLists.txt +@@ -23,31 +23,6 @@ + + find_package(GTest 1.10.0 REQUIRED) + +-# +-# Client matrices. +-# +-if(NOT EXISTS "${CMAKE_MATRICES_DIR}") +- # +- # Download. +- # +- set(CMAKE_MATRICES_DIR ${PROJECT_BINARY_DIR}/matrices CACHE STRING "Matrices directory.") +- +- if(NOT TARGET rocsparse) +- set(CONVERT ${CMAKE_SOURCE_DIR}/../deps/convert CACHE STRING "Convert tool mtx2csr.") +- include(${CMAKE_SOURCE_DIR}/../cmake/ClientMatrices.cmake) +- else() +- set(CONVERT ${CMAKE_SOURCE_DIR}/deps/convert CACHE STRING "Convert tool mtx2csr.") +- include(${CMAKE_SOURCE_DIR}/cmake/ClientMatrices.cmake) +- endif() +- +-else() +- +- # +- # Copy. +- # +- execute_process(COMMAND cp -r ${CMAKE_MATRICES_DIR} ${PROJECT_BINARY_DIR}/matrices) +- +-endif() + + set(ROCSPARSE_TEST_SOURCES + test_axpby.cpp diff --git a/sci-libs/rocSPARSE/metadata.xml b/sci-libs/rocSPARSE/metadata.xml index a6b4d47cdfe7..496b630798a6 100644 --- a/sci-libs/rocSPARSE/metadata.xml +++ b/sci-libs/rocSPARSE/metadata.xml @@ -16,4 +16,7 @@ <upstream> <remote-id type="github">ROCmSoftwarePlatform/rocSPARSE</remote-id> </upstream> + <use> + <flag name="benchmark">Build and install rocblas-bench.</flag> + </use> </pkgmetadata> diff --git a/sci-libs/rocSPARSE/rocSPARSE-4.3.0.ebuild b/sci-libs/rocSPARSE/rocSPARSE-4.3.0.ebuild new file mode 100644 index 000000000000..6683c6a0517d --- /dev/null +++ b/sci-libs/rocSPARSE/rocSPARSE-4.3.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake toolchain-funcs + +DESCRIPTION="Basic Linear Algebra Subroutines for sparse computation" +HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocSPARSE" + +SRC_URI="https://github.com/ROCmSoftwarePlatform/rocSPARSE/archive/rocm-${PV}.tar.gz -> rocSPARSE-${PV}.tar.gz +test? ( +https://sparse.tamu.edu/MM/SNAP/amazon0312.tar.gz -> ${PN}_amazon0312.tar.gz +https://sparse.tamu.edu/MM/Muite/Chebyshev4.tar.gz -> ${PN}_Chebyshev4.tar.gz +https://sparse.tamu.edu/MM/FEMLAB/sme3Dc.tar.gz -> ${PN}_sme3Dc.tar.gz +https://sparse.tamu.edu/MM/Williams/webbase-1M.tar.gz -> ${PN}_webbase-1M.tar.gz +https://sparse.tamu.edu/MM/Bova/rma10.tar.gz -> ${PN}_rma10.tar.gz +https://sparse.tamu.edu/MM/JGD_BIBD/bibd_22_8.tar.gz -> ${PN}_bibd_22_8.tar.gz +https://sparse.tamu.edu/MM/Williams/mac_econ_fwd500.tar.gz -> ${PN}_mac_econ_fwd500.tar.gz +https://sparse.tamu.edu/MM/Williams/mc2depi.tar.gz -> ${PN}_mc2depi.tar.gz +https://sparse.tamu.edu/MM/Hamm/scircuit.tar.gz -> ${PN}_scircuit.tar.gz +https://sparse.tamu.edu/MM/Sandia/ASIC_320k.tar.gz -> ${PN}_ASIC_320k.tar.gz +https://sparse.tamu.edu/MM/GHS_psdef/bmwcra_1.tar.gz -> ${PN}_bmwcra_1.tar.gz +https://sparse.tamu.edu/MM/HB/nos1.tar.gz -> ${PN}_nos1.tar.gz +https://sparse.tamu.edu/MM/HB/nos2.tar.gz -> ${PN}_nos2.tar.gz +https://sparse.tamu.edu/MM/HB/nos3.tar.gz -> ${PN}_nos3.tar.gz +https://sparse.tamu.edu/MM/HB/nos4.tar.gz -> ${PN}_nos4.tar.gz +https://sparse.tamu.edu/MM/HB/nos5.tar.gz -> ${PN}_nos5.tar.gz +https://sparse.tamu.edu/MM/HB/nos6.tar.gz -> ${PN}_nos6.tar.gz +https://sparse.tamu.edu/MM/HB/nos7.tar.gz -> ${PN}_nos7.tar.gz +https://sparse.tamu.edu/MM/DNVS/shipsec1.tar.gz -> ${PN}_shipsec1.tar.gz +https://sparse.tamu.edu/MM/Cote/mplate.tar.gz -> ${PN}_mplate.tar.gz +https://sparse.tamu.edu/MM/Bai/qc2534.tar.gz -> ${PN}_qc2534.tar.gz +https://sparse.tamu.edu/MM/Chevron/Chevron2.tar.gz -> ${PN}_Chevron2.tar.gz +https://sparse.tamu.edu/MM/Chevron/Chevron3.tar.gz -> ${PN}_Chevron3.tar.gz +https://sparse.tamu.edu/MM/Chevron/Chevron4.tar.gz -> ${PN}_Chevron4.tar.gz +)" + +LICENSE="MIT" +KEYWORDS="~amd64" +IUSE="benchmark test" +SLOT="0/$(ver_cut 1-2)" + +RDEPEND="dev-util/hip:${SLOT} + sci-libs/rocPRIM:${SLOT}" +DEPEND="${RDEPEND}" +BDEPEND="test? ( dev-cpp/gtest ) +benchmark? ( app-admin/chrpath )" + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/rocSPARSE-rocm-${PV}" + +PATCHES=( "${FILESDIR}/${PN}-4.3.0-remove-matrices-unpacking.patch" ) + +src_prepare() { + sed -e "s/PREFIX rocsparse//" \ + -e "/<INSTALL_INTERFACE/s,include,include/rocsparse," \ + -e "/rocm_install_symlink_subdir(rocsparse)/d" \ + -e "s:rocsparse/include:include/rocsparse:" \ + -i "${S}/library/CMakeLists.txt" || die + + # remove GIT dependency + sed -e "/find_package(Git/d" -i cmake/Dependencies.cmake || die + + # Test need download data from https://sparse.tamu.edu (or other mirror site), check MD5, unpack and convert them into csr format + # This process is handled default by ${S}/cmake/ClientMatrices.cmake, but should be the responsibility of portage. + if use test; then + mkdir -p "${BUILD_DIR}"/matrices + # compile and use the mtx2csr converter. Do not use any optimization flags, because it causes error! + ebegin "$(tc-getCXX) deps/convert.cpp -o deps/convert" + $(tc-getCXX) deps/convert.cpp -o deps/convert + eend $? + find "${WORKDIR}" -maxdepth 2 -name "*.mtx" -print0 | + while IFS= read -r -d '' mtxfile; do + destination=${BUILD_DIR}/matrices/$(basename -s '.mtx' ${mtxfile}).csr + ebegin "Converting ${mtxfile} to ${destination}" + deps/convert ${mtxfile} ${destination} + eend $? + done + fi + + cmake_src_prepare +} + +src_configure() { + # Grant access to the device to omit a sandbox violation + addwrite /dev/kfd + addpredict /dev/dri/ + + # Compiler to use + export CXX=hipcc + + local mycmakeargs=( + -DBUILD_CLIENTS_SAMPLES=OFF + -DCMAKE_INSTALL_INCLUDEDIR="include/rocsparse" + -DCMAKE_SKIP_RPATH="ON" + -DBUILD_CLIENTS_TESTS=$(usex test ON OFF) + -DBUILD_CLIENTS_BENCHMARKS=$(usex benchmark ON OFF) + ${AMDGPU_TARGETS+-DAMDGPU_TARGETS="${AMDGPU_TARGETS}"} + -D__skip_rocmclang="ON" ## fix cmake-3.21 configuration issue caused by officialy support programming language "HIP" + ) + + cmake_src_configure +} + +src_test() { + addwrite /dev/kfd + addwrite /dev/dri/ + cd "${BUILD_DIR}/clients/staging" || die + ./rocsparse-test +} + +src_install() { + cmake_src_install + + if use benchmark; then + local rocsparse_bench="${BUILD_DIR}/clients/staging/rocsparse-bench" + chrpath -d "${rocsparse_bench}" + dobin "${rocsparse_bench}" + fi +} |