{"id":22668359,"url":"https://github.com/lanl/perfecthash","last_synced_at":"2025-10-05T22:36:55.579Z","repository":{"id":14159460,"uuid":"16865340","full_name":"lanl/PerfectHash","owner":"lanl","description":"A perfect hash code for CPUs and GPUs using OpenCL","archived":false,"fork":false,"pushed_at":"2020-10-24T14:54:44.000Z","size":761,"stargazers_count":16,"open_issues_count":1,"forks_count":6,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-19T16:06:24.437Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lanl.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-02-15T15:29:15.000Z","updated_at":"2025-02-13T00:35:49.000Z","dependencies_parsed_at":"2022-08-24T20:21:56.299Z","dependency_job_id":null,"html_url":"https://github.com/lanl/PerfectHash","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lanl/PerfectHash","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FPerfectHash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FPerfectHash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FPerfectHash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FPerfectHash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lanl","download_url":"https://codeload.github.com/lanl/PerfectHash/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FPerfectHash/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278532354,"owners_count":26002343,"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-10-05T02:00:06.059Z","response_time":54,"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":[],"created_at":"2024-12-09T15:14:50.757Z","updated_at":"2025-10-05T22:36:55.564Z","avatar_url":"https://github.com/lanl.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"This code is a set of hash functions to support the paper \"Hash-based Algorithms\nfor Discretized Data\" to be published in the SIAM Journal of Scientific \nComputing\". The publication details are below and in the Papers.bib file in bibtex\nformat. \n\n   Robey,R.N., Nicholaeff,D., and Robey,R.W. \"Hash-Based Algorithms for Discretized Data\", \n   SIAM Journal of Scientific Computing, July 2013, Volume 35, Number 4, C346--C368\n\n   The pre-publication version has the LANL report number LA-UR-12-01566.\n\nThis code has been released under an open-source Apache 2 license to\nencourage further development of hashing methods. See the LICENSE file for more\ninformation about the license and the use of this code.\n\nThrough a web search we hope to gather statistics on the use of the method\nand its improvements and help to encourage more open technology transfer by LANL\nand other government research organizations. This can be thought of as analagous\nto journal article citations, but within software products. If code is not\ndistributed with a software product, a reference should be provided in a text\nfile so that attribution can be determined.\n\nUnder this license, it is required to include a reference to this work. We\nrequest that each derivative work contain a reference to LANL Copyright \nDisclosure C13002/LA-CC-12-022 so that this work’s impact can be roughly\nmeasured. In addition, it is requested that a modifier is included as in\nthe following example:\n\n//\u003cUses | improves on | modified from\u003e LANL Copyright Disclosure C13002/LA-CC-12-022\n\nThis is LANL Copyright Disclosure C13002/LA-CC-12-022\n\nAuthors: Bob Robey       XCP-2   brobey@lanl.gov\n         David Nicholaeff        dnic@lanl.gov, mtrxknight@aol.com\n         Rachel Robey            rnrobey@gmail.com\n\nThis code uses cmake for builds. To build the code:\n\ncmake .\nmake\n\nThere will be several executables built -- sort, sort2d, neigh, neigh2d, remap, remap2d, table\n\nEach executable runs all of the methods for the mesh operation. There is a controlling\nloop at the top of the main routine that users may want to modify for the algorithms\nto be run. Also, there is a random number seed for varying the problem setups that is\nnormally off, but users may want to turn on for some investigations. Results do vary for\ndifferent problems, but the pattern does not change significantly. Also, the OpenCL library\nlooks for a GPU to use for the OpenCL code. This may need to be modified for your particular\nhardware.\n\nOutput should look something like the following:\n\n    Sorting Performance Results\n\nSize,   \tQsort,    \tHeapsort, \tMergesort, \tHash CPU, \tHash GPU\n\nMax diff is 1 times min_diff\n1024,     \t0.000105,\t0.000168,\t0.000123,\t0.000010,\t0.000294,\n2048,     \t0.000223,\t0.000353,\t0.000262,\t0.000020,\t0.000330,\n4096,     \t0.000493,\t0.000781,\t0.000573,\t0.000040,\t0.000400,\n8192,     \t0.001036,\t0.001683,\t0.001135,\t0.000079,\t0.000610,\n16384,     \t0.002242,\t0.003470,\t0.002613,\t0.000161,\t0.000934,\n32768,     \t0.005360,\t0.007348,\t0.005469,\t0.000415,\t0.001535,\n65536,     \t0.011800,\t0.015796,\t0.012560,\t0.000800,\t0.002629,\n131072,     \t0.020707,\t0.036958,\t0.024513,\t0.001561,\t0.005294,\n262144,     \t0.042710,\t0.075466,\t0.052864,\t0.003751,\t0.011301,\n524288,     \t0.089662,\t0.167398,\t0.113505,\t0.011855,\t0.024291,\n1048576,     \t0.185135,\t0.407333,\t0.249813,\t0.026447,\t0.018890,\n2097152,     \t0.385789,\t1.018970,\t0.498638,\t0.063970,\t0.114473,\n4194304,     \t0.818016,\t2.475966,\t1.052133,\t0.141997,\t0.246392,\n8388608,     \t1.696586,\t5.843146,\t2.184568,\t0.307373,\t0.503904,\n\nMax diff is 2 times min_diff\n1024,     \t0.000102,\t0.000168,\t0.000121,\t0.000015,\t0.000303,\n2048,     \t0.000224,\t0.000332,\t0.000240,\t0.000026,\t0.000339,\n   ...\n   ...\n   ...\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanl%2Fperfecthash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flanl%2Fperfecthash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanl%2Fperfecthash/lists"}