geopm  3.1.1.dev296+g5916b956
GEOPM - Global Extensible Open Power Manager
Namespaces | Functions
Controller.cpp File Reference
#include "Controller.hpp"
#include <cmath>
#include <algorithm>
#include <memory>
#include "ApplicationIO.hpp"
#include "geopm/Environment.hpp"
#include "Reporter.hpp"
#include "Tracer.hpp"
#include "EndpointPolicyTracer.hpp"
#include "geopm/Exception.hpp"
#include "Comm.hpp"
#include "geopm/PlatformTopo.hpp"
#include "geopm/PlatformIO.hpp"
#include "geopm/Agent.hpp"
#include "TreeComm.hpp"
#include "EndpointUser.hpp"
#include "FilePolicy.hpp"
#include "geopm/Helper.hpp"
#include "ProfileTracer.hpp"
#include "ApplicationSampler.hpp"
#include "record.hpp"
#include "geopm/PlatformIOProf.hpp"
#include "InitControl.hpp"
#include "EpochIOGroup.hpp"
#include "ProfileIOGroup.hpp"
#include "geopm_public.h"
Include dependency graph for Controller.cpp:

Namespaces

 geopm
 

Functions

int geopm_ctl_run (struct geopm_ctl_c *ctl)
 forward declaration instead of include geopm_ctl.h to avoid mpi.h inclusion More...
 
int geopm_ctl_pthread (struct geopm_ctl_c *ctl, const pthread_attr_t *attr, pthread_t *thread)
 creates a POSIX thread running the control algorithm continuously until the application signals shutdown. More...
 
int GEOPM_PUBLIC geopmctl_main (int argc, char **argv)
 
int geopm_ctl_destroy (struct geopm_ctl_c *ctl)
 destroys all resources associated with the ctl structure which allocated by a previous call to geopm_ctl_create(). More...
 
int geopm_agent_enforce_policy (void)
 Enforce a static implementation of the agent's policy. The agent and the policy are chosen based on the GEOPM environment variables and configuration files. More...
 

Function Documentation

◆ geopm_agent_enforce_policy()

int geopm_agent_enforce_policy ( void  )

Enforce a static implementation of the agent's policy. The agent and the policy are chosen based on the GEOPM environment variables and configuration files.

Returns
Zero on success, error code on failure.

◆ geopm_ctl_destroy()

int geopm_ctl_destroy ( struct geopm_ctl_c *  ctl)

destroys all resources associated with the ctl structure which allocated by a previous call to geopm_ctl_create().

◆ geopm_ctl_pthread()

int geopm_ctl_pthread ( struct geopm_ctl_c *  ctl,
const pthread_attr_t *  attr,
pthread_t *  thread 
)

creates a POSIX thread running the control algorithm continuously until the application signals shutdown.

With this method of launch the supporting MPI implementation must be enabled for MPI_THREAD_MULTIPLE using MPI_Init_thread()

Parameters
ctlis an opaque structure that holds the state used to execute the control algorithm
attris used to create the POSIX thread
threadis used to create the POSIX thread

◆ geopm_ctl_run()

int geopm_ctl_run ( struct geopm_ctl_c *  ctl)

forward declaration instead of include geopm_ctl.h to avoid mpi.h inclusion

steps the control algorithm continuously until the application signals shutdown.

◆ geopmctl_main()

int GEOPM_PUBLIC geopmctl_main ( int  argc,
char **  argv 
)