double precision MPI_WTIME
double precision MPI_WTICK
+
+ external smpi_execute_flops
+ external smpi_execute
+ external smpi_get_host_power_peak_at
+ external smpi_get_host_current_power_peak
+ external smpi_get_host_nb_pstates
+ external smpi_set_host_power_peak_at
+ external smpi_get_host_consumed_energy
+
+ double precision smpi_get_host_power_peak_at
+ double precision smpi_get_host_current_power_peak
+ integer smpi_get_host_nb_pstates
+ double precision smpi_get_host_consumed_energy
XBT_PUBLIC(void) smpi_execute_flops(double flops);
XBT_PUBLIC(void) smpi_execute(double duration);
+XBT_PUBLIC(double) smpi_get_host_current_power_peak_(void);
+XBT_PUBLIC(int) smpi_get_host_nb_pstates_(void);
+XBT_PUBLIC(double) smpi_get_host_consumed_energy_(void);
+
XBT_PUBLIC(double) smpi_get_host_power_peak_at(int pstate_index);
-XBT_PUBLIC(double) smpi_get_host_current_power_peak(void);
-XBT_PUBLIC(int) smpi_get_host_nb_pstates(void);
+#define smpi_get_host_current_power_peak() smpi_get_host_current_power_peak_()
+#define smpi_get_host_nb_pstates() smpi_get_host_nb_pstates_()
XBT_PUBLIC(void) smpi_set_host_power_peak_at(int pstate_index);
-XBT_PUBLIC(double) smpi_get_host_consumed_energy(void);
+#define smpi_get_host_consumed_energy() smpi_get_host_consumed_energy_()
XBT_PUBLIC(unsigned int) smpi_sleep(unsigned int secs);
XBT_PUBLIC(int) smpi_gettimeofday(struct timeval *tv);
xbt_dict_free(&calls);
}
+XBT_PUBLIC(void) smpi_execute_flops_(double *flops);
+void smpi_execute_flops_(double *flops)
+{
+ smpi_execute_flops(*flops);
+}
+
+XBT_PUBLIC(void) smpi_execute_(double *duration);
+void smpi_execute_(double *duration)
+{
+ smpi_execute(*duration);
+}
+
void smpi_execute_flops(double flops) {
smx_action_t action;
smx_host_t host;
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(smpi_dvfs, smpi,
"Logging specific to SMPI (experimental DVFS support)");
+XBT_PUBLIC(double) smpi_get_host_power_peak_at_(int *pstate_index);
+XBT_PUBLIC(void) smpi_set_host_power_peak_at_(int *pstate_index);
+
/**
* \brief Return the speed of the processor (in flop/s) at a given pstate
*
return simcall_host_get_power_peak_at(SIMIX_host_self(), pstate_index);
}
+double smpi_get_host_power_peak_at_(int *pstate_index)
+{
+ return smpi_get_host_power_peak_at(*pstate_index);
+}
+
/**
* \brief Return the current speed of the processor (in flop/s)
*
* \return Returns the current processor speed
*/
-double smpi_get_host_current_power_peak(void)
+double smpi_get_host_current_power_peak_(void)
{
return simcall_host_get_current_power_peak(SIMIX_host_self());
}
/**
* \brief Return the number of pstates defined for host
*/
-int smpi_get_host_nb_pstates(void)
+int smpi_get_host_nb_pstates_(void)
{
return simcall_host_get_nb_pstates(SIMIX_host_self());
}
simcall_host_set_power_peak_at(SIMIX_host_self(), pstate_index);
}
+void smpi_set_host_power_peak_at_(int *pstate_index)
+{
+ smpi_set_host_power_peak_at(*pstate_index);
+}
+
/**
* \brief Return the total energy consumed by a host (in Joules)
*
* \return Returns the consumed energy
*/
-double smpi_get_host_consumed_energy(void)
+double smpi_get_host_consumed_energy_(void)
{
return simcall_host_get_consumed_energy(SIMIX_host_self());
}