Ejemplo n.º 1
0
void RuntimeContext::SetRuntimeContext(const RuntimeConfiguration &conf)
{
    cpu_affinity_ =
        ParseCpuAffinity(conf.GetProperty<string>(
                             RuntimeConfiguration::RtCpuAffinity),
                         cpu_affinity_);
}
Ejemplo n.º 2
0
void RuntimeContext::CheckParams(const RuntimeConfiguration &conf)
{
    vector<size_t> affinity;
    affinity = ParseCpuAffinity(
        conf.GetProperty<string>(RuntimeConfiguration::RtCpuAffinity),
        affinity);
    size_t nr_threads = conf.GetProperty<size_t>(
        RuntimeConfiguration::RtNrThreads);

    if (affinity.size() != nr_threads) {
        LOG_ERROR << "error in configuration of runtime (clash in number "
            "of threads and affinity)\n";
        exit(1);
    }

    LOG_INFO << "Number of threads: " << nr_threads << "\n";
    stringstream os;
    os << "Thread affinity: {";
    for (size_t i = 0; i < affinity.size(); ++i) {
        if (i != 0)
            os << ",";
        os << affinity[i];
    }

    os << "}\n";
    LOG_INFO << os.str();
}
Ejemplo n.º 3
0
    void RtCtx::SetRtCtx(const RtConfig &conf)
    {
      size_t nr_threads = conf.GetProperty<size_t>(RtConfig::RtNrThreads);
      cpu_affinity_ = ParseCpuAffinity
	(conf.GetProperty<string>(RtConfig::RtCpuAffinity), cpu_affinity_);

      if (cpu_affinity_.size() != nr_threads) {
        for (size_t i = 1; i < nr_threads; ++i)
	  cpu_affinity_.push_back(i);
      }
    }
Ejemplo n.º 4
0
    void RtCtx::CheckParams(const RtConfig &conf)
    {
      vector<size_t> affinity;
      affinity = ParseCpuAffinity
	(conf.GetProperty<string>(RtConfig::RtCpuAffinity), affinity);
      size_t nr_threads = conf.GetProperty<size_t>(RtConfig::RtNrThreads);

      LOG_INFO << "Number of threads: " << nr_threads << "\n";
      stringstream os;
      os << "Thread affinity: {";
      for (size_t i = 0; i < nr_threads; ++i) {
        if (i != 0)
	  os << ",";
        if (affinity.size() != nr_threads)
	  os << i;
        else
	  os << affinity[i];
      }

      os << "}\n";
      LOG_INFO << os.str();
    }