Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Revert "Remove deprecated features for the new next release (3.34)" until after the...
authorMartin Quinson <martin.quinson@ens-rennes.fr>
Mon, 26 Jun 2023 15:00:15 +0000 (17:00 +0200)
committerMartin Quinson <martin.quinson@ens-rennes.fr>
Mon, 26 Jun 2023 15:10:26 +0000 (17:10 +0200)
Formally, this could be done, since we skipped the v3.33. But I prefer
to postpone these changes until after the release of v3.34 to release
today a code base that was throughoutly tested. Keeping these changes
would require to wait for the tests to be run again.

This reverts commit 66d0f6e192b8205fb6b7919ac1dc5475d3435d54.

docs/source/Doxyfile
include/simgrid/instr.h
include/simgrid/kernel/resource/Action.hpp
include/simgrid/s4u/Activity.hpp
include/xbt/Extendable.hpp
include/xbt/base.h
src/bindings/python/simgrid_python.cpp
src/instr/instr_interface.cpp

index 7237a50..d27aedb 100644 (file)
@@ -66,6 +66,7 @@ PREDEFINED             += \
     XBT_ATTRIB_NORETURN= \
     XBT_ATTRIB_UNUSED= \
     XBT_LOG_NEW_DEFAULT_SUBCATEGORY(cname,parent,desc)= \
+    XBT_ATTRIB_DEPRECATED_v334(mesg)= \
     XBT_ATTRIB_DEPRECATED_v335(mesg)= \
     XBT_ATTRIB_DEPRECATED_v336(mesg)= \
     XBT_ATTRIB_DEPRECATED_v338(mesg)=
index 91ff4e9..f8cd62d 100644 (file)
@@ -7,6 +7,7 @@
 #define INSTR_H_
 
 #include <simgrid/engine.h>
+#include <xbt/dynar.h> // XBT_ATTRIB_DEPRECATED_v334
 
 #ifdef __cplusplus
 #include <set>
