Performance Co-Pilot (PCP) is a system performance and analysis framework. It has an agent-based architecture, which has many kinds of agents called PMDAs, Performance Metric Domain Agents are responsible for collecting performance metrics. Each agent reports the collected metrics to a daemon, called the PMCD, Performance Metric Collection Daemon. We can see the collect values with PCP's set of client tools, pmval, pminfo, pmrep, etc.
Device-Mapper is the Linux kernel framework for mapping physical block devices onto higher-level virtual block devices.
It realizes software RAIDS, IO multipath, cache volumes, thin provisioning and snapshots.
To investigate Device-Mapper devices behavior, we sometimes need more flexible statistics data than traditional iostat data.
To make life easier for users who would like to use the PCP tools for their performance measurements and monitoring, We will create a new PCP PMDA that provides flexible and powerful IO statistics for Device-Mapper.
- A summary listing of my contributions is below.
- Implementing the above PMDA that can get a basic counter from dmstats has done and merged to master branch.
- Performance Co-Pilot main branch.
- My main contribution directory is under pcp/src/pmdas/dm.
- A listing of my contributions which includes that the code is not merged.
A function that can use dmstats latency and IO distribution histogram hasn't merged yet. We should test that code before merging the code. Some additional change is also expected. I'll have done it. We aim to include these functions on October PCP update.
I am grateful to bmr for helping dmstats fields, reviewing code and cooperating with me since the stage of writing GSoC proposal. I would like to thank Goodwins and Nathans for helping PCP side problem. I also thank PCP member for accepting me, helping me, giving me great summer experience.