distributed slave nodes forking for each core to take advantage of multicore architectures
git-svn-id: svn://anubis/fart/trunk@245 7f9b0f55-74a9-4bce-be96-3c2cd072584d
This commit is contained in:
parent
f6c6e8ec36
commit
054a5e8f0e
14
main/fart.cc
14
main/fart.cc
@ -42,12 +42,22 @@ void startChildren(const string & servername,
|
|||||||
args.push_back(server_port_str);
|
args.push_back(server_port_str);
|
||||||
for (int i = 0, sz = options.size(); i < sz; i++)
|
for (int i = 0, sz = options.size(); i < sz; i++)
|
||||||
args.push_back(options[i]);
|
args.push_back(options[i]);
|
||||||
|
|
||||||
const char * char_star_args[args.size() + 1];
|
const char * char_star_args[args.size() + 1];
|
||||||
for (int i = 0, sz = args.size(); i < sz; i++)
|
for (int i = 0, sz = args.size(); i < sz; i++)
|
||||||
char_star_args[i] = args[i].c_str();
|
char_star_args[i] = args[i].c_str();
|
||||||
char_star_args[args.size()] = (char *) NULL;
|
char_star_args[args.size()] = (char *) NULL;
|
||||||
|
|
||||||
int num_children = sysconf(_SC_NPROCESSORS_CONF);
|
int num_children = sysconf(_SC_NPROCESSORS_CONF);
|
||||||
|
num_children--;
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* debug */
|
||||||
|
cout << "executing: 'fart', ";
|
||||||
|
for (int i = 0, sz = args.size(); i < sz; i++)
|
||||||
|
cout << "'" << char_star_args[i] << "', ";
|
||||||
|
cout << endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
for (int i = 0; i < num_children; i++)
|
for (int i = 0; i < num_children; i++)
|
||||||
{
|
{
|
||||||
@ -203,9 +213,7 @@ int main(int argc, char * argv[])
|
|||||||
{
|
{
|
||||||
if (!child)
|
if (!child)
|
||||||
{
|
{
|
||||||
startChildren(the_distrib.getServerName(),
|
startChildren(server_name, server_port, client_options);
|
||||||
the_distrib.getServerPort(),
|
|
||||||
client_options);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
the_distrib.startClient(server_name, server_port);
|
the_distrib.startClient(server_name, server_port);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user