{"id":18711193,"url":"https://github.com/rocm/hipsparse","last_synced_at":"2025-04-05T21:09:16.881Z","repository":{"id":37492923,"uuid":"136146787","full_name":"ROCm/hipSPARSE","owner":"ROCm","description":"ROCm SPARSE marshalling library ","archived":false,"fork":false,"pushed_at":"2025-03-27T02:55:25.000Z","size":4998,"stargazers_count":67,"open_issues_count":6,"forks_count":42,"subscribers_count":27,"default_branch":"develop","last_synced_at":"2025-03-29T20:07:37.245Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://rocm.docs.amd.com/projects/hipSPARSE/en/latest/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ROCm.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-06-05T08:38:52.000Z","updated_at":"2025-03-27T02:28:26.000Z","dependencies_parsed_at":"2024-02-27T00:42:58.477Z","dependency_job_id":"e54d345e-0fc3-4b4e-8894-720eb799f57b","html_url":"https://github.com/ROCm/hipSPARSE","commit_stats":{"total_commits":414,"total_committers":27,"mean_commits":"15.333333333333334","dds":0.6594202898550725,"last_synced_commit":"40032c47492e8b4939ef883b17d7bad2b2c95ac3"},"previous_names":["rocm/hipsparse","rocmsoftwareplatform/hipsparse"],"tags_count":84,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ROCm%2FhipSPARSE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ROCm%2FhipSPARSE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ROCm%2FhipSPARSE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ROCm%2FhipSPARSE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ROCm","download_url":"https://codeload.github.com/ROCm/hipSPARSE/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247399878,"owners_count":20932880,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T12:37:42.772Z","updated_at":"2025-04-05T21:09:16.836Z","avatar_url":"https://github.com/ROCm.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hipSPARSE\n\nhipSPARSE is a SPARSE marshalling library with multiple supported backends. It sits between your\napplication and a 'worker' SPARSE library, where it marshals inputs to the backend library and marshals\nresults to your application. hipSPARSE exports an interface that doesn't require the client to change,\nregardless of the chosen backend. Currently, hipSPARSE supports\n[rocSPARSE](https://github.com/ROCmSoftwarePlatform/rocSPARSE) and\n[NVIDIA CUDA cuSPARSE](https://developer.nvidia.com/cusparse) backends.\n\n## Documentation\n\n\u003e [!NOTE]\n\u003e The published hipSPARSE documentation is available at [https://rocm.docs.amd.com/projects/hipSPARSE/en/latest/](https://rocm.docs.amd.com/projects/hipSPARSE/en/latest/index.html) in an organized, easy-to-read format, with search and a table of contents. The documentation source files reside in the hipSPARSE/docs folder of this repository. As with all ROCm projects, the documentation is open source. For more information, see [Contribute to ROCm documentation](https://rocm.docs.amd.com/en/latest/contribute/contributing.html).\n\nTo build our documentation locally, run the following code:\n\n```bash\ncd docs\n\npip3 install -r sphinx/requirements.txt\n\npython3 -m sphinx -T -E -b html -d _build/doctrees -D language=en . _build/html\n```\n\nAlternatively, build with CMake:\n\n```bash\ncmake -DBUILD_DOCS=ON ...\n```\n\n## Installing pre-built packages\n\nDownload pre-built packages from\n[ROCm's package servers](https://rocm.docs.amd.com/en/latest/deploy/linux/index.html) using the\nfollowing code:\n\n```bash\n`sudo apt update \u0026\u0026 sudo apt install hipsparse`\n```\n\n## Build hipSPARSE\n\nTo build hipSPARSE, you can use our bash helper script (for Ubuntu only) or you can perform a manual\nbuild (for all supported platforms).\n\n* Bash helper script (`install.sh`):\n  This script, which is located in the root of this repository, builds and installs hipSPARSE on Ubuntu\n  with a single command. Note that this option doesn't allow much customization and hard-codes\n  configurations that can be specified through invoking CMake directly. Some commands in the script\n  require sudo access, so it may prompt you for a password.\n\n    ```bash\n    `./install -h`  # shows help\n    `./install -id` # builds library, dependencies, then installs (the `-d` flag only needs to be passed once on a system)\n    ```\n\n* Manual build:\n    If you use a distribution other than Ubuntu, or would like more control over the build process,\n    the [hipSPARSE build wiki](https://github.com/ROCmSoftwarePlatform/hipSPARSE/wiki/Build)\n    provides information on how to configure CMake and build hipSPARSE manually.\n\n### Supported functions\n\nYou can find a list of\n[exported functions](https://github.com/ROCmSoftwarePlatform/hipSPARSE/wiki/Exported-functions)\non our wiki.\n\n## Interface examples\n\nThe hipSPARSE interface is compatible with rocSPARSE and CUDA cuSPARSE-v2 APIs. Porting a CUDA\napplication that calls the CUDA cuSPARSE API to an application that calls the hipSPARSE API is relatively\nstraightforward. For example, the hipSPARSE SCSRMV interface is:\n\n### CSRMV API\n\n```c\nhipsparseStatus_t\nhipsparseScsrmv(hipsparseHandle_t handle,\n                hipsparseOperation_t transA,\n                int m, int n, int nnz, const float *alpha,\n                const hipsparseMatDescr_t descrA,\n                const float *csrValA,\n                const int *csrRowPtrA, const int *csrColIndA,\n                const float *x, const float *beta,\n                float *y);\n```\n\nhipSPARSE assumes matrix A and vectors x, y are allocated in GPU memory space filled with data. Users\nare responsible for copying data to and from the host and device memory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frocm%2Fhipsparse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frocm%2Fhipsparse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frocm%2Fhipsparse/lists"}