.. group-tab:: C
+ .. doxygentypedef:: xbt_main_func_t
+
.. doxygenfunction:: sg_actor_create(const char *name, sg_host_t host, xbt_main_func_t code, int argc, char *const *argv)
.. doxygenfunction:: sg_actor_init(const char *name, sg_host_t host)
.. doxygenfunction:: sg_actor_start(sg_actor_t actor, xbt_main_func_t code, int argc, char *const *argv)
.. doxygenfunction:: simgrid::s4u::Engine::Engine(int *argc, char **argv)
.. doxygenfunction:: simgrid::s4u::Engine::is_initialized()
- .. doxygenfunction:: simgrid::s4u::Engine::shutdown()
.. doxygenfunction:: simgrid::s4u::Engine::get_instance()
.. group-tab:: Python
.. doxygenfunction:: simgrid::s4u::Disk::set_property(const std::string &, const std::string &value)
.. doxygenfunction:: simgrid::s4u::Disk::set_sharing_policy
+ .. doxygenenum:: simgrid::s4u::Disk::Operation
+ .. doxygenenum:: simgrid::s4u::Disk::SharingPolicy
+
.. group-tab:: Python
.. autoattribute:: simgrid.Disk.name
.. automethod:: simgrid.Disk.set_sharing_policy
+ .. autoclass:: simgrid.Disk.Operation
+ .. autoclass:: simgrid.Disk.SharingPolicy
+
I/O operations
--------------
#include <simgrid/link.h>
.. doxygentypedef:: sg_link_t
- .. cpp:type:: const s4u_Link* const_sg_link_t
-
- Pointer to a constant link object.
+ .. doxygentypedef:: const_sg_link_t
Retrieving links
----------------
.. group-tab:: C++
- .. doxygenfunction:: simgrid::s4u::Link::get_bandwidth() const
.. doxygenfunction:: simgrid::s4u::Link::get_cname() const
- .. doxygenfunction:: simgrid::s4u::Link::get_latency() const
.. doxygenfunction:: simgrid::s4u::Link::get_name() const
- .. doxygenfunction:: simgrid::s4u::Link::get_sharing_policy() const
- .. doxygenfunction:: simgrid::s4u::Link::get_concurrency_limit() const
- .. doxygenfunction:: simgrid::s4u::Link::get_usage() const
+ .. doxygenfunction:: simgrid::s4u::Link::get_load() const
.. doxygenfunction:: simgrid::s4u::Link::is_used() const
.. group-tab:: Python
- .. autoattribute:: simgrid.Link.bandwidth
- .. autoattribute:: simgrid.Link.latency
+ .. autoattribute:: simgrid.Link.name
.. group-tab:: C
- .. doxygenfunction:: sg_link_get_bandwidth(const_sg_link_t link)
- .. doxygenfunction:: sg_link_get_latency(const_sg_link_t link)
.. doxygenfunction:: sg_link_get_name(const_sg_link_t link)
.. doxygenfunction:: sg_link_is_shared(const_sg_link_t link)
-Modifying characteristics
--------------------------
+Performance
+-----------
.. tabs::
.. group-tab:: C++
+ .. doxygenfunction:: simgrid::s4u::Link::get_bandwidth() const
+ .. doxygenfunction:: simgrid::s4u::Link::get_latency() const
.. doxygenfunction:: simgrid::s4u::Link::set_bandwidth(double value)
.. doxygenfunction:: simgrid::s4u::Link::set_latency(double value)
.. doxygenfunction:: simgrid::s4u::Link::set_latency(const std::string& value)
- .. doxygenfunction:: simgrid::s4u::Link::set_concurrency_limit(int limit)
- .. doxygenfunction:: simgrid::s4u::Link::set_sharing_policy
.. group-tab:: Python
+ .. autoattribute:: simgrid.Link.bandwidth
+ .. autoattribute:: simgrid.Link.latency
.. automethod:: simgrid.Link.set_bandwidth
.. automethod:: simgrid.Link.set_latency
- .. automethod:: simgrid.Link.set_concurrency_limit
- .. automethod:: simgrid.Link.set_sharing_policy
.. group-tab:: C
+ .. doxygenfunction:: sg_link_get_bandwidth(const_sg_link_t link)
+ .. doxygenfunction:: sg_link_get_latency(const_sg_link_t link)
.. doxygenfunction:: sg_link_set_bandwidth(sg_link_t link, double value)
.. doxygenfunction:: sg_link_set_latency(sg_link_t link, double value)
+Model policy
+------------
+
+.. tabs::
+
+ .. group-tab:: C++
+
+ .. doxygenenum:: simgrid::s4u::Link::SharingPolicy
+
+ .. doxygenfunction:: simgrid::s4u::Link::get_sharing_policy() const
+ .. doxygenfunction:: simgrid::s4u::Link::set_sharing_policy
+
+ .. doxygenfunction:: simgrid::s4u::Link::get_concurrency_limit() const
+ .. doxygenfunction:: simgrid::s4u::Link::set_concurrency_limit(int limit)
+
+ .. group-tab:: Python
+
+ .. automethod:: simgrid.Link.set_concurrency_limit
+ .. automethod:: simgrid.Link.set_sharing_policy
+
+ .. group-tab:: C
+
+
User data and properties
------------------------
.. doxygenfunction:: simgrid::s4u::NetZone::get_cname() const
.. doxygenfunction:: simgrid::s4u::NetZone::get_name() const
- .. doxygenfunction:: simgrid::s4u::NetZone::get_netpoint()
+ .. doxygenfunction:: simgrid::s4u::NetZone::get_netpoint
.. group-tab:: Python
.. group-tab:: C++
.. doxygenfunction:: simgrid::s4u::NetZone::add_component(kernel::routing::NetPoint *elm)
- .. doxygenfunction:: simgrid::s4u::NetZone::add_route
- .. doxygenfunction:: simgrid::s4u::NetZone::add_bypass_route
+ .. doxygenfunction:: simgrid::s4u::NetZone::add_route(const Host *src, const Host *dst, const std::vector< LinkInRoute > &link_list, bool symmetrical=true)
+ .. doxygenfunction:: simgrid::s4u::NetZone::add_route(const Host *src, const Host *dst, const std::vector< const Link * > &links)
+ .. doxygenfunction:: simgrid::s4u::NetZone::add_route(const NetZone *src, const NetZone *dst, const std::vector< LinkInRoute > &link_list, bool symmetrical=true)
+ .. doxygenfunction:: simgrid::s4u::NetZone::add_route(const NetZone *src, const NetZone *dst, const std::vector< const Link * > &links)
.. doxygenfunction:: simgrid::s4u::NetZone::get_children() const
.. doxygenfunction:: simgrid::s4u::NetZone::get_parent() const
.. doxygenfunction:: simgrid::s4u::NetZone::set_parent(const NetZone* parent)
.. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, double speed)
.. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, const std::vector<std::string>& speed_per_pstate)
.. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, const std::string& speed)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string &name, const std::string &speed)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string &name, const std::vector< double > &speed_per_pstate)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string &name, const std::vector< std::string > &speed_per_pstate)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string &name, double speed)
.. group-tab:: Python
.. group-tab:: C++
- .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::vector<double>& bandwidths)
- .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, double bandwidth)
- .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::vector<std::string>& bandwidthds)
- .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::string& bandwidth)
- .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string& name, const std::string& bandwidth)
- .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string& name, double bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string &name, const std::vector< double > &bandwidths)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string &name, double bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string &name, const std::vector< std::string > &bandwidths)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string &name, const std::string &bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string &name, const std::string &bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string &name, double bandwidth)
.. group-tab:: Python
.. doxygentypedef:: ActivityPtr
+ .. group-tab:: C
+
+ .. doxygentypedef:: sg_activity_t
+ .. doxygentypedef:: const_sg_activity_t
+
Querying info
-------------
.. doxygenfunction:: simgrid::s4u::Activity::wait
.. doxygenfunction:: simgrid::s4u::Activity::wait_for
.. doxygenfunction:: simgrid::s4u::Activity::wait_until(double time_limit)
- .. doxygenfunction:: simgrid::s4u::Activity::vetoable_start()
Suspending and resuming an activity
-----------------------------------
.. group-tab:: C++
- .. doxygenfunction:: simgrid::s4u::Comm::on_start_cb
- .. doxygenfunction:: simgrid::s4u::Comm::on_this_start_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_completion_cb
- .. doxygenfunction:: simgrid::s4u::Comm::on_this_completion_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_start_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_recv_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_send_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_suspended_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_suspend_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_resume_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_resumed_cb
.. doxygenfunction:: simgrid::s4u::Comm::on_veto_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_completion_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_recv_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_resume_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_send_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_start_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_suspended_cb
+ .. doxygenfunction:: simgrid::s4u::Comm::on_this_veto_cb
.. _API_s4u_Exec:
.. doxygenfunction:: simgrid::s4u::Exec::on_suspended_cb
.. doxygenfunction:: simgrid::s4u::Exec::on_resumed_cb
.. doxygenfunction:: simgrid::s4u::Exec::on_veto_cb
+ .. doxygenfunction:: simgrid::s4u::Exec::on_this_veto_cb
.. _API_s4u_Io:
.. doxygenfunction:: simgrid::s4u::Io::on_suspended_cb
.. doxygenfunction:: simgrid::s4u::Io::on_resumed_cb
.. doxygenfunction:: simgrid::s4u::Io::on_veto_cb
+ .. doxygenfunction:: simgrid::s4u::Io::on_this_veto_cb
.. _API_s4u_ActivitySet:
.. group-tab:: C
- .. doxygentypedef:: sg_activityset_t
- .. doxygentypedef:: const_sg_activityset_t
+ .. doxygentypedef:: sg_activity_set_t
+ .. doxygentypedef:: const_sg_activity_set_t
Basic management
----------------
.. doxygenfunction:: simgrid::s4u::Task::get_cname() const
.. doxygenfunction:: simgrid::s4u::Task::get_name() const
- .. doxygenfunction:: simgrid::s4u::Task::get_count() const
- .. doxygenfunction:: simgrid::s4u::Task::get_amount() const
- .. doxygenfunction:: simgrid::s4u::Task::get_parallelism_degree() const
+ .. doxygenfunction:: simgrid::s4u::Task::get_count(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::Task::get_amount(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::Task::get_queued_firings(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::Task::get_running_count(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::Task::get_parallelism_degree(std::string instance) const
.. doxygenfunction:: simgrid::s4u::Task::set_name(std::string name)
- .. doxygenfunction:: simgrid::s4u::Task::set_amount(double amount)
- .. doxygenfunction:: simgrid::s4u::Task::set_parallelism_degree(int n)
Life cycle
----------
.. group-tab:: C++
.. doxygenfunction:: simgrid::s4u::Task::enqueue_firings(int n)
+ .. doxygenfunction:: simgrid::s4u::Task::set_amount(double amount, std::string instance)
+ .. doxygenfunction:: simgrid::s4u::Task::set_parallelism_degree(int n, std::string instance)
Managing Dependencies
---------------------
+
.. tabs::
.. group-tab:: C++
Managing Tokens
---------------
+
.. doxygenclass:: simgrid::s4u::Token
.. tabs::
.. group-tab:: C++
- .. doxygenfunction:: simgrid::s4u::Task::get_next_token_from(TaskPtr t)
+ .. doxygenfunction:: simgrid::s4u::Task::get_token_from(TaskPtr t) const
+ .. doxygenfunction:: simgrid::s4u::Task::get_tokens_from(TaskPtr t) const
+ .. doxygenfunction:: simgrid::s4u::Task::deque_token_from(TaskPtr t)
.. doxygenfunction:: simgrid::s4u::Task::set_token(std::shared_ptr<Token> token)
Signals
.. group-tab:: C++
- .. doxygenfunction:: simgrid::s4u::ExecTask::get_host() const
- .. doxygenfunction:: simgrid::s4u::ExecTask::get_flops() const
- .. doxygenfunction:: simgrid::s4u::ExecTask::set_host(Host* host);
- .. doxygenfunction:: simgrid::s4u::ExecTask::set_flops(double flops);
+ .. doxygenfunction:: simgrid::s4u::ExecTask::get_host(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::ExecTask::get_flops(std::string instance) const
+ .. doxygenfunction:: simgrid::s4u::ExecTask::set_host(Host* host, std::string instance);
+ .. doxygenfunction:: simgrid::s4u::ExecTask::set_flops(double flops, std::string instance);
+ .. doxygenfunction:: simgrid::s4u::ExecTask::add_instances(int n);
+ .. doxygenfunction:: simgrid::s4u::ExecTask::remove_instances(int n);
.. _API_s4u_IoTask:
.. doxygenfunction:: simgrid::s4u::Barrier::create(unsigned int expected_actors)
.. doxygenfunction:: simgrid::s4u::Barrier::wait()
+ .. doxygenfunction:: simgrid::s4u::Barrier::to_string()
.. group-tab:: Python