{"id":22668318,"url":"https://github.com/lanl/compacthash","last_synced_at":"2025-04-12T11:04:13.507Z","repository":{"id":14159428,"uuid":"16865306","full_name":"lanl/CompactHash","owner":"lanl","description":"A compact hash algorithm for CPUs and GPUs using OpenCL","archived":false,"fork":false,"pushed_at":"2020-09-26T15:07:41.000Z","size":1361,"stargazers_count":14,"open_issues_count":0,"forks_count":5,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-06-27T00:20:06.687Z","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":"sysen-limited/grunt-cucumber-coverage","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:27:23.000Z","updated_at":"2024-01-25T17:41:51.000Z","dependencies_parsed_at":"2022-09-24T17:44:23.344Z","dependency_job_id":null,"html_url":"https://github.com/lanl/CompactHash","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FCompactHash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FCompactHash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FCompactHash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lanl%2FCompactHash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lanl","download_url":"https://codeload.github.com/lanl/CompactHash/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228911888,"owners_count":17990774,"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","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:44.384Z","updated_at":"2024-12-09T15:14:45.241Z","avatar_url":"https://github.com/lanl.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Compact Hash Algorithms for Computational Meshes: Data from Neighbors 2D Testbed \n\nThis code is a set of hash functions applied to a sample mesh. It supports the paper \"Compact Hash Algorithms for Computational Meshes,\" submitted to the SIAM Journal of Scientific Computing.\n\nAuthors:\n\nBob Robey XCP-2 (brobey@lanl.gov)\nPeter Ahrens XCP-2 (peter.ahrens@lanl.gov, ptrahrens@gmail.com)\nSara Hartse XCP-2 (sara@lanl.gov, sara.hartse@gmail.com)\nRebecka Tumblin (rtumblin@lanl.gov, rebeckatumblin@gmail.com)\n\nOn a machine with at least one OpenCL compliant device:\n\nEnter the 'parallel_hash' directory\n\n   ./configure\n   make \n   ./neigh2d -o \u003ctrial options\u003e\n\nConfigure options\n   --enable-detailed-timing\n   --disable-write-mem-usage\n\n=================================================================\nBuilds with and without OpenCL\n=================================================================\nBy default, OpenCL is included in the build. This can be problematic\non some architectures. If OpenCL is not found, it will try to complete\nthe build without it and only the CPU routines will be available. You can\nbuild without OpenCL with a configure option:\n\n./configure --enable-opencl=no \n   or\n./configure --disable-opencl\n\nIf you want OpenCL in the build and the location of the OpenCL library\nis causing the problem, try setting the environment variables OPENCL_INCLUDE\nand OPENCL_LIBS to the locations of these files. \n\nIf the build fails, you may have to go into the hash subdirectory\nand force hash.c and hash.h to rebuild. Try \"make hash.c hash.h\" or\nremove the hash.c and hash.h files and make them. \n=================================================================\n\n\nOn Mac OSx install gnu-indent. The Mac version does not recognize some of the options that are used.\n\n'./neigh2d -h' gives further information on option keywords.\n\nThe option -r randomizes the cell data (default is not random)\nThe option -n sets the min mesh size and -N the max mesh size [ default is 256 min to 256 max ]\nThe option -l sets the min levmx     and -L the max levmx     [ default is 1 min to 5 max ]\n\nThe -t option refers to threshold for refinement of cells and can range from 1 to 100. Cells\nare randomly refined and a lower threshold means fewer will be refined. The default value\nis 20 and that was what was used in most of our trials.\n\nThe keywords for corresponding options are as follows:\n\nbr    Brute\nkd    kdtree\nhc    Hash CPU\nhlc   Hash Lib CPU\nhc1   Hash CPU 1\nhlc1  Hash Lib CPU 1\nhc2   Hash CPU 2\nhlc2  Hash Lib CPU 2\nhc3   Hash CPU 3\nhlc3  Hash Lib CPU 3\nholc3 Hash OldLib CPU 3\nhg    Hash GPU\nhg1   Hash GPU 1\nhg2   Hash GPU 2\nhg3   Hash GPU 3\nhlg   Hash Lib GPU\nhlg1  Hash Lib GPU 1\nhlg2  Hash Lib GPU 2\nhlg3  Hash Lib GPU 3\nholg3 Hash OldLib GPU 3\n  \nOur figures:\n\nMemory optimizations figure (each run on a Kepler)\nUse the -r randomization flag\nhg\nhg1\nhg2\nhg3\nholg3\n\nCompact versus perfect figure (run on various cards)\nwith and without the -r randomization flag\n./neigh2d -r -t 2 -L 6 -o hg3 hlg3 and ./neigh2d -t 2 -L 6 -o hg3 hlg3\nhg3 \nholg3\n\nTable construction (each run on Kepler)\nNo randomization of cell data in adaptiveMeshConstructorWi -- don't use -r\nhc\nhg\nholg3\n\nOutput file features:\n\nHardware detection report - an overview of the CL devices and their information\nLocal work size - the size of the workgroup size\nSize - side length of mesh at coarsest level \nncells - total number of cells, accounting for refined cells\ncompression - The number of possible cells at most refined level/ncells\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanl%2Fcompacthash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flanl%2Fcompacthash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanl%2Fcompacthash/lists"}