{"id":21976772,"url":"https://github.com/terraindata/frc","last_synced_at":"2025-09-07T02:42:18.155Z","repository":{"id":97166981,"uuid":"114819495","full_name":"terraindata/frc","owner":"terraindata","description":"A fast reference counting library for C++","archived":false,"fork":false,"pushed_at":"2020-08-16T09:32:58.000Z","size":152,"stargazers_count":24,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-28T16:57:10.400Z","etag":null,"topics":["cpp","memory","memory-management","parallel-computing","reference-counting"],"latest_commit_sha":null,"homepage":null,"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/terraindata.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-12-19T22:59:27.000Z","updated_at":"2024-09-29T22:02:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"146ddf77-2eb5-4903-922a-85851bf3e7f6","html_url":"https://github.com/terraindata/frc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/terraindata/frc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraindata%2Ffrc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraindata%2Ffrc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraindata%2Ffrc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraindata%2Ffrc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terraindata","download_url":"https://codeload.github.com/terraindata/frc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terraindata%2Ffrc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273989379,"owners_count":25203253,"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","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cpp","memory","memory-management","parallel-computing","reference-counting"],"created_at":"2024-11-29T16:12:14.028Z","updated_at":"2025-09-07T02:42:18.143Z","avatar_url":"https://github.com/terraindata.png","language":"C++","readme":"Fast Reference Counter (FRC)\n\n(C) 2017, 2018 Terrain Data, Inc.\n\n## Introduction\n\nFRC is a high-performance reference counting library for C++.  It provides\nsmart pointer types with performance that greatly exceeds that of\n`std::shared_ptr` and `boost::atomic_shared_ptr`, for example; in\nparticular, FRC's reference-counted pointer types excel in concurrent\nscenarios (such as concurrent data structures).  A research paper describing\nFRC in detail is linked at the bottom of this file.\n\n## Organization\n\nThe repository consists of three main components:\n\n  * The FRC library\n  * Unit tests for the FRC library and supporting components\n  * Benchmarks for the FRC library\n\nSource code for the tests is located under the `test` folder, and source code\nfor the benchmarks is located under the `benchmark` folder.  Source code for\nthe FRC library is located under the `src` directory.\n\nAll build files (including binary output, CMake build scripts, Makefiles, etc.)\nare located under the `build` directory.  Each of the components of the\nrepository has its own subdirectory and associated `CMakeLists.txt` under the\nbuild directory.\n\nThe root-level `cmake` directory contains CMake helper routines, including the\ncommon compiler flags used for compiling the projects.\n\nThe root-level `lib` directory contains scripts (and, when the FRC library is\nbuilt, the corresponding headers/libraries) for downloading and building\ndependent libraries, such as Boost and Google Test (the latter being used for\nmanaging tests and benchmarks).\n\n## Dependencies\n\nFRC automatically downloads and builds certain dependencies like Boost.\nHowever, certain other dependencies may need to be installed.  For example,\nin order to run `apply_style.sh`, you should first install the following\ndependencies (written here as a one-line command for Debian-like operating\nsystems):\n```bash\nsudo apt-get install astyle\n```\n\n## Contributing\n\nWe welcome contributions to the FRC project.  Any new commits should be sure to\nadhere to our code style; please run `./apply_style.sh` each time you are about\nto make a commit in order to automatically enforce our code style.\n\n## License\n\nPlease see the included [COPYING.md](COPYING.md).\n\n## Using in a Research Project\n\nFor details on FRC, download our research paper for free\n[here](https://dl.acm.org/doi/10.1145/3299706.3210569?cid=99659276755).\nIf you use FRC in a research project, please cite our paper (citation below),\nand please let us know about your paper!\n\n\u003e Charles Tripp, David Hyde, and Benjamin Grossman-Ponemon. 2018.\n\u003e FRC: A High-Performance Concurrent Parallel Deferred Reference Counter for C++.\n\u003e In Proceedings of the 2018 ACM SIGPLAN International Symposium on Memory Management\n\u003e (ISMM '18). ACM, New York, NY, USA, 14-28.\n\u003e https://doi.org/10.1145/3210563.3210569\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterraindata%2Ffrc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterraindata%2Ffrc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterraindata%2Ffrc/lists"}