Title: About Efficiency Sparse Dense Multiplication · Issue #550 · python-graphblas/python-graphblas · GitHub
Open Graph Title: About Efficiency Sparse Dense Multiplication · Issue #550 · python-graphblas/python-graphblas
X Title: About Efficiency Sparse Dense Multiplication · Issue #550 · python-graphblas/python-graphblas
Description: Hi, thank you so much for a great project. May I ask a small question related to sparse and dense matrix operation? The case is that I want to conduct a multiplication between sparse and dense matrix. In detail, the sparsity of the 2 pro...
Open Graph Description: Hi, thank you so much for a great project. May I ask a small question related to sparse and dense matrix operation? The case is that I want to conduct a multiplication between sparse and dense matr...
X Description: Hi, thank you so much for a great project. May I ask a small question related to sparse and dense matrix operation? The case is that I want to conduct a multiplication between sparse and dense matr...
Opengraph URL: https://github.com/python-graphblas/python-graphblas/issues/550
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"About Efficiency Sparse Dense Multiplication","articleBody":"Hi, thank you so much for a great project. May I ask a small question related to sparse and dense matrix operation? The case is that I want to conduct a multiplication between sparse and dense matrix. In detail, the sparsity of the 2 project is given as below:\r\n```\r\nX shape: (200000, 50000) \r\nC shape: (50000, 100)\r\n#nnz X: 99500704\r\n#nnz C: 3160328\r\nSparsity of X: 0.0099500704\r\nSparsity of C: 0.6320656\r\n```\r\nWhere X is a sparse matrix and C is a dense one. In theory, C should be stored in dense format in order to make the operation to be efficient instead of sparse one. However, using bitmap/dense matrix provided by GraphBLAS is not as efficient as compared to MKL code for sparse * dense operation\r\n```\r\n##################### python-graphblas (Default Setting - 32 Threads - CSR Format * BitmapC Format) #####################\r\nConvert Scipy Sparse Format -\u003e python-graphblas Format (s) 0.6137485504150391\r\nSparse * Sparse computing time (s) 2.929335117340088\r\nSparse * Sparse computing time (s) 2.9536073207855225\r\nSparse * Sparse computing time (s) 2.9327011108398438\r\nSparse * Sparse computing time (s) 2.946722984313965\r\nSparse * Sparse computing time (s) 2.942711114883423\r\nSparse * Sparse computing time (s) 2.959540843963623\r\nSparse * Sparse computing time (s) 2.9557604789733887\r\nSparse * Sparse computing time (s) 2.946617364883423\r\nSparse * Sparse computing time (s) 2.9554543495178223\r\nSparse * Sparse computing time (s) 2.9580225944519043\r\nSparse * Sparse computing time (s) 2.9371848106384277\r\nSparse * Sparse computing time (s) 2.9504570960998535\r\nSparse * Sparse computing time (s) 2.956547498703003\r\nSparse * Sparse computing time (s) 2.9532806873321533\r\nSparse * Sparse computing time (s) 2.947199821472168\r\nSparse * Sparse computing time (s) 2.952831745147705\r\nSparse * Sparse computing time (s) 2.950216293334961\r\nSparse * Sparse computing time (s) 2.950721025466919\r\nSparse * Sparse computing time (s) 2.958610773086548\r\nSparse * Sparse computing time (s) 2.952730894088745\r\nMean Runtime: 2.9495126962661744\r\nStd Runtime: 0.008198427827772714\r\n\r\n##################### python-graphblas (Default Setting - 32 Threads - CSR Format * FullC Format) #####################\r\nConvert Scipy Sparse Format -\u003e python-graphblas Format (s) 0.5988132953643799\r\nSparse * Sparse computing time (s) 1.73736572265625\r\nSparse * Sparse computing time (s) 1.744694709777832\r\nSparse * Sparse computing time (s) 1.7468664646148682\r\nSparse * Sparse computing time (s) 1.7360756397247314\r\nSparse * Sparse computing time (s) 1.7450006008148193\r\nSparse * Sparse computing time (s) 1.7598528861999512\r\nSparse * Sparse computing time (s) 1.7438948154449463\r\nSparse * Sparse computing time (s) 1.7407243251800537\r\nSparse * Sparse computing time (s) 1.7503554821014404\r\nSparse * Sparse computing time (s) 1.740696907043457\r\nSparse * Sparse computing time (s) 1.757706642150879\r\nSparse * Sparse computing time (s) 1.7401001453399658\r\nSparse * Sparse computing time (s) 1.7460541725158691\r\nSparse * Sparse computing time (s) 1.7468533515930176\r\nSparse * Sparse computing time (s) 1.751969337463379\r\nSparse * Sparse computing time (s) 1.7436254024505615\r\nSparse * Sparse computing time (s) 1.7455754280090332\r\nSparse * Sparse computing time (s) 1.7475886344909668\r\nSparse * Sparse computing time (s) 1.7609961032867432\r\nSparse * Sparse computing time (s) 1.7456836700439453\r\nMean Runtime: 1.7465840220451354\r\nStd Runtime: 0.006642586857441714\r\n```\r\n\r\n\r\n```\r\n##################### MKL (Default Settings - 16 Threads - Sparse CSR Format * Dense Numpy Format) #####################\r\nSparse * Sparse computing time (s) 0.6445832252502441\r\nSparse * Sparse computing time (s) 0.6223111152648926\r\nSparse * Sparse computing time (s) 0.6190366744995117\r\nSparse * Sparse computing time (s) 0.6191632747650146\r\nSparse * Sparse computing time (s) 0.617084264755249\r\nSparse * Sparse computing time (s) 0.6194536685943604\r\nSparse * Sparse computing time (s) 0.6174299716949463\r\nSparse * Sparse computing time (s) 0.6181790828704834\r\nSparse * Sparse computing time (s) 0.6196620464324951\r\nSparse * Sparse computing time (s) 0.6216928958892822\r\nSparse * Sparse computing time (s) 0.6174044609069824\r\nSparse * Sparse computing time (s) 0.6212775707244873\r\nSparse * Sparse computing time (s) 0.6180646419525146\r\nSparse * Sparse computing time (s) 0.6177294254302979\r\nSparse * Sparse computing time (s) 0.6187028884887695\r\nSparse * Sparse computing time (s) 0.6197123527526855\r\nSparse * Sparse computing time (s) 0.6219933032989502\r\nSparse * Sparse computing time (s) 0.6392252445220947\r\nSparse * Sparse computing time (s) 0.6407394409179688\r\nSparse * Sparse computing time (s) 0.6248526573181152\r\n\r\nMean Runtime: 0.6229149103164673\r\nStd Runtime: 0.008091237575214866\r\n```\r\n\r\nCould you please kindly suggest any format from GraphBLAS to solve this problem? Thank you so much in advance!","author":{"url":"https://github.com/khoinpd0411","@type":"Person","name":"khoinpd0411"},"datePublished":"2024-11-24T21:11:25.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":4},"url":"https://github.com/550/python-graphblas/issues/550"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:8ce31727-1d77-9dcf-da0e-521947b21475 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | A826:1581ED:846A3F:B67D4D:698E0BC9 |
| html-safe-nonce | 47ff47ddcfdf9db92d2592eb938aeebd796d747b09c2df0e522869b4b72a003d |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBODI2OjE1ODFFRDo4NDZBM0Y6QjY3RDREOjY5OEUwQkM5IiwidmlzaXRvcl9pZCI6IjY3NjE0NDU2MDU3MjgxOTM0ODEiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | ed6b86bf7278f650bc16a9a0f2e8874587953fbd1a1b9873902dbf39e15ef90a |
| hovercard-subject-tag | issue:2688391363 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python-graphblas/python-graphblas/550/issue_layout |
| twitter:image | https://opengraph.githubassets.com/07703c0586aeae2b56afdaa51d947208f1b6489bbde41c072cec72c46c2d5e76/python-graphblas/python-graphblas/issues/550 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/07703c0586aeae2b56afdaa51d947208f1b6489bbde41c072cec72c46c2d5e76/python-graphblas/python-graphblas/issues/550 |
| og:image:alt | Hi, thank you so much for a great project. May I ask a small question related to sparse and dense matrix operation? The case is that I want to conduct a multiplication between sparse and dense matr... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | khoinpd0411 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 70a88bfe6d9639434ae7f5a46d15c336b8884978a51526bc55fc57d848f1e3c1 |
| turbo-cache-control | no-preview |
| go-import | github.com/python-graphblas/python-graphblas git https://github.com/python-graphblas/python-graphblas.git |
| octolytics-dimension-user_id | 103965858 |
| octolytics-dimension-user_login | python-graphblas |
| octolytics-dimension-repository_id | 221014819 |
| octolytics-dimension-repository_nwo | python-graphblas/python-graphblas |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 221014819 |
| octolytics-dimension-repository_network_root_nwo | python-graphblas/python-graphblas |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 2519b16db5550494a653f9a8837c14ef7df80804 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width