// The private implementation, that never changes
surf::HostImpl* const pimpl_;
// The private implementation, that never changes
surf::HostImpl* const pimpl_;
* The amount of flops per second available for computing depends on several things:
* - The current pstate determines the maximal peak computing speed (use @ref get_pstate_speed() to retrieve the
* computing speed you would get at another pstate)
* The amount of flops per second available for computing depends on several things:
* - The current pstate determines the maximal peak computing speed (use @ref get_pstate_speed() to retrieve the
* computing speed you would get at another pstate)
* result of get_speed() by get_available_speed() to retrieve what a new computation would get.
*
* The remaining speed is then shared between the executions located on this host.
* result of get_speed() by get_available_speed() to retrieve what a new computation would get.
*
* The remaining speed is then shared between the executions located on this host.
double get_speed() const;
/** @brief Get the available speed ratio, between 0 and 1.
*
double get_speed() const;
/** @brief Get the available speed ratio, between 0 and 1.
*
/** Block the calling actor on an execution located on the called host
*
* It is not a problem if the actor is not located on the called host.
/** Block the calling actor on an execution located on the called host
*
* It is not a problem if the actor is not located on the called host.
/** Block the calling actor on an execution located on the called host (with explicit priority) */
void execute(double flops, double priority) const;
surf::HostImpl* get_impl() const { return pimpl_; }
/** Block the calling actor on an execution located on the called host (with explicit priority) */
void execute(double flops, double priority) const;
surf::HostImpl* get_impl() const { return pimpl_; }