1. 21 Jan, 2019 7 commits
    • Swann Perarnau's avatar
      Merge branch 'wip/aggregative-downstream_for_merge' into 'master' · 1c6ac937
      Swann Perarnau authored
      Aggregative Downstream API integration and Support for Process/Task pinning
      
      See merge request !47
      1c6ac937
    • Sridutt Bhalachandra's avatar
      [fix] Aggregative downstream & new msg layer · f3c53106
      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
      f3c53106
    • Sridutt Bhalachandra's avatar
      [feature] Support for Process/Task pinning · 402a2524
      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
      402a2524
    • Sridutt Bhalachandra's avatar
      [fix] Ensure that first N resources are always returned · 442d31f6
      Sridutt Bhalachandra authored
      Fixes NRM not returning the first N resources (cpu and memory). This
      is important for reproducibility and reducing variation
      442d31f6
    • Sridutt Bhalachandra's avatar
      [fix] Multi-node support and msg layer interaction · 33316192
      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
      33316192
    • Sridutt Bhalachandra's avatar
      [feature] Aggregative Downstream API integration · a501c976
      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
      a501c976
    • Sridutt Bhalachandra's avatar
      [refactor] Diff calculation without coolr changes · 5d292f9f
      Sridutt Bhalachandra authored
      Refactored diff calculation code to work without needing changes in
      coolr module (Patch for Commit 36401a84)
      5d292f9f
  2. 09 Jan, 2019 6 commits
  3. 07 Jan, 2019 2 commits
  4. 04 Jan, 2019 5 commits
  5. 21 Dec, 2018 6 commits
  6. 18 Dec, 2018 2 commits
  7. 17 Dec, 2018 1 commit
    • Valentin Reis's avatar
      [ci] Pinning integration tests · 9be3146c
      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.
      9be3146c
  8. 14 Dec, 2018 2 commits
  9. 12 Dec, 2018 6 commits
    • Valentin Reis's avatar
      Merge branch 'wip/config-rebased' into 'master' · 3dd86585
      Valentin Reis authored
      [feature] commandline arguments, config file management.
      
      See merge request !37
      3dd86585
    • Valentin Reis's avatar
      [feature] Added integration tests · aedf9396
      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.
      aedf9396
    • Valentin Reis's avatar
    • Valentin Reis's avatar
      [fix] Sending a raw 'kill' message to upstream when `cmd` receives SIGINT · 5a3b9fc8
      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.
      5a3b9fc8
    • Valentin Reis's avatar
      [fix] Fixes the process kill call. · ec503ffa
      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.
      ec503ffa
    • Valentin Reis's avatar
      [Feature] Adds configuration management and environment variables · 25443c64
      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.
      ```
      25443c64
  10. 10 Dec, 2018 3 commits