{"id":16748779,"url":"https://github.com/loyd/histopyramid-vs-quadtree.cl","last_synced_at":"2025-09-01T06:33:16.021Z","repository":{"id":150877457,"uuid":"173720675","full_name":"loyd/histopyramid-vs-quadtree.cl","owner":"loyd","description":"Comparison between quadtrees and hystopyramids in OpenCL","archived":false,"fork":false,"pushed_at":"2019-03-22T02:37:15.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-16T03:41:42.613Z","etag":null,"topics":["gpgpu","hystopyramid","opencl","pyopencl","quadtree"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/loyd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2019-03-04T10:08:08.000Z","updated_at":"2019-03-22T02:37:16.000Z","dependencies_parsed_at":"2023-04-20T20:16:56.258Z","dependency_job_id":null,"html_url":"https://github.com/loyd/histopyramid-vs-quadtree.cl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/loyd/histopyramid-vs-quadtree.cl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loyd%2Fhistopyramid-vs-quadtree.cl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loyd%2Fhistopyramid-vs-quadtree.cl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loyd%2Fhistopyramid-vs-quadtree.cl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loyd%2Fhistopyramid-vs-quadtree.cl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/loyd","download_url":"https://codeload.github.com/loyd/histopyramid-vs-quadtree.cl/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/loyd%2Fhistopyramid-vs-quadtree.cl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273082408,"owners_count":25042282,"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-01T02:00:09.058Z","response_time":120,"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":["gpgpu","hystopyramid","opencl","pyopencl","quadtree"],"created_at":"2024-10-13T02:22:51.411Z","updated_at":"2025-09-01T06:33:15.514Z","avatar_url":"https://github.com/loyd.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quadtrees versus histopyramids in OpenCL\n\n## Usage\n\n```sh\npython3 src/main.py -h\n```\n```\nusage: main.py [-h] [-q] [-p] -d DEPTH -n POINTS [-i ITERS] [-w WARMUP]\n\nComparison between quadtrees and histopyramids\n----------------------------------------------\nRun and show details:\n    main.py -q -h -d 6 -n 5000\n\nRun through many depths:\n    main.py -q -h -d 6:10:2 -n 5000\n\nRun through many point counts:\n    main.py -q -h -d 8 -n 1000:50000:10000\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -q, --quadtree\n  -p, --histopyramid\n  -d DEPTH, --depth DEPTH\n  -n POINTS, --points POINTS\n  -i ITERS, --iters ITERS\n  -w WARMUP, --warmup WARMUP\n```\n\nYou might be interested in running `src/checkperf.py` before any benchmarks.\n\n## Results\n\nThe results below are measured on GTX 1060.\n\nFirstly, determine some characteristics of GPU using `src/checkperf.py`:\n```\nCommand latency: 18.057 us\nProfiling overhead: 4.037 us -\u003e 22.4 %\nEmpty kernel: 25.643 us\nfloat32 add: 52041.972 GOps/s\n```\n\nThen, run some benchmarks using `src/main.py`.\n\nLegend:\n* `H net`/`Q net` - spent time in **ms** on one iteration, GPU only.\n* `H total`/`Q total` - spent time in **ms** on one iteration.\n\n```\nDepth   Points  H net   H total Q net   Q total\n12      1       1.06    1.77    0.014   0.066\n12      500     1.06    1.78    1.59    1.69\n12      1000    1.06    1.78    3.22    3.32\n12      2000    1.06    1.78    6.35    6.48\n12      3000    1.07    1.79    7.42    7.57\n12      4000    1.08    1.80    9.91    10.1\n12      5000    1.06    1.78    12.4    12.5\n12      6000    1.08    1.80    14.9    15.0\n12      7000    1.09    1.82    17.4    17.5\n12      8000    1.08    1.81    19.9    20.0\n12      9000    1.11    1.84    22.3    22.5\n12      10000   1.22    1.90    29.1    29.2\n12      20000   1.23    1.99    49.1    49.3\n12      30000   1.29    2.07    73.9    74.1\n12      40000   1.40    2.21    98.7    98.9\n12      50000   1.47    2.30    124     124\n12      60000   1.57    2.44    150     150\n12      70000   1.63    2.51    175     175\n12      80000   1.74    2.65    199     200\n12      90000   1.81    2.74    225     225\n12      100000  1.91    2.87    250     250\n12      200000  2.51    3.43\n12      300000  3.59    5.03\n12      400000  4.41    6.10\n12      500000  5.24    7.15\n12      600000  6.00    8.14\n12      700000  6.78    9.15\n12      800000  7.57    10.2\n12      900000  8.35    11.2\n12      1000000 9.09    12.1\n```\n\n```\nDepth   Points  H net   H total\n1       500000  1050    1050\n2       500000  383     492\n3       500000  79.6    103\n4       500000  14.0    17.8\n5       500000  1.82    2.33\n6       500000  0.745   0.967\n7       500000  0.602   0.782\n8       500000  0.418   0.548\n9       500000  0.987   1.29\n10      500000  3.05    3.95\n11      500000  4.17    5.47\n12      500000  5.22    7.13\n13      500000  8.34    12.4\n14      500000  20.5    32.9\n15      500000  69.2    115\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floyd%2Fhistopyramid-vs-quadtree.cl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Floyd%2Fhistopyramid-vs-quadtree.cl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floyd%2Fhistopyramid-vs-quadtree.cl/lists"}