aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2014-02-19 16:12:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2014-02-19 16:12:13 -0500
commitf9e1010c2adc8653d874e8d9352b923ab10e0732 (patch)
tree7d9785f0834752b65490a31564f97a3fd24662b8
parentd994fd0cc5f18fb4d9d8c9b61ac2b4680d4ca253 (diff)
Update to use liblitmus's new cluster APIs
-rw-r--r--tools/pgmrt.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/tools/pgmrt.cpp b/tools/pgmrt.cpp
index 9b8613c..b6de6f3 100644
--- a/tools/pgmrt.cpp
+++ b/tools/pgmrt.cpp
@@ -108,7 +108,6 @@ struct rt_config
108{ 108{
109 bool syncRelease; 109 bool syncRelease;
110 int cluster; 110 int cluster;
111 int clusterSize;
112 int budget; 111 int budget;
113 112
114 uint64_t phase_ns; 113 uint64_t phase_ns;
@@ -411,7 +410,7 @@ void work_thread(rt_config cfg)
411 param.exec_cost = cfg.execution_ns; 410 param.exec_cost = cfg.execution_ns;
412 param.split = cfg.split_factor; 411 param.split = cfg.split_factor;
413 if(cfg.cluster >= 0) 412 if(cfg.cluster >= 0)
414 param.cpu = cluster_to_first_cpu(cfg.cluster, cfg.clusterSize); 413 param.cpu = domain_to_first_cpu(cfg.cluster);
415 param.budget_policy = (cfg.budget) ? PRECISE_ENFORCEMENT : NO_ENFORCEMENT; 414 param.budget_policy = (cfg.budget) ? PRECISE_ENFORCEMENT : NO_ENFORCEMENT;
416 param.release_policy = (isSrc) ? TASK_PERIODIC : TASK_EARLY; 415 param.release_policy = (isSrc) ? TASK_PERIODIC : TASK_EARLY;
417 416
@@ -429,7 +428,7 @@ void work_thread(rt_config cfg)
429 if(cfg.cluster >= 0) { 428 if(cfg.cluster >= 0) {
430 // Set our CPU affinity mask to put us on our cluster's 429 // Set our CPU affinity mask to put us on our cluster's
431 // CPUs. This must be done prior to entering real-time mode. 430 // CPUs. This must be done prior to entering real-time mode.
432 ret = be_migrate_to_cluster(cfg.cluster, cfg.clusterSize); 431 ret = be_migrate_to_domain(cfg.cluster);
433 assert(ret == 0); 432 assert(ret == 0);
434 } 433 }
435 ret = set_rt_task_param(gettid(), &param); 434 ret = set_rt_task_param(gettid(), &param);
@@ -896,7 +895,7 @@ int main(int argc, char** argv)
896 opts.add_options() 895 opts.add_options()
897 ("wait,w", "Wait for release") 896 ("wait,w", "Wait for release")
898 ("cluster,c", program_options::value<std::string>()->default_value(""), "CPU assignment for each node [<name>:<cluster or CPU ID>,]") 897 ("cluster,c", program_options::value<std::string>()->default_value(""), "CPU assignment for each node [<name>:<cluster or CPU ID>,]")
899 ("clusterSize,z", program_options::value<int>()->default_value(1), "Cluster size") 898 ("clusterSize,z", program_options::value<int>()->default_value(1), "Cluster size (ignored)")
900 ("enforce,e", "Enable budget enforcement") 899 ("enforce,e", "Enable budget enforcement")
901 ("graphfile", program_options::value<std::string>(), "File that describes PGM graph") 900 ("graphfile", program_options::value<std::string>(), "File that describes PGM graph")
902 ("name,n", program_options::value<std::string>()->default_value(""), "Graph name") 901 ("name,n", program_options::value<std::string>()->default_value(""), "Graph name")
@@ -952,7 +951,6 @@ int main(int argc, char** argv)
952 { 951 {
953 .syncRelease = (vm.count("wait") != 0), 952 .syncRelease = (vm.count("wait") != 0),
954 .cluster = -1, 953 .cluster = -1,
955 .clusterSize = vm["clusterSize"].as<int>(),
956 .budget = (vm.count("budget") != 0), 954 .budget = (vm.count("budget") != 0),
957 .phase_ns = 0, 955 .phase_ns = 0,
958 .period_ns = 0, 956 .period_ns = 0,