@@ -79,6 +80,92 @@ XBT_PUBLIC void TRACE_host_set_state(const char* host, const char* state, const
 XBT_PUBLIC void TRACE_host_push_state(const char* host, const char* state, const char* value);
 XBT_PUBLIC void TRACE_host_pop_state(const char* host, const char* state);
 
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::platform_graph_export_graphviz") XBT_PUBLIC
+    int TRACE_platform_graph_export_graphviz(const char* filename);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_tracing_category") XBT_PUBLIC
+    void TRACE_category(const char* category);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_tracing_category") XBT_PUBLIC
+    void TRACE_category_with_color(const char* category, const char* color);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::get_tracing_categories") XBT_PUBLIC xbt_dynar_t
+    TRACE_get_categories();
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_mark") XBT_PUBLIC
+    void TRACE_declare_mark(const char* mark_type);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_mark_value") XBT_PUBLIC
+    void TRACE_declare_mark_value_with_color(const char* mark_type, const char* mark_value, const char* mark_color);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_mark_value") XBT_PUBLIC
+    void TRACE_declare_mark_value(const char* mark_type, const char* mark_value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::mark") XBT_PUBLIC
+    void TRACE_mark(const char* mark_type, const char* mark_value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::get_marks") XBT_PUBLIC xbt_dynar_t TRACE_get_marks();
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_declare(const char* variable);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_declare_with_color(const char* variable, const char* color);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_set(const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_add(const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_sub(const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_set_with_time(double time, const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_add_with_time(double time, const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_vm_variable") XBT_PUBLIC
+    void TRACE_vm_variable_sub_with_time(double time, const char* vm, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_declare(const char* variable);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_declare_with_color(const char* variable, const char* color);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_set(const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_add(const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_sub(const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_set_with_time(double time, const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_add_with_time(double time, const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_host_variable") XBT_PUBLIC
+    void TRACE_host_variable_sub_with_time(double time, const char* host, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::get_host_variables") XBT_PUBLIC xbt_dynar_t
+    TRACE_get_host_variables();
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_declare(const char* var);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::declare_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_declare_with_color(const char* var, const char* color);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_set(const char* link, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_add(const char* link, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_sub(const char* link, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_set_with_time(double time, const char* link, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_add_with_time(double time, const char* link, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::sub_link_variable") XBT_PUBLIC
+    void TRACE_link_variable_sub_with_time(double time, const char* link, const char* variable, double value);
+
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_set(const char* src, const char* dst, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_add(const char* src, const char* dst, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr:sub_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_sub(const char* src, const char* dst, const char* variable, double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::set_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_set_with_time(double time, const char* src, const char* dst, const char* variable,
+                                                  double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::add_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_add_with_time(double time, const char* src, const char* dst, const char* variable,
+                                                  double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr:sub_link_variable") XBT_PUBLIC
+    void TRACE_link_srcdst_variable_sub_with_time(double time, const char* src, const char* dst, const char* variable,
+                                                  double value);
+XBT_ATTRIB_DEPRECATED_v334("Please use simgrid::instr::get_link_variables") XBT_PUBLIC xbt_dynar_t
+    TRACE_get_link_variables();
+
 SG_END_DECL
 
 #endif /* INSTR_H_ */
index 48b1143..b75750e 100644 (file)
@@ -67,6 +67,7 @@ class XBT_PUBLIC Action {
 
   double cost_;
   Model* model_;
+  void* data_                       = nullptr; /**< for your convenience - XBT_ATTRIB_DEPRECATED_v334 */
   activity::ActivityImpl* activity_ = nullptr;
 
   /* LMM */
@@ -155,6 +156,17 @@ public:
   /** @brief Get the finish time of the current action */
   double get_finish_time() const { return finish_time_; }
 
+  /** @brief Get the user data associated to the current action */
+  XBT_ATTRIB_DEPRECATED_v334("Please manifest if you actually need this function") void* get_data() const
+  {
+    return data_;
+  }
+  /** @brief Set the user data associated to the current action */
+  XBT_ATTRIB_DEPRECATED_v334("Please manifest if you actually need this function") void set_data(void* data)
+  {
+    data_ = data;
+  }
+
   /** @brief Get the user data associated to the current action */
   activity::ActivityImpl* get_activity() const { return activity_; }
   /** @brief Set the user data associated to the current action */
index 4f73b17..2460a5e 100644 (file)
@@ -114,6 +114,10 @@ protected:
   virtual void fire_on_this_veto() const = 0;
 
 public:
+  XBT_ATTRIB_DEPRECATED_v334("All start() are vetoable now. Please use start() ") void vetoable_start()
+  {
+    start();
+  }
   void start()
   {
     state_ = State::STARTING;
@@ -295,6 +299,20 @@ public:
   }
   const std::string& get_tracing_category() const { return tracing_category_; }
 
+  XBT_ATTRIB_DEPRECATED_v334("Please use Activity::set_data()") AnyActivity* set_user_data(void* data)
+  {
+    set_data(data);
+    return static_cast<AnyActivity*>(this);
+  }
+
+  XBT_ATTRIB_DEPRECATED_v334("Please use Activity::get_data<>()") void* get_user_data() const
+  {
+    return get_data<void>();
+  }
+  XBT_ATTRIB_DEPRECATED_v334("All start() are vetoable now. Please use start() ") AnyActivity* vetoable_start()
+  {
+    return start();
+  }
   AnyActivity* start()
   {
     Activity::start();
index 54adb3e..8dbc3ab 100644 (file)
@@ -7,6 +7,7 @@
 #ifndef SIMGRID_XBT_LIB_HPP
 #define SIMGRID_XBT_LIB_HPP
 
+#include "xbt/base.h" // XBT_ATTRIB_DEPRECATED_v334
 #include <cstddef>
 #include <functional>
 #include <limits>
@@ -111,6 +112,10 @@ public:
   template <typename D> D* get_data() const { return static_cast<D*>(extensions_[0]); }
   template <typename D> std::unique_ptr<D> get_unique_data() { return std::unique_ptr<D>(get_data<D>()); }
 
+  XBT_ATTRIB_DEPRECATED_v334("Please use typed template Extendable::get_data<>()") void* get_data() const
+  {
+    return get_data<void>();
+  }
   // Convenience extension access when the type has an associated EXTENSION ID:
   template <class U> U* extension() const { return extension<U>(U::EXTENSION_ID); }
   template<class U> void extension_set(U* p) { extension_set<U>(U::EXTENSION_ID, p); }
index e17f19d..934ddf8 100644 (file)
@@ -42,6 +42,8 @@
 #define XBT_ATTRIB_DEPRECATED(mesg) __attribute__((deprecated(mesg)))
 #endif
 
+#define XBT_ATTRIB_DEPRECATED_v334(mesg)                                                                               \
+  XBT_ATTRIB_DEPRECATED(mesg " (this compatibility wrapper will be dropped after v3.33)")
 #define XBT_ATTRIB_DEPRECATED_v335(mesg)                                                                               \
   XBT_ATTRIB_DEPRECATED(mesg " (this compatibility wrapper will be dropped after v3.34)")
 #define XBT_ATTRIB_DEPRECATED_v336(mesg)                                                                               \
index 9f0c715..f71d652 100644 (file)
@@ -171,16 +171,54 @@ PYBIND11_MODULE(simgrid, m)
              return new simgrid::s4u::Engine(&argc, argv.data());
            }),
            "The constructor should take the parameters from the command line, as is ")
+      .def_static("get_clock",
+                  []() // XBT_ATTRIB_DEPRECATED_v334
+                  {
+                    PyErr_WarnEx(
+                        PyExc_DeprecationWarning,
+                        "get_clock() is deprecated and  will be dropped after v3.33, use `Engine.clock` instead.", 1);
+                    return Engine::get_clock();
+                  })
       .def_property_readonly_static(
           "clock", [](py::object /* self */) { return Engine::get_clock(); },
           "The simulation time, ie the amount of simulated seconds since the simulation start.")
       .def_property_readonly_static(
           "instance", [](py::object /* self */) { return Engine::get_instance(); }, "Retrieve the simulation engine")
+      .def("get_all_hosts",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_all_hosts() is deprecated and  will be dropped after v3.33, use all_hosts instead.", 1);
+             return self.attr("all_hosts");
+           })
       .def("host_by_name", &Engine::host_by_name_or_null,
            "Retrieve a host by its name, or None if it does not exist in the platform.")
       .def_property_readonly("all_hosts", &Engine::get_all_hosts, "Returns the list of all hosts found in the platform")
+      .def("get_all_links",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_all_links() is deprecated and  will be dropped after v3.33, use all_links instead.", 1);
+             return self.attr("all_links");
+           })
       .def_property_readonly("all_links", &Engine::get_all_links, "Returns the list of all links found in the platform")
+      .def("get_all_netpoints",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(
+                 PyExc_DeprecationWarning,
+                 "get_all_netpoints() is deprecated and  will be dropped after v3.33, use all_netpoints instead.", 1);
+             return self.attr("all_netpoints");
+           })
       .def_property_readonly("all_netpoints", &Engine::get_all_netpoints)
+      .def("get_netzone_root",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(
+                 PyExc_DeprecationWarning,
+                 "get_netzone_root() is deprecated and  will be dropped after v3.33, use netzone_root instead.", 1);
+             return self.attr("netzone_root");
+           })
       .def_property_readonly("netzone_root", &Engine::get_netzone_root,
                              "Retrieve the root netzone, containing all others.")
       .def("netpoint_by_name", &Engine::netpoint_by_name_or_null)
@@ -273,6 +311,13 @@ PYBIND11_MODULE(simgrid, m)
       .def("create_router", &simgrid::s4u::NetZone::create_router, "Create a router")
       .def("set_parent", &simgrid::s4u::NetZone::set_parent, "Set the parent of this zone")
       .def("set_property", &simgrid::s4u::NetZone::set_property, "Add a property to this zone")
+      .def("get_netpoint",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_netpoint() is deprecated and  will be dropped after v3.33, use netpoint instead.", 1);
+             return self.attr("netpoint");
+           })
       .def_property_readonly("netpoint", &simgrid::s4u::NetZone::get_netpoint,
                              "Retrieve the netpoint associated to this zone")
       .def("seal", &simgrid::s4u::NetZone::seal, "Seal this NetZone")
@@ -347,11 +392,42 @@ PYBIND11_MODULE(simgrid, m)
           "   \"\"\"\n\n"
           "The second function parameter is the periodicity: the time to wait after the last event to start again over "
           "the list. Set it to -1 to not loop over.")
+      .def("get_pstate_count",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(
+                 PyExc_DeprecationWarning,
+                 "get_pstate_count() is deprecated and  will be dropped after v3.33, use pstate_count instead.", 1);
+             return self.attr("pstate_count");
+           })
       .def_property_readonly("pstate_count", &Host::get_pstate_count, "Retrieve the count of defined pstate levels")
+      .def("get_pstate_speed",
+           [](py::object self, int state) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(
+                 PyExc_DeprecationWarning,
+                 "get_pstate_speed() is deprecated and  will be dropped after v3.33, use pstate_speed instead.", 1);
+             return self.attr("pstate_speed")(state);
+           })
       .def("pstate_speed", &Host::get_pstate_speed, "Retrieve the maximal speed at the given pstate")
+      .def("get_netpoint",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_netpoint() is deprecated and  will be dropped after v3.33, use netpoint instead.", 1);
+             return self.attr("netpoint");
+           })
       .def_property_readonly("netpoint", &Host::get_netpoint, "Retrieve the netpoint associated to this zone")
       .def_property_readonly("disks", &Host::get_disks, "The list of disks on this host (read-only).")
       .def("get_disks", &Host::get_disks, "Retrieve the list of disks in this host")
+      .def("set_core_count",
+           [](py::object self, double count) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "set_core_count() is deprecated and  will be dropped after v3.33, use core_count instead.",
+                          1);
+             self.attr("core_count")(count);
+           })
       .def_property("core_count", &Host::get_core_count,
                     py::cpp_function(&Host::set_core_count, py::call_guard<py::gil_scoped_release>()),
                     "Manage the number of cores in the CPU")
@@ -546,7 +622,21 @@ PYBIND11_MODULE(simgrid, m)
   /* Class Split-Duplex Link */
   py::class_<simgrid::s4u::SplitDuplexLink, Link, std::unique_ptr<simgrid::s4u::SplitDuplexLink, py::nodelete>>(
       m, "SplitDuplexLink", "Network split-duplex link")
+      .def("get_link_up",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_link_up() is deprecated and  will be dropped after v3.33, use link_up instead.", 1);
+             return self.attr("link_up");
+           })
       .def_property_readonly("link_up", &simgrid::s4u::SplitDuplexLink::get_link_up, "Get link direction up")
+      .def("get_link_down",
+           [](py::object self) // XBT_ATTRIB_DEPRECATED_v334
+           {
+             PyErr_WarnEx(PyExc_DeprecationWarning,
+                          "get_link_down() is deprecated and  will be dropped after v3.33, use link_down instead.", 1);
+             return self.attr("link_down");
+           })
       .def_property_readonly("link_down", &simgrid::s4u::SplitDuplexLink::get_link_down, "Get link direction down");
 
   /* Class Mailbox */
index e444c0c..106acd4 100644 (file)
@@ -332,6 +332,248 @@ const std::set<std::string, std::less<>>& get_tracing_categories()
 
 } // namespace simgrid::instr
 
+static xbt_dynar_t instr_set_to_dynar(const std::set<std::string, std::less<>>& filter) // XBT_ATTRIB_DEPRECATED_v334
+{
+  if (not TRACE_is_enabled() || not TRACE_needs_platform())
+    return nullptr;
+
+  xbt_dynar_t ret = xbt_dynar_new (sizeof(char*), &xbt_free_ref);
+  for (auto const& name : filter)
+    xbt_dynar_push_as(ret, char*, xbt_strdup(name.c_str()));
+
+  return ret;
+}
+
+void TRACE_category(const char* category) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_tracing_category(category);
+}
+
+void TRACE_category_with_color(const char* category, const char* color) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_tracing_category(category, color);
+}
+
+xbt_dynar_t TRACE_get_categories() // XBT_ATTRIB_DEPRECATED_v334
+{
+  if (not TRACE_is_enabled() || not TRACE_categorized())
+    return nullptr;
+  return instr_set_to_dynar(created_categories);
+}
+
+void TRACE_declare_mark(const char* mark_type) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_mark(mark_type);
+}
+
+void TRACE_declare_mark_value_with_color(const char* mark_type, const char* mark_value,
+                                         const char* mark_color) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_mark_value(mark_type, mark_value, mark_color);
+}
+
+void TRACE_declare_mark_value(const char* mark_type, const char* mark_value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_mark_value(mark_type, mark_value);
+}
+
+void TRACE_mark(const char* mark_type, const char* mark_value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::mark(mark_type, mark_value);
+}
+
+xbt_dynar_t TRACE_get_marks() // XBT_ATTRIB_DEPRECATED_v334
+{
+  if (not TRACE_is_enabled())
+    return nullptr;
+
+  return instr_set_to_dynar(declared_marks);
+}
+
+int TRACE_platform_graph_export_graphviz(const char* filename) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::platform_graph_export_graphviz(filename);
+  return 1;
+}
+
+void TRACE_vm_variable_declare(const char* variable) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(0, "", variable, "VM", 0, InstrUserVariable::DECLARE, "", &user_vm_variables);
+}
+void TRACE_vm_variable_declare_with_color(const char* variable, const char* color) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(0, "", variable, "VM", 0, InstrUserVariable::DECLARE, color, &user_vm_variables);
+}
+
+void TRACE_vm_variable_set(const char* vm, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), vm, variable, "VM", value, InstrUserVariable::SET, "", &user_vm_variables);
+}
+
+void TRACE_vm_variable_add(const char* vm, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), vm, variable, "VM", value, InstrUserVariable::ADD, "", &user_vm_variables);
+}
+void TRACE_vm_variable_sub(const char* vm, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), vm, variable, "VM", value, InstrUserVariable::SUB, "", &user_vm_variables);
+}
+
+void TRACE_vm_variable_set_with_time(double time, const char* vm, const char* variable,
+                                     double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, vm, variable, "VM", value, InstrUserVariable::SET, "", &user_vm_variables);
+}
+
+void TRACE_vm_variable_add_with_time(double time, const char* vm, const char* variable,
+                                     double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, vm, variable, "VM", value, InstrUserVariable::ADD, "", &user_vm_variables);
+}
+void TRACE_vm_variable_sub_with_time(double time, const char* vm, const char* variable,
+                                     double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, vm, variable, "VM", value, InstrUserVariable::SUB, "", &user_vm_variables);
+}
+
+void TRACE_host_variable_declare(const char* variable) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_host_variable(variable);
+}
+
+void TRACE_host_variable_declare_with_color(const char* variable, const char* color) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_host_variable(variable, color);
+}
+
+void TRACE_host_variable_set(const char* host, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), host, variable, "HOST", value, InstrUserVariable::SET, "",
+                      &user_host_variables);
+}
+
+void TRACE_host_variable_add(const char* host, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), host, variable, "HOST", value, InstrUserVariable::ADD, "",
+                      &user_host_variables);
+}
+
+void TRACE_host_variable_sub(const char* host, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), host, variable, "HOST", value, InstrUserVariable::SUB, "",
+                      &user_host_variables);
+}
+
+void TRACE_host_variable_set_with_time(double time, const char* host, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, host, variable, "HOST", value, InstrUserVariable::SET, "", &user_host_variables);
+}
+
+void TRACE_host_variable_add_with_time(double time, const char* host, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, host, variable, "HOST", value, InstrUserVariable::ADD, "", &user_host_variables);
+}
+
+void TRACE_host_variable_sub_with_time(double time, const char* host, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, host, variable, "HOST", value, InstrUserVariable::SUB, "", &user_host_variables);
+}
+
+xbt_dynar_t TRACE_get_host_variables() // XBT_ATTRIB_DEPRECATED_v334
+{
+  return instr_set_to_dynar(user_host_variables);
+}
+
+void TRACE_link_variable_declare(const char* variable) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_link_variable(variable);
+}
+
+void TRACE_link_variable_declare_with_color(const char* variable, const char* color) // XBT_ATTRIB_DEPRECATED_v334
+{
+  simgrid::instr::declare_link_variable(variable, color);
+}
+
+void TRACE_link_variable_set(const char* link, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), link, variable, "LINK", value, InstrUserVariable::SET, "",
+                      &user_link_variables);
+}
+
+void TRACE_link_variable_add(const char* link, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), link, variable, "LINK", value, InstrUserVariable::ADD, "",
+                      &user_link_variables);
+}
+
+void TRACE_link_variable_sub(const char* link, const char* variable, double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(simgrid_get_clock(), link, variable, "LINK", value, InstrUserVariable::SUB, "",
+                      &user_link_variables);
+}
+
+void TRACE_link_variable_set_with_time(double time, const char* link, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, link, variable, "LINK", value, InstrUserVariable::SET, "", &user_link_variables);
+}
+
+void TRACE_link_variable_add_with_time(double time, const char* link, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, link, variable, "LINK", value, InstrUserVariable::ADD, "", &user_link_variables);
+}
+
+void TRACE_link_variable_sub_with_time(double time, const char* link, const char* variable,
+                                       double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_variable(time, link, variable, "LINK", value, InstrUserVariable::SUB, "", &user_link_variables);
+}
+
+void TRACE_link_srcdst_variable_set(const char* src, const char* dst, const char* variable,
+                                    double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(simgrid_get_clock(), src, dst, variable, value, InstrUserVariable::SET);
+}
+
+void TRACE_link_srcdst_variable_add(const char* src, const char* dst, const char* variable,
+                                    double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(simgrid_get_clock(), src, dst, variable, value, InstrUserVariable::ADD);
+}
+
+void TRACE_link_srcdst_variable_sub(const char* src, const char* dst, const char* variable,
+                                    double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(simgrid_get_clock(), src, dst, variable, value, InstrUserVariable::SUB);
+}
+
+void TRACE_link_srcdst_variable_set_with_time(double time, const char* src, const char* dst, const char* variable,
+                                              double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(time, src, dst, variable, value, InstrUserVariable::SET);
+}
+
+void TRACE_link_srcdst_variable_add_with_time(double time, const char* src, const char* dst, const char* variable,
+                                              double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(time, src, dst, variable, value, InstrUserVariable::ADD);
+}
+
+void TRACE_link_srcdst_variable_sub_with_time(double time, const char* src, const char* dst, const char* variable,
+                                              double value) // XBT_ATTRIB_DEPRECATED_v334
+{
+  instr_user_srcdst_variable(time, src, dst, variable, value, InstrUserVariable::SUB);
+}
+
+xbt_dynar_t TRACE_get_link_variables() // XBT_ATTRIB_DEPRECATED_v334
+{
+  return instr_set_to_dynar(user_link_variables);
+}
+
 /** @ingroup TRACE_user_variables
  *  @brief Declare a new user state associated to hosts.
  *