{"id":13419139,"url":"https://github.com/cusplibrary/cusplibrary","last_synced_at":"2025-03-15T04:32:06.371Z","repository":{"id":4397379,"uuid":"5534514","full_name":"cusplibrary/cusplibrary","owner":"cusplibrary","description":"CUSP : A C++ Templated Sparse Matrix Library","archived":false,"fork":false,"pushed_at":"2023-12-22T22:29:05.000Z","size":4618,"stargazers_count":391,"open_issues_count":36,"forks_count":133,"subscribers_count":39,"default_branch":"main","last_synced_at":"2024-07-31T22:45:50.362Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://cusplibrary.github.io","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cusplibrary.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2012-08-24T01:13:26.000Z","updated_at":"2024-07-31T06:49:20.000Z","dependencies_parsed_at":"2024-01-13T16:20:30.592Z","dependency_job_id":"10f4729f-7e6c-4bca-9a02-e521e05c3e68","html_url":"https://github.com/cusplibrary/cusplibrary","commit_stats":{"total_commits":1200,"total_committers":12,"mean_commits":100.0,"dds":0.4,"last_synced_commit":"dc77579004a5d79a79c9463d7a9621834e73d089"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cusplibrary%2Fcusplibrary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cusplibrary%2Fcusplibrary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cusplibrary%2Fcusplibrary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cusplibrary%2Fcusplibrary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cusplibrary","download_url":"https://codeload.github.com/cusplibrary/cusplibrary/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243685506,"owners_count":20330980,"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-07-30T22:01:11.862Z","updated_at":"2025-03-15T04:32:05.846Z","avatar_url":"https://github.com/cusplibrary.png","language":"C++","readme":"## CUSP : A C++ Templated Sparse Matrix Library\n\n| Linux | Windows | Coverage |\n| ----- | ------- | -------- |\n| [![Linux](https://travis-ci.org/sdalton1/cusplibrary.png)](https://travis-ci.org/sdalton1/cusplibrary) | [![Windows](https://ci.appveyor.com/api/projects/status/36pf1oqwkfq6xekn?svg=true)](https://ci.appveyor.com/project/StevenDalton/cusplibrary) | [![Coverage](https://coveralls.io/repos/sdalton1/cusplibrary/badge.svg?branch=master)](https://coveralls.io/r/sdalton1/cusplibrary?branch=master) |\n\nFor more information, see the project documentation at [CUSP Website](http://cusplibrary.github.io).\n\n### A Simple Example\n\n```C++\n#include \u003ccuda.h\u003e\n#include \u003cthrust/version.h\u003e\n\n#include \u003ccusp/version.h\u003e\n#include \u003ccusp/hyb_matrix.h\u003e\n#include \u003ccusp/io/matrix_market.h\u003e\n#include \u003ccusp/krylov/cg.h\u003e\n\n#include \u003ciostream\u003e\n\nint main(void)\n{\n    int cuda_major =  CUDA_VERSION / 1000;\n    int cuda_minor = (CUDA_VERSION % 1000) / 10;\n    int thrust_major = THRUST_MAJOR_VERSION;\n    int thrust_minor = THRUST_MINOR_VERSION;\n    int cusp_major = CUSP_MAJOR_VERSION;\n    int cusp_minor = CUSP_MINOR_VERSION;\n    std::cout \u003c\u003c \"CUDA   v\" \u003c\u003c cuda_major   \u003c\u003c \".\" \u003c\u003c cuda_minor   \u003c\u003c std::endl;\n    std::cout \u003c\u003c \"Thrust v\" \u003c\u003c thrust_major \u003c\u003c \".\" \u003c\u003c thrust_minor \u003c\u003c std::endl;\n    std::cout \u003c\u003c \"Cusp   v\" \u003c\u003c cusp_major   \u003c\u003c \".\" \u003c\u003c cusp_minor   \u003c\u003c std::endl;\n\n    // create an empty sparse matrix structure (HYB format)\n    cusp::hyb_matrix\u003cint, float, cusp::device_memory\u003e A;\n\n    // load a matrix stored in Matrix-Market format\n    cusp::io::read_matrix_market_file(A, \"./testing/data/laplacian/5pt_10x10.mtx\");\n\n    // allocate storage for solution (x) and right hand side (b)\n    cusp::array1d\u003cfloat, cusp::device_memory\u003e x(A.num_rows, 0);\n    cusp::array1d\u003cfloat, cusp::device_memory\u003e b(A.num_rows, 1);\n\n    // solve the linear system A * x = b with the conjugate gradient method\n    cusp::krylov::cg(A, x, b);\n\n    return 0;\n}\n```\n\n CUSP is a header-only library.  To compile this example clone both CUSP and [Nvidia/cccl](https://github.com/NVIDIA/cccl):\n```shell\ngit@github.com:cusplibrary/cusplibrary.git\ncd cusplibrary\ngit clone git@github.com:NVIDIA/cccl.git\nnvcc -Icccl/thrust -Icccl/libcudacxx/include -Icccl/cub -I. example.cu -o example\n```\n\n### Stable Releases\n\nCUSP releases are labeled using version identifiers having three fields:\n\n| Date | Version | Date | Version |\n| ---- | ------- | ---- | ------- |\n|            |                                                                              | 03/13/2015 | [CUSP v0.5.0](https://github.com/cusplibrary/cusplibrary/archive/v0.5.0.zip) |\n|            |                                                                              | 08/30/2013 | [CUSP v0.4.0](https://github.com/cusplibrary/cusplibrary/archive/v0.4.0.zip) |\n|            |                                                                              | 03/08/2012 | [CUSP v0.3.1](https://github.com/cusplibrary/cusplibrary/archive/v0.3.1.zip) |\n|            |                                                                              | 02/04/2012 | [CUSP v0.3.0](https://github.com/cusplibrary/cusplibrary/archive/v0.3.0.zip) |\n|            |                                                                              | 05/30/2011 | [CUSP v0.2.0](https://github.com/cusplibrary/cusplibrary/archive/v0.2.0.zip) |\n| 04/28/2015 | [CUSP v0.5.1](https://github.com/cusplibrary/cusplibrary/archive/v0.5.1.zip) | 07/10/2010 | [CUSP v0.1.0](https://github.com/cusplibrary/cusplibrary/archive/v0.1.0.zip) |\n\n\n### Contributors\n\nCUSP is developed as an open-source project by [NVIDIA Research](http://research.nvidia.com).\n[Nathan Bell](http:github.com/wnbell) was the original creator and\n[Steven Dalton](http://github.com/sdalton1) is the current primary contributor.\n\nCUSP is available under the Apache v2.0 open source [LICENSE](./LICENSE)\n\n### Citing\n\n```shell\n@MISC{Cusp,\n  author = \"Steven Dalton and Nathan Bell and Luke Olson and Michael Garland\",\n  title = \"Cusp: Generic Parallel Algorithms for Sparse Matrix and Graph Computations\",\n  year = \"2014\",\n  url = \"http://cusplibrary.github.io/\", note = \"Version 0.5.0\"\n}\n```\n","funding_links":[],"categories":["TODO scan for Android support in followings","C++","Libraries 🗂️","Free/Open Source BLAS/Matrix Libraries"],"sub_categories":["Cross-Platform Libraries 🌍"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcusplibrary%2Fcusplibrary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcusplibrary%2Fcusplibrary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcusplibrary%2Fcusplibrary/lists"}