{"id":18421940,"url":"https://github.com/spcl/mignificient","last_synced_at":"2026-02-21T06:09:36.248Z","repository":{"id":236601523,"uuid":"755252416","full_name":"spcl/mignificient","owner":"spcl","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-26T12:46:49.000Z","size":28570,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-03-26T13:41:05.881Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spcl.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":"2024-02-09T18:38:22.000Z","updated_at":"2025-03-26T12:46:52.000Z","dependencies_parsed_at":"2024-04-28T02:00:20.172Z","dependency_job_id":"e2205962-08a2-4b15-8e4d-629b9f1da427","html_url":"https://github.com/spcl/mignificient","commit_stats":null,"previous_names":["spcl/mignificient"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fmignificient","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fmignificient/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fmignificient/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fmignificient/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spcl","download_url":"https://codeload.github.com/spcl/mignificient/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710445,"owners_count":21149190,"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-11-06T04:27:23.678Z","updated_at":"2026-02-21T06:09:31.228Z","avatar_url":"https://github.com/spcl.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mignificient\n\n\n\n# Dependencies\n\nCUDA 11.6\n\ncuDNN 8.9.7 for CUDA 11\n\nlibacl - if these are not available on your system (usually visible through compilation errors caused by missing headers) and you can't install them as package, then install them locally in `DEPS_PATH`.\n\nhttps://download.savannah.nongnu.org/releases/acl/acl-2.3.2.tar.xz\n\npybind11\n\n## Example of building on cluster\n\nWe assume that libiberty is installed in `DEPS_PATH`\n\n```\npybind11_DIR=\u003cpath-to-your-python/lib/python3.12/site-packages/pybind11 cmake -DCUDNN_DIR=\u003cyour-cuddn-installation\u003e/cudnn-8/ -DCMAKE_C_FLAGS=\"-I ${DEPS_PATH}/include\" -DCMAKE_CXX_FLAGS=\"-I ${DEPS_PATH}/include\" -DCMAKE_CXX_STANDARD_LIBRARIES=\"-L${DEPS_PATH}/lib\"  -DCMAKE_BUILD_TYPE=Release ../\n```\n\nIf JsonCpp is not available, then install it and pass explicitly:\n\n```\njsoncpp_DIR=/path/to/install\n```\n\n## Running on the cluster\n\nWe assume two environment variables `REPO_DIR` and `BUILD_DIR` that point to source code and build directory, respectively.\n\n### Generate device config\n\nThis step only needs to be done once for each node:\n\n```\n${REPO_DIR}/tools/list-gpus.sh logs\n```\n\nThis will create a file `logs/devices.json` with config used later by orchestrator.\n\n### Start Iceoryx's Roudi\n\nThis step only needs to be done once when starting MIGnificient on a node. In case of issues with iceoryx, kill `iox-roudi` process and start it again.\n\n```\n${REPO_DIR}/tools/start.sh ${BUILD_DIR} logs\n```\n\n### Start MIGnificient orchestrator.\n\nThere is only one orchestrator per node. Currently, it is recommended to restart orchestrator between experiments (avoids some minor bugs).\n\nThe command below starts the orchestrator in the background:\n\n```\n${BUILD_DIR}/orchestrator/orchestrator ${BUILD_DIR}/config/orchestrator.json ${REPO_DIR}/logs/devices.json \u003e orchestrator_output.log 2\u003e\u00261 \u0026\n```\n\nIn the output file, you should see something similar to:\n\n```\n[2025-02-03 20:56:04.324] [info] Reading configuration from /scratch/mcopik/gpus/new_september/build_conda_release/config/orchestrator.json, device database from /scratch/mcopik/gpus/new_september/mignificient/logs/devices.json\n2025-02-03 20:56:04.329 [ Debug ]: Application registered management segment 0x15554e240000 with size 65796264 to id 1\n2025-02-03 20:56:04.347 [ Debug ]: Application registered payload data segment 0x1553d4e42000 with size 6293584200 to id 2\n[2025-02-03 20:56:04.348] [info] Listening on port 10000\n```\n\n### Start invoker\n\nThis test processes takes a benchmark configuration as an input, and starts sending HTTP requests to orchestrator to run GPU functions.\n\nWe will use the CUDA example of vector addition.\n\n```\n${BUILD_DIR}/invoker/bin/invoker ${BUILD_DIR}/examples/vector_add.json result.csv\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Fmignificient","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspcl%2Fmignificient","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Fmignificient/lists"}