{"record_type":"pith_number_record","schema_url":"https://pith.science/schemas/pith-number/v1.json","pith_number":"pith:2024:3OP5DQEFL4CGKX2BJHPGDLNLNC","short_pith_number":"pith:3OP5DQEF","schema_version":"1.0","canonical_sha256":"db9fd1c0855f04655f4149de61adab6890f19144675a825f17c5adf3a34a4075","source":{"kind":"arxiv","id":"2402.18480","version":1},"attestation_state":"computed","paper":{"title":"Libfork: portable continuation-stealing with stackless coroutines","license":"http://creativecommons.org/licenses/by-nc-nd/4.0/","headline":"","cross_cats":[],"primary_cat":"cs.DC","authors_text":"Conor John Williams, James Elliott","submitted_at":"2024-02-28T17:00:33Z","abstract_excerpt":"Fully-strict fork-join parallelism is a powerful model for shared-memory programming due to its optimal time scaling and strong bounds on memory scaling. The latter is rarely achieved due to the difficulty of implementing continuation stealing in traditional High Performance Computing (HPC) languages -- where it is often impossible without modifying the compiler or resorting to non-portable techniques. We demonstrate how stackless coroutines (a new feature in C++20) can enable fully-portable continuation stealing and present libfork a lock-free fine-grained parallelism library, combining corou"},"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":"2402.18480","kind":"arxiv","version":1},"metadata":{"license":"http://creativecommons.org/licenses/by-nc-nd/4.0/","primary_cat":"cs.DC","submitted_at":"2024-02-28T17:00:33Z","cross_cats_sorted":[],"title_canon_sha256":"240c772136aed7c29bfd85bf00fdf5f5d0dcd1ea151270294ed4cd9f462e6322","abstract_canon_sha256":"ce9aa8403e8ef4ab82b87a8ce02e503d3d9ffdbdf37b64fddd73ca31806586da"},"schema_version":"1.0"},"receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-07-05T07:50:16.615433Z","signature_b64":"Y0A1qpp6gjxoYGeFq8wYbcoLUviVnp327SVCO3mLhxpJ9wGDtQEfDxmvs0y7BEhYdCAba9lM59qeYqFnOe0FBQ==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"db9fd1c0855f04655f4149de61adab6890f19144675a825f17c5adf3a34a4075","last_reissued_at":"2026-07-05T07:50:16.614938Z","signature_status":"signed_v1","first_computed_at":"2026-07-05T07:50:16.614938Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"graph_snapshot":{"paper":{"title":"Libfork: portable continuation-stealing with stackless coroutines","license":"http://creativecommons.org/licenses/by-nc-nd/4.0/","headline":"","cross_cats":[],"primary_cat":"cs.DC","authors_text":"Conor John Williams, James Elliott","submitted_at":"2024-02-28T17:00:33Z","abstract_excerpt":"Fully-strict fork-join parallelism is a powerful model for shared-memory programming due to its optimal time scaling and strong bounds on memory scaling. The latter is rarely achieved due to the difficulty of implementing continuation stealing in traditional High Performance Computing (HPC) languages -- where it is often impossible without modifying the compiler or resorting to non-portable techniques. We demonstrate how stackless coroutines (a new feature in C++20) can enable fully-portable continuation stealing and present libfork a lock-free fine-grained parallelism library, combining corou"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2402.18480","kind":"arxiv","version":1},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2402.18480/integrity.json","findings":[],"available":true,"detectors_run":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938"},"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":"2402.18480","created_at":"2026-07-05T07:50:16.614998+00:00"},{"alias_kind":"arxiv_version","alias_value":"2402.18480v1","created_at":"2026-07-05T07:50:16.614998+00:00"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2402.18480","created_at":"2026-07-05T07:50:16.614998+00:00"},{"alias_kind":"pith_short_12","alias_value":"3OP5DQEFL4CG","created_at":"2026-07-05T07:50:16.614998+00:00"},{"alias_kind":"pith_short_16","alias_value":"3OP5DQEFL4CGKX2B","created_at":"2026-07-05T07:50:16.614998+00:00"},{"alias_kind":"pith_short_8","alias_value":"3OP5DQEF","created_at":"2026-07-05T07:50:16.614998+00:00"}],"events":[],"event_summary":{},"paper_claims":[],"inbound_citations":{"count":1,"internal_anchor_count":0,"sample":[{"citing_arxiv_id":"2607.00303","citing_title":"Promise-Future Synchronization for Cluster Asynchronous Many-Task Runtimes via MPI One-Sided Communication","ref_index":256,"is_internal_anchor":false}]},"formal_canon":{"evidence_count":0,"sample":[],"anchors":[]},"links":{"html":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC","json":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC.json","graph_json":"https://pith.science/api/pith-number/3OP5DQEFL4CGKX2BJHPGDLNLNC/graph.json","events_json":"https://pith.science/api/pith-number/3OP5DQEFL4CGKX2BJHPGDLNLNC/events.json","paper":"https://pith.science/paper/3OP5DQEF"},"agent_actions":{"view_html":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC","download_json":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC.json","view_paper":"https://pith.science/paper/3OP5DQEF","resolve_alias":"https://pith.science/api/pith-number/resolve?arxiv=2402.18480&json=true","fetch_graph":"https://pith.science/api/pith-number/3OP5DQEFL4CGKX2BJHPGDLNLNC/graph.json","fetch_events":"https://pith.science/api/pith-number/3OP5DQEFL4CGKX2BJHPGDLNLNC/events.json","actions":{"anchor_timestamp":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC/action/timestamp_anchor","attest_storage":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC/action/storage_attestation","attest_author":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC/action/author_attestation","sign_citation":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC/action/citation_signature","submit_replication":"https://pith.science/pith/3OP5DQEFL4CGKX2BJHPGDLNLNC/action/replication_record"}},"created_at":"2026-07-05T07:50:16.614998+00:00","updated_at":"2026-07-05T07:50:16.614998+00:00"}