{"record_type":"pith_number_record","schema_url":"https://pith.science/schemas/pith-number/v1.json","pith_number":"pith:2017:2IJ7JTXEUR73DKCQ3YMX4PKOGF","short_pith_number":"pith:2IJ7JTXE","schema_version":"1.0","canonical_sha256":"d213f4cee4a47fb1a850de197e3d4e3168602fe733d82b673a5ca4580f78a893","source":{"kind":"arxiv","id":"1701.01189","version":2},"attestation_state":"computed","paper":{"title":"GPU Multisplit: an extended study of a parallel algorithm","license":"http://creativecommons.org/licenses/by/4.0/","headline":"","cross_cats":[],"primary_cat":"cs.DC","authors_text":"Andrew Davidson, John D. Owens, Saman Ashkiani, Ulrich Meyer","submitted_at":"2017-01-05T01:00:27Z","abstract_excerpt":"Multisplit is a broadly useful parallel primitive that permutes its input data into contiguous buckets or bins, where the function that categorizes an element into a bucket is provided by the programmer. Due to the lack of an efficient multisplit on GPUs, programmers often choose to implement multisplit with a sort. One way is to first generate an auxiliary array of bucket IDs and then sort input data based on it. In case smaller indexed buckets possess smaller valued keys, another way for multisplit is to directly sort input data. Both methods are inefficient and require more work than necess"},"verification_status":{"content_addressed":true,"pith_receipt":true,"author_attested":false,"weak_author_claims":0,"strong_author_claims":0,"externally_anchored":false,"storage_verified":false,"citation_signatures":0,"replication_records":0,"graph_snapshot":true,"references_resolved":false,"formal_links_present":false},"canonical_record":{"source":{"id":"1701.01189","kind":"arxiv","version":2},"metadata":{"license":"http://creativecommons.org/licenses/by/4.0/","primary_cat":"cs.DC","submitted_at":"2017-01-05T01:00:27Z","cross_cats_sorted":[],"title_canon_sha256":"8f173a58441bb14a6f6342f59b7c5dbe0029dff411cc2201be8da5f78b048b6b","abstract_canon_sha256":"a4d8d62f8847fd5b1f89e05ebd1fac4877c755294816cc0a601f013d020704e7"},"schema_version":"1.0"},"receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-05-18T00:35:51.576646Z","signature_b64":"DTOztVrj1kp6C6dnjjON0gajX7dLNoagS6rZEIQEvtBY6W7Lf/LccTsOmkombaHSu/OcjPK+Ww/wBfqEdG/LBQ==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"d213f4cee4a47fb1a850de197e3d4e3168602fe733d82b673a5ca4580f78a893","last_reissued_at":"2026-05-18T00:35:51.576122Z","signature_status":"signed_v1","first_computed_at":"2026-05-18T00:35:51.576122Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"graph_snapshot":{"paper":{"title":"GPU Multisplit: an extended study of a parallel algorithm","license":"http://creativecommons.org/licenses/by/4.0/","headline":"","cross_cats":[],"primary_cat":"cs.DC","authors_text":"Andrew Davidson, John D. Owens, Saman Ashkiani, Ulrich Meyer","submitted_at":"2017-01-05T01:00:27Z","abstract_excerpt":"Multisplit is a broadly useful parallel primitive that permutes its input data into contiguous buckets or bins, where the function that categorizes an element into a bucket is provided by the programmer. Due to the lack of an efficient multisplit on GPUs, programmers often choose to implement multisplit with a sort. One way is to first generate an auxiliary array of bucket IDs and then sort input data based on it. In case smaller indexed buckets possess smaller valued keys, another way for multisplit is to directly sort input data. Both methods are inefficient and require more work than necess"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"1701.01189","kind":"arxiv","version":2},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"aliases":[{"alias_kind":"arxiv","alias_value":"1701.01189","created_at":"2026-05-18T00:35:51.576195+00:00"},{"alias_kind":"arxiv_version","alias_value":"1701.01189v2","created_at":"2026-05-18T00:35:51.576195+00:00"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.1701.01189","created_at":"2026-05-18T00:35:51.576195+00:00"},{"alias_kind":"pith_short_12","alias_value":"2IJ7JTXEUR73","created_at":"2026-05-18T12:30:55.937587+00:00"},{"alias_kind":"pith_short_16","alias_value":"2IJ7JTXEUR73DKCQ","created_at":"2026-05-18T12:30:55.937587+00:00"},{"alias_kind":"pith_short_8","alias_value":"2IJ7JTXE","created_at":"2026-05-18T12:30:55.937587+00:00"}],"events":[],"event_summary":{},"paper_claims":[],"inbound_citations":{"count":0,"internal_anchor_count":0,"sample":[]},"formal_canon":{"evidence_count":0,"sample":[],"anchors":[]},"links":{"html":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF","json":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF.json","graph_json":"https://pith.science/api/pith-number/2IJ7JTXEUR73DKCQ3YMX4PKOGF/graph.json","events_json":"https://pith.science/api/pith-number/2IJ7JTXEUR73DKCQ3YMX4PKOGF/events.json","paper":"https://pith.science/paper/2IJ7JTXE"},"agent_actions":{"view_html":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF","download_json":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF.json","view_paper":"https://pith.science/paper/2IJ7JTXE","resolve_alias":"https://pith.science/api/pith-number/resolve?arxiv=1701.01189&json=true","fetch_graph":"https://pith.science/api/pith-number/2IJ7JTXEUR73DKCQ3YMX4PKOGF/graph.json","fetch_events":"https://pith.science/api/pith-number/2IJ7JTXEUR73DKCQ3YMX4PKOGF/events.json","actions":{"anchor_timestamp":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF/action/timestamp_anchor","attest_storage":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF/action/storage_attestation","attest_author":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF/action/author_attestation","sign_citation":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF/action/citation_signature","submit_replication":"https://pith.science/pith/2IJ7JTXEUR73DKCQ3YMX4PKOGF/action/replication_record"}},"created_at":"2026-05-18T00:35:51.576195+00:00","updated_at":"2026-05-18T00:35:51.576195+00:00"}