{"id":22412075,"url":"https://github.com/jefflarkin/compute-profile-utils","last_synced_at":"2025-03-27T03:13:30.180Z","repository":{"id":5166755,"uuid":"6337495","full_name":"jefflarkin/compute-profile-utils","owner":"jefflarkin","description":"Utilities for making Nvidia Compute Command Line Profiler more useful in MPI applications","archived":false,"fork":false,"pushed_at":"2012-10-22T15:54:58.000Z","size":108,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-01T08:30:07.010Z","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":"owen2/AutomaticPackageRestoreMigrationScript","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jefflarkin.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}},"created_at":"2012-10-22T15:33:10.000Z","updated_at":"2017-01-03T10:31:26.000Z","dependencies_parsed_at":"2022-07-06T08:13:57.367Z","dependency_job_id":null,"html_url":"https://github.com/jefflarkin/compute-profile-utils","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/jefflarkin%2Fcompute-profile-utils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefflarkin%2Fcompute-profile-utils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefflarkin%2Fcompute-profile-utils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jefflarkin%2Fcompute-profile-utils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jefflarkin","download_url":"https://codeload.github.com/jefflarkin/compute-profile-utils/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245773180,"owners_count":20669719,"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-05T13:16:44.523Z","updated_at":"2025-03-27T03:13:30.154Z","avatar_url":"https://github.com/jefflarkin.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"compute-profile-utils\n=====================\nAuthor: Jeff Larkin \u003cjeff.larkin@gmail.com\u003e\n\nUtilities for making Nvidia Compute Command Line Profiler more useful in MPI applications.\n\nsetup_profile_filename.o\n------------------------\nThis object file is intended to add the ability to easily output a different compute profiler\nlog for each MPI rank. By default the file will be named compute_profile_\u003crank\u003e.log. It will\nalso set the lustre striping for each rank's file to 1.\n\n### USAGE\n#### C\n```C\nvoid compute_profile_filename();\nint main(int argc, char **argv)\n{\n  int ierr, rank, i;\n\n  MPI_Init(\u0026argc, \u0026argv);\n  compute_profile_filename();\n\n  ...\n\n  MPI_Finalize();\n  return ierr;\n}\n```\n#### Fortran\n```FORTRAN\nprogram main\n  use mpi\n  call mpi_init()\n  call compute_profile_filename()\n  \n  ...\n\n  call mpi_finalize()\nend program\n````\n\n#### Linking\nAdd `setup_profile_filename.o -L/opt/cray/lustre-cray_gem_s/default/lib64 -llustreapi`\n\n### Caveats\nThis utility has only been tested on Cray XK6 machines to date. There is no reason that it \nshouldn't work on other machines as well, but it will be necessary to either remove the lustre\nportions or update the link to -llustreapi.\n\n### TODO\n1. Add existing tests to repository\n2. Hook into PMPI interface to make usage automatic\n3. Add modulefile\n4. Check value of COMPUTE_PROFILE_LOG to allows user-defined file names\n5. Create MPI-aware post-processing utility.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjefflarkin%2Fcompute-profile-utils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjefflarkin%2Fcompute-profile-utils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjefflarkin%2Fcompute-profile-utils/lists"}