- 21 Jan, 2019 6 commits
-
-
Sridutt Bhalachandra authored
Made necesseary fixes required to make the aggregative downstream api integration to work with the new downstream messaging layer. Also,fixed the case where daemon crashed when an application message (from libnrm using pmpi) was received after container was killed run_policy on all containers removed as the controller no longer has application manager info Any other refactoring and fixes required (check merge request discussion) See Issues #13, #20 and Merge !41
-
Sridutt Bhalachandra authored
Added support for pinning process/task to a core. This is important for allowing the use of power policies that use contextual information from an application phase and use it for computing frequency levels for the next phase. In absence of process/task pinning, the contextual information obtained does not serve any value as it is not representative of application phase behavior on a core as the processes and task can migrate during the next phase. See Issue #20
-
Sridutt Bhalachandra authored
Fixes NRM not returning the first N resources (cpu and memory). This is important for reproducibility and reducing variation
-
Sridutt Bhalachandra authored
Fixed the interaction of the multi-node support feature (#17) with the new messaging layer feature. Also, added any other fixes required to make the libnrm work with the Aggregative downstream API
-
Sridutt Bhalachandra authored
Adds support for aggregation of phase context information for an application. The damper value (in nanoseconds in the manifest file) decides the minimum phase length for which the phase context information is sent to the NRM (implemented in 'libnrm' repo [See Issue 2]). This will limit the number of msgs sent to the NRM. See Issue #13
-
Sridutt Bhalachandra authored
Refactored diff calculation code to work without needing changes in coolr module (Patch for Commit 36401a84)
-
- 09 Jan, 2019 6 commits
-
-
Valentin Reis authored
[fix] Fixes `cmd listen --filter` for power messages. See merge request !46
-
Valentin Reis authored
-
Valentin Reis authored
[feature] Adds a --filter option to `cmd` for pretty-printing. See merge request !44
-
Valentin Reis authored
The option accepts a message type and prints the values in the csv format: msgtype, time, payload if the --filter option is recognized msgtype, time otherwise The print is force-flushed on stdout. This switches CI to the "refactored" CI identifier at argotests/tests
-
Valentin Reis authored
Integration power See merge request !45
-
Valentin Reis authored
the gitlab-ci.yml file now points to argotest/gitlab/basic.yml on master.
-
- 07 Jan, 2019 2 commits
-
-
Valentin Reis authored
Fixes for cmd listen on power Closes #26 See merge request !42
-
Valentin Reis authored
This commits simplifies the CI setup for this repository, offloading all complexity to the "argotest" repository.
-
- 04 Jan, 2019 5 commits
-
-
Valentin Reis authored
-
Valentin Reis authored
-
Valentin Reis authored
This includes renaming "progress" to performance in argo_perf_wrapper. There are two distincts keywords in the messaging layer: "performance" for all things related to hardware, and "progress", for all things relating to the application.
-
Valentin Reis authored
-
Swann Perarnau authored
The option is called uuid, not container
-
- 21 Dec, 2018 6 commits
-
-
Valentin Reis authored
Downstream refactor See merge request !41
-
Valentin Reis authored
These use libnrm/downstream-refactor and should be updated once that branch is merged.
-
Swann Perarnau authored
-
Swann Perarnau authored
Doesn't work with the new downstream API.
-
Swann Perarnau authored
Replace the downstream API handling by the new messaging layer. Not that we don't have a clean way to deal with dynamic concurrency control using this API, so we disable the handling of it for now.
-
Swann Perarnau authored
Add downstream RPC client/server classes that are the same as the upstream ones. This is part of a series of changes to downstream to allow for more reliable communications between the daemon and applications. At this time, the daemon never replies, so the RPC_REQ is basically used as a way to publish events to the daemon.
-
- 18 Dec, 2018 2 commits
-
-
Swann Perarnau authored
Add a config option to specify the location of the PMPI LD_PRELOAD library available in libnrm. This should make it easier to use this library.
-
Valentin Reis authored
Resolve "Integration test version pinning." Closes #25 See merge request !40
-
- 17 Dec, 2018 1 commit
-
-
Valentin Reis authored
This commit pins the integration tests. This is done in the .integration.nix file, which in turns uses the derivations from the 'argotest' repository. These pin argopkgs - which itself pins nixpkgs, so everything should be completely reproducible. The integration target provisions the dependencies using nix-shell and runs the basic 'hello world' container test.
-
- 14 Dec, 2018 2 commits
-
-
Swann Perarnau authored
Resolve "Bad relative path handling between command line client and daemon" Closes #8 See merge request !38
-
Valentin Reis authored
This is not as good as passing part of the manifest options forward, but it still fixes some of the practical problems when using the components together. The code makes sure that the manifests exists, though.
-
- 12 Dec, 2018 6 commits
-
-
Valentin Reis authored
[feature] commandline arguments, config file management. See merge request !37
-
Valentin Reis authored
Added integration tests to the `.gitlab-ci.yaml` file. These tests run any runner tagged "integration". They depend on the 'argotest' repository master branch being able to run the tests, which uses 'argopkgs' repository. The runner must be Nix enabled. This therefore currently uses a rolling release of the integration tests.
-
Valentin Reis authored
-
Valentin Reis authored
`cmd` now sends a container kill message to the upstream api and exits whenever it receives SIGINT, via C-c for instance.
-
Valentin Reis authored
Fixing a bug introduced by the 'progress-report' branch in a recent previous commit. The process object is the result of a tornado spawn, so the call has to be slightly different than what was there.
-
Valentin Reis authored
This commit adds a command-line interface to `daemon`: ``` usage: daemon [-h] [-c FILE] [-d] [--nrm_log NRM_LOG] [--hwloc HWLOC] [--argo_nodeos_config ARGO_NODEOS_CONFIG] [--perf PERF] [--argo_perf_wrapper ARGO_PERF_WRAPPER] optional arguments: -h, --help show this help message and exit -c FILE, --configuration FILE Specify a config json-formatted config file to override any of the available CLI options. If an option is actually provided on the command-line, it overrides its corresponding value from the configuration file. -d, --print_defaults Print the default configuration file. --nrm_log NRM_LOG Main log file. Override default with the NRM_LOG. environment variable --hwloc HWLOC Path to the hwloc to use. This path can be relative and makes uses of the $PATH if necessary. Override default with the HWLOC environment variable. --argo_nodeos_config ARGO_NODEOS_CONFIG Path to the argo_nodeos_config to use. This path can be relative and makes uses of the $PATH if necessary. Override default with the ARGO_NODEOS_CONFIG environment variable. --perf PERF Path to the linux perf tool to use. This path can be relative and makes uses of the $PATH if necessary. Override default with the PERF environment variable. --argo_perf_wrapper ARGO_PERF_WRAPPER Path to the linux perf tool to use. This path can be relative and makes uses of the $PATH if necessary. Override default with the PERFWRAPPER environment variable. ```
-
- 10 Dec, 2018 3 commits
-
-
Swann Perarnau authored
Improve process management See merge request !30
-
Valentin Reis authored
- added correct SIGINT/process ending handling to cmd - fixed kill/list containers - added ZMQ_LINGER 0 to the socket options.
-
Valentin Reis authored
Related to #22
-
- 28 Nov, 2018 1 commit
-
-
Swann Perarnau authored
Add a listen command to get access to the event stream of the upstream pub/sub API. This patch gives back access from the command line to the power information of a container, including filtering the event stream to only have events relevent to this container. This changes the workflow a little bit for users, but should result in a cleaner access to profiling data in the future. Related to #18.
-