{"shas":[["361a9f50ff7b7e73f3ba1b970b49ded124872bd2","b15c342f1de186996bcca5e1a23cd684d2fadb32@sandberg.pp.se","perfgroup: A tool to measure performance of groups of processes\n\nWe sometimes need to measure the performance of groups of\nprocesses. The perfgroup tool accomplishes this by providing roughly\nthe same features as rawperf, but instead of working on one process,\nit starts a group of processes and measures performance for each of\nthem.\n\nFor the UART people: This is basically a hybrid between the old\nbenchrun tool and rawperf.","Andreas Sandberg"],["487939c8536b8de6ea4a72afcc0b67f880b0019b","b15c342f1de186996bcca5e1a23cd684d2fadb32@sandberg.pp.se","perfgroup: Support STDIN redirection\n\nSupport STDIN redirection for target processes. To use a file as\nstandard input for a processes, execute it like this:\n\nperfgroup -e hw:cpu_cycles -- ./target < input\n\nNote that you will most likely need to escape the input redirection\ncharacter (<).","Andreas Sandberg"],["fb0d408796502c914845107a0de5d758d34152e3","b15c342f1de186996bcca5e1a23cd684d2fadb32@sandberg.pp.se","perfgroup: Support working directory specification\n\nWhen running some benchmarks, it is useful to be able to specify a\nworking directory. This patch adds support for this using the\nfollowing syntax:\n\nperfgroup -e hw:cpu_cycles -- @/path ./target\n\nThe working directory will be changed before the target application is\nexec'ed, so the path to the target should be specified relative to the\nspecified working directory.","Andreas Sandberg"],["a8d6c463e38338110e0cd3d47b753a96dd97f7fb","b15c342f1de186996bcca5e1a23cd684d2fadb32@sandberg.pp.se","perfgroup: Catch fatal signals and try to do some cleanup\n\nThere are various reasons why perfgroup may receive a fatal\nsignal. One reason might be a failed assertion that causes a SIGABRT\nto be raised. In this case, we need to make sure that all child\nprocesses are terminated as well.\n\nWe accomplish this by installing a signal handler that sends a SIGTERM\nto all child process groups and then raising the original signal. We\ndon't need to explicitly unmask and install the original handler for\nthe signal since sigaction, with the right flags, does this for us.","Andreas Sandberg"]],"repo":"andysan/perf_tools","actor":"andysan","ref":"refs/heads/groupstats","size":4,"head":"a8d6c463e38338110e0cd3d47b753a96dd97f7fb","actor_gravatar":"ac1ab5efe174a9ffbdb8a810b673b1a4","push_id":24146530}