{"id":19865595,"url":"https://github.com/ct-clmsn/mesos-papi","last_synced_at":"2025-10-11T14:46:03.940Z","repository":{"id":76760416,"uuid":"78487982","full_name":"ct-clmsn/mesos-papi","owner":"ct-clmsn","description":"papi performance counters for mesos and cloud applications","archived":false,"fork":false,"pushed_at":"2017-01-10T02:31:25.000Z","size":14,"stargazers_count":3,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-11T15:45:51.383Z","etag":null,"topics":["cloud","cloud-computing","hardware-topology","mesos","numa","performance-counter","performance-counters"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ct-clmsn.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-01-10T02:04:08.000Z","updated_at":"2017-05-19T12:19:42.000Z","dependencies_parsed_at":"2024-01-07T18:09:25.570Z","dependency_job_id":null,"html_url":"https://github.com/ct-clmsn/mesos-papi","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/ct-clmsn%2Fmesos-papi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ct-clmsn%2Fmesos-papi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ct-clmsn%2Fmesos-papi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ct-clmsn%2Fmesos-papi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ct-clmsn","download_url":"https://codeload.github.com/ct-clmsn/mesos-papi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241275017,"owners_count":19937293,"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":["cloud","cloud-computing","hardware-topology","mesos","numa","performance-counter","performance-counters"],"created_at":"2024-11-12T15:23:19.302Z","updated_at":"2025-10-11T14:45:58.889Z","avatar_url":"https://github.com/ct-clmsn.png","language":"C++","funding_links":[],"categories":["Other projects and Integrations"],"sub_categories":["Networking"],"readme":"cloud-papi\n\nthis project implements a Mesos Executor that adds\npapi (performance counter) support to Python, JVM,\nR, Ruby, and C/C++ applications running on a Mesos\ncluster/cloud.\n\nthe implementation uses a fork-exec technique to\nattach the papi library to the user's process in\norder to collect performance counter data\n\nfor python, jvm, r, ruby users, each system's\nruntime (interpreter or virtual machine) is embedded\ninto the executor - this was a requirement in order\nto collect accurate performance counter data using\npapi's 3rd party, process attachment feature set\n\npapi only supports collection of two counters\nworth of data\n\ndata is stored using google's log library\n\nusers will be able to run the papi mesos executor\nby adding a label to a task called 'PAPI' and then\nadd a space delimited string which enumerates up\nto 2 papi performance counters to enable.\n\ncloudpapi.cpp, line 239 provides an enumerative\nlisting of available performance counters.\n\n-----\n\ncontainer users won't necessarily be able to use\nthe MesosExecutor. papi will only work when it's\nattached to the interpreter's runtime executing\nthe interpreted program.\n\nto that end, embedded versions of python, jvm, r,\nand ruby have been integrated with papi's third\nparty attach capabilities.\n\ncontainers desiring papi support will need to add\na papi-enabled version of their respective\ninterpreter to the container.\n\n-----\n\nUsers will need to modify the project Makefile\nin order to compile the codes. The following\nMakefile variables will need to be modified.\n\n* MESOS_HOME = path to the mesos source tree\n\n* RTSUPPORT = used to select which interpreter(s)\n              support to enable\n\n-----\n\ndependencies\n\n  * PAPI http://icl.cs.utk.edu/papi/\n  * Python, R, Ruby, Jvm and their respective dependencies\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fct-clmsn%2Fmesos-papi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fct-clmsn%2Fmesos-papi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fct-clmsn%2Fmesos-papi/lists"}