1 #include <../../nrnconf.h>
24 #define debug BBSImpl::debug_
154 printf(
"upkdouble %g\n", d);
177 printf(
"upkpickle %lu |%s|\n",
s.size(),
s.data());
198 printf(
"pkdouble %g\n", x);
219 printf(
"pkpickle %lu |%s|\n",
s.size(),
s.data());
285 pkint(!rs.empty() ? 1 : 0);
319 printf(
"can't execute BBS::context on a worker\n");
344 printf(
"working n_=%d: return false\n",
n_);
371 printf(
"working n_=%d: after %d try elapsed %g sec got result for %d id=%d x=%g\n",
402 printf(
"%d BBS::worker is_master=%d nrnmpi_myid = %d\n",
433 printf(
"look_take |%s| return %d\n",
key, b);
static double total_exec_time
static double worker_take_time
bool look_take(const char *)
void master_works(int flag)
std::vector< char > upkpickle()
void upkvec(int n, double *px)
void pkvec(int n, double *px)
bool working(int &id, double &x, int &userid)
void perror(const char *)
void add_wait_time(double)
void pkpickle(const std::vector< char > &)
virtual bool look_take(const char *)=0
virtual void return_args(int userid)
virtual void post_result(int id)=0
virtual void pkpickle(const std::vector< char > &)=0
std::vector< char > execute_helper(int id, bool exec=true)
virtual void save_args(int userid)=0
virtual int take_todo()=0
virtual int submit(int userid)
static bool master_works_
virtual void pkstr(const char *)=0
virtual void execute(int id)
virtual void upkvec(int, double *)=0
virtual int look_take_result(int pid)=0
virtual char * upkstr()=0
virtual void perror(const char *)
virtual void pkvec(int, double *)=0
virtual std::vector< char > upkpickle()=0
virtual void pkint(int)=0
void subworld_worker_execute()
virtual int look_take_todo()=0
virtual void post_todo(int parentid)=0
virtual bool working(int &id, double &x, int &userid)
virtual void post(const char *)=0
virtual void take(const char *)=0
std::vector< char > pickle_ret_
virtual double upkdouble()=0
virtual bool look(const char *)=0
virtual void pkdouble(double)=0
virtual int master_take_result(int pid)
static double nrnmpi_wtime()
int const size_t const size_t n
static double userid(void *v)