mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=4283
This commit is contained in:
parent
da00b02632
commit
448c9ab56d
|
@ -17984,3 +17984,13 @@ David 1 Oct 2004
|
|||
cs_account.C
|
||||
cs_prefs.C
|
||||
cs_scheduler.C
|
||||
|
||||
David 1 Oct 2004
|
||||
- CLIENT_STATE::avg_proc_rate: include on_frac in the formula
|
||||
(from Ben Herndon)
|
||||
|
||||
client/
|
||||
cs_scheduler.C
|
||||
time_stats.h
|
||||
sched/
|
||||
server_types.h
|
||||
|
|
|
@ -345,7 +345,7 @@ bool CLIENT_STATE::some_project_rpc_ok() {
|
|||
double CLIENT_STATE::avg_proc_rate(PROJECT *p) {
|
||||
return (p->resource_share / trs)
|
||||
* ncpus
|
||||
* time_stats.active_frac;
|
||||
* time_state.on_frac * time_stats.active_frac;
|
||||
}
|
||||
|
||||
// "estimated time to project result count"
|
||||
|
|
|
@ -17,22 +17,22 @@
|
|||
// Contributor(s):
|
||||
//
|
||||
|
||||
// keep track of the fraction of time this host is
|
||||
// "on" (i.e. the core client is running)
|
||||
// "connected" (to the Internet)
|
||||
// "active" (not suspended by user activity or prefs)
|
||||
//
|
||||
// We maintain an exponentially weighted mean of these quantities
|
||||
|
||||
#include "miofile.h"
|
||||
|
||||
class TIME_STATS {
|
||||
int last_update;
|
||||
bool first;
|
||||
public:
|
||||
// we maintain an exponentially weighted average of these quantities:
|
||||
double on_frac;
|
||||
// the fraction of time this host runs the core client
|
||||
double connected_frac;
|
||||
// of the time running the core client,
|
||||
// the fraction the host is connected to the Internet
|
||||
double active_frac;
|
||||
// of the time running the core client,
|
||||
// the fraction the core client is able to work
|
||||
// (due to preferences, manual suspend/resume, etc.)
|
||||
|
||||
void update(bool is_connected, bool is_active);
|
||||
|
||||
|
|
|
@ -86,7 +86,6 @@ The components of a BOINC project, and how to create them.
|
|||
<li> <a href=code_signing.php>Code signing</a>
|
||||
<li> <a href=tool_update_versions.php>Adding application versions</a>
|
||||
<li> <a href=tool_upgrade.php>Upgrading a project's server software</a>
|
||||
<li> <a href=web.php>Managing the project web site</a>
|
||||
|
||||
</ul>
|
||||
|
||||
|
@ -132,6 +131,16 @@ Using disk space on participant hosts
|
|||
<li> <a href=delete_file.php>Deleting files</a>
|
||||
</ul>
|
||||
|
||||
<font size=+1><b>
|
||||
Miscellaneous
|
||||
</b></font>
|
||||
<br>
|
||||
<font size=-1>
|
||||
Communicating with participants
|
||||
</font>
|
||||
<ul>
|
||||
<li> <a href=web.php>Managing the project web site</a>
|
||||
</ul>
|
||||
";
|
||||
page_tail();
|
||||
?>
|
||||
|
|
|
@ -72,6 +72,12 @@ function list_item_func($x, $y) {
|
|||
list_item(html_text($x), $y);
|
||||
}
|
||||
|
||||
function list_bar($x) {
|
||||
echo "
|
||||
<tr><td colspan=2 bgcolor=eeeecc><center><b>$x</b></center></td></tr>
|
||||
";
|
||||
}
|
||||
|
||||
function list_end() {
|
||||
echo "</table><p>\n";
|
||||
}
|
||||
|
|
|
@ -104,7 +104,6 @@ list_item_func(
|
|||
);
|
||||
list_item_func(
|
||||
"get_messages(
|
||||
int nmessages,
|
||||
int seqno,
|
||||
vector<MESSAGE_DESC>&
|
||||
)",
|
||||
|
@ -112,9 +111,8 @@ list_item_func(
|
|||
Each message has a sequence number (1, 2, ...),
|
||||
a priority (1=informational, 2=error)
|
||||
and a timestamp.
|
||||
The RPC requests the N most recent messages
|
||||
with sequence numbers greater than M.
|
||||
They are returned in order of decreasing sequence number."
|
||||
The RPC requests the messages with sequence numbers greater than M.
|
||||
They are returned in order of increasing sequence number."
|
||||
);
|
||||
list_item_func(
|
||||
"file_transfer_op(FILE_TRANSFER&, char* op)",
|
||||
|
|
|
@ -73,6 +73,11 @@ show_link(
|
|||
"www.boinc.de",
|
||||
"http://www.boinc.de/"
|
||||
);
|
||||
show_link(
|
||||
"German",
|
||||
"BOINC - LUBECA (Lübeck, Germany)",
|
||||
"http://www.boinc-lubeca.de/"
|
||||
);
|
||||
show_link(
|
||||
"German",
|
||||
"www.boinc-forum.de",
|
||||
|
|
|
@ -0,0 +1,84 @@
|
|||
<?php
|
||||
require_once("docutil.php");
|
||||
page_head("Participating in multiple projects");
|
||||
echo "
|
||||
<p>
|
||||
|
||||
You can join a second and subsequent projects as follows.
|
||||
<ol>
|
||||
<li> Visit the second project's web site and create an account.
|
||||
You don't have to use the same email address,
|
||||
but if you do so the accounts will be 'coupled'
|
||||
in terms of preferences and statistics.
|
||||
<li> Receive an email containing an account ID.
|
||||
<li> Paste the account ID into the project's web site
|
||||
to complete the account creation.
|
||||
<li> Run the BOINC client, and select the <b>Attach to Project</b> command.
|
||||
Enter the project's URL and your account ID.
|
||||
|
||||
</ol>
|
||||
|
||||
<h2>General preferences</h2>
|
||||
<p>
|
||||
Each BOINC project has its own database and servers.
|
||||
Each account has its own copy of your
|
||||
<a href=prefs.php>general preferences</a>.
|
||||
When you edit your general preferences on a particular project,
|
||||
initially it changes only that one account.
|
||||
However, BOINC will eventually
|
||||
<ol>
|
||||
<li> propagate the new preferences to all computers
|
||||
attached to that account, and
|
||||
<li> propagate the new preferences to all
|
||||
accounts that are 'coupled' to the first one
|
||||
(i.e. that have the same email address,
|
||||
and have at least one computer attached to both accounts).
|
||||
</ol>
|
||||
|
||||
This propagation is 'piggybacked' onto the
|
||||
scheduler requests between your computers and project servers.
|
||||
You can accelerate the propagation by using
|
||||
the Update command in the BOINC Manager.
|
||||
|
||||
<p>
|
||||
Be careful about editing general preferences at different projects.
|
||||
If you change your general preferences at project A,
|
||||
then edit them at project B before the first changes have propagated there,
|
||||
the second changes will overwrite the first.
|
||||
To avoid this, pick a 'home project' and do all your edits there.
|
||||
|
||||
<h2>Host location</h2>
|
||||
|
||||
<p>
|
||||
Each host attached to a project has its own
|
||||
record in the database of that project;
|
||||
this record includes the location (home/work/school) of the host.
|
||||
BOINC doesn't try to make these agree -
|
||||
it's possible that a given host has location 'work'
|
||||
on project A, and location 'school' on project B.
|
||||
When the BOINC Manager starts up, it shows you
|
||||
that locations of the host on all the projects
|
||||
to which it's attached.
|
||||
|
||||
<p>
|
||||
A host's location on a given project determines which
|
||||
project preferences are used:
|
||||
i.e., if a host has location 'home' an project A,
|
||||
and you've defined separate project preferences for 'home',
|
||||
it will use those preferences.
|
||||
|
||||
<p>
|
||||
The choice of general preferences (if you've defined
|
||||
separate preferences) is determined by
|
||||
the host's location on the project from which the
|
||||
general preferences were propagated,
|
||||
i.e. from the project where you last edited them.
|
||||
So if you edit your general preferences on project A,
|
||||
a host's location on project A is 'work',
|
||||
and you've defined separate general preferences for 'work',
|
||||
the host will use those.
|
||||
|
||||
|
||||
";
|
||||
page_tail();
|
||||
?>
|
|
@ -18,7 +18,7 @@ echo "
|
|||
</ul>
|
||||
<li> <a href=prefs.php>Preferences</a>
|
||||
<li> <a href=host_id.php>Host identification and merging</a>
|
||||
<li> <a href=startup.php>Participating in multiple projects</a>
|
||||
<li> <a href=multiple_projects.php>Participating in multiple projects</a>
|
||||
<li> <a href=credit.php>Computation credit</a>
|
||||
<li> <a href=cpu_sched.php>CPU scheduling</a>
|
||||
<li> <a href=teams.php>Teams</a>
|
||||
|
|
195
doc/prefs.php
195
doc/prefs.php
|
@ -3,95 +3,166 @@ require_once("docutil.php");
|
|||
page_head("Preferences");
|
||||
echo "
|
||||
<p>
|
||||
You can specify <b>preferences</b> determining and limiting
|
||||
You can specify <b>preferences</b> that determine and limit
|
||||
how BOINC uses your computers.
|
||||
Preferences are divided into two groups:
|
||||
<h3>General preferences</h3>
|
||||
Preferences are divided into two groups: General and Project.
|
||||
|
||||
<h2>Editing preferences</h2>
|
||||
<p>
|
||||
You can view and edit your preferences via the project's web site.
|
||||
Click on 'Your account', then 'View or edit preferences'.
|
||||
This shows you the preferences.
|
||||
If you want to change anything,
|
||||
click on 'Edit preferences'.
|
||||
|
||||
<p>
|
||||
When you change your preferences on the web,
|
||||
the changes won't take effect immediately on your computer;
|
||||
they'll take effect the next time your computer
|
||||
connects to the project's server.
|
||||
If you want this to happen immediately,
|
||||
bring up the BOINC Manager on your computer,
|
||||
select the project, and click 'Update'.
|
||||
|
||||
<p>
|
||||
If you're running BOINC on several computers,
|
||||
preference changes will eventually propagate to all of them.
|
||||
|
||||
<p>
|
||||
If you participate in multiple BOINC projects,
|
||||
click <a href=multiple_projects.php>here</a>
|
||||
for information about preferences.
|
||||
|
||||
<h2>Location-specific preferences</h2>
|
||||
|
||||
If you have computers at several locations (e.g. home, work and school)
|
||||
you may want to use different preferences for different locations.
|
||||
The preferences editing system (see above)
|
||||
lets you create (or delete) separate preferences for home, work, and school.
|
||||
|
||||
<p>
|
||||
Each computer attached to your account has a location.
|
||||
To view this, go to the project's web site, then click
|
||||
'Your account' and 'View Computers'.
|
||||
Click on the ID of the computer you're interested in.
|
||||
At the bottom of the page there's a popup menu
|
||||
that lets you see or change the location.
|
||||
A change to a computer's location will take effect
|
||||
only when that computer contacts the server;
|
||||
you can make this happen immediately
|
||||
using the BOINC Manager's Update command.
|
||||
|
||||
<p>
|
||||
If a computer has its location set to 'home' (for example),
|
||||
and you've defined separate preferences for home,
|
||||
it will use those preferences.
|
||||
Otherwise it will use your default preferences.
|
||||
|
||||
<p>
|
||||
Your account has a 'default location' (home, work, or school).
|
||||
New computers attaching to your account will be given the default location.
|
||||
The default location is part of your project preferences,
|
||||
so to change it, edit your project preferences.
|
||||
|
||||
<h2>General preferences</h2>
|
||||
<b>General preferences</b> apply to all BOINC projects in which you participate.
|
||||
They include:
|
||||
";
|
||||
|
||||
list_start();
|
||||
|
||||
list_bar("Computing preferences");
|
||||
list_item("When to work",
|
||||
"You can specify whether work (computation and network transfer) should be done
|
||||
1) while the host is being used (i.e. during keyboard and mouse input);
|
||||
2) while the computer is being powered
|
||||
by batteries (for laptop users).
|
||||
");
|
||||
list_item("Confirm before connect",
|
||||
"Whether to wait for confirmation before making network connections.");
|
||||
list_item("Work buffering min and max",
|
||||
"
|
||||
Your computer maintains an estimate of the amount of work remaining
|
||||
(i.e. the time until one of its processors will be idle).
|
||||
You can choose the <b>minimum work</b> and the
|
||||
<b>maximum work</b> to keep.
|
||||
Normally the work remaining is between these two limits.
|
||||
When the work remaining reaches minimum level,
|
||||
your computer contacts one or more scheduling servers,
|
||||
and attempts to get enough work to exceed the maximum level.
|
||||
<p>
|
||||
This scheme allows computers that are sporadically connected
|
||||
(because they're portable or have modem-based connections)
|
||||
to avoid becoming idle due to lack of work.
|
||||
If the host is frequently disconnected from the Internet, the min
|
||||
should be at least as long as the typical period of disconnection.
|
||||
The larger the difference between min and max, the less often
|
||||
the BOINC client will connect to the Internet.
|
||||
1) if the computer is in use (i.e. during keyboard and mouse input);
|
||||
2) if the computer is being powered by batteries (for laptop users).
|
||||
You can also specify a range of hours when work should be done.
|
||||
");
|
||||
|
||||
list_item("Disk usage limits",
|
||||
|
||||
list_item("Leave applications in memory while preempted",
|
||||
"If yes, applications will be preempted by suspending and resuming,
|
||||
rather than quitting.
|
||||
This uses more virtual memory, but uses CPU time more efficiently."
|
||||
);
|
||||
|
||||
list_item("Switch between applications every X minutes",
|
||||
"This determines how often BOINC switches between projects."
|
||||
);
|
||||
|
||||
list_item("Virtual memory",
|
||||
"Limit the virtual memory used by BOINC"
|
||||
);
|
||||
|
||||
list_bar("Disk preferences");
|
||||
|
||||
list_item("Usage limits",
|
||||
"You can limit the disk space used by BOINC in any of three ways:
|
||||
1) Maximum disk space used by BOINC;
|
||||
2) Maximum percentage of total space that can be used by BOINC.
|
||||
3) Minimum disk space to keep free.
|
||||
");
|
||||
|
||||
list_item("Leave applications in memory while preempted",
|
||||
"If yes, applications will be preempted by suspend/resume.
|
||||
This uses more virtual memory, but uses CPU time more efficiently."
|
||||
list_item("Access interval",
|
||||
"A suggested interval between disk accesses.
|
||||
Useful on laptops where the disk may be spun down for long periods.
|
||||
"
|
||||
);
|
||||
|
||||
list_bar("Network preferences");
|
||||
list_item("Bandwidth limits",
|
||||
"Limit the number of bytes per second uploaded or downloaded by BOINC."
|
||||
);
|
||||
list_item("Network connection preferences",
|
||||
"Whether to wait for confirmation before making network connections,
|
||||
and whether to disconnect when done.");
|
||||
|
||||
list_item("Time between network connections",
|
||||
"Target time between network connections.
|
||||
When your computer asks a server for work,
|
||||
it will try to get enough work to last for this long."
|
||||
);
|
||||
|
||||
list_end();
|
||||
|
||||
echo "
|
||||
You can view and edit your general preferences through a web interface,
|
||||
at the site of any project in which you participate.
|
||||
Changes are automatically propagated to all your hosts;
|
||||
this is done the next time the host contacts the project's server,
|
||||
so there may be some delay.
|
||||
|
||||
<h3>Project preferences</h3>
|
||||
<h2>Project preferences</h2>
|
||||
There is a separate set of <b>project preferences</b>
|
||||
for each project in which you participate.
|
||||
They include:
|
||||
<ul>
|
||||
<li> Resource share: if projects contend for resources,
|
||||
the amount allocated to a project is proportional to this number.
|
||||
<li> Whether to show email address on web site
|
||||
<li> Whether project should send emails to user
|
||||
<li> Project-specific preferences (defined by the project;
|
||||
e.g., to specify graphics color schemes).
|
||||
</ul>
|
||||
These include:
|
||||
";
|
||||
list_start();
|
||||
list_item(
|
||||
"Resource share",
|
||||
"If projects contend for resources,
|
||||
the amount allocated to a project is proportional to this number."
|
||||
);
|
||||
list_item(
|
||||
"Email prefs",
|
||||
"Whether the project should send you newsletters by email."
|
||||
);
|
||||
list_item(
|
||||
"Hide computer information",
|
||||
"Whether the project should show information
|
||||
about your computers
|
||||
(their CPU and OS type, benchmark ratings etc.;
|
||||
not their names or addresses)
|
||||
on its web site."
|
||||
);
|
||||
list_item(
|
||||
"Default computer location",
|
||||
"The location assigned to computers that attach to this account."
|
||||
);
|
||||
list_item(
|
||||
"Project-specific preferences",
|
||||
"Defined by the project;
|
||||
e.g., to specify graphics color schemes."
|
||||
);
|
||||
list_end();
|
||||
echo"
|
||||
<p>
|
||||
You can view and edit project preferences through
|
||||
a web interface at the project's web site.
|
||||
|
||||
<h3>Location-specific preferences</h3>
|
||||
If you have computers both at home and at work
|
||||
you may want to use different preferences for them.
|
||||
In addition to your 'primary preferences'
|
||||
(which are used by default)
|
||||
BOINC allows you to create separate preferences for
|
||||
home, work, and school.
|
||||
<p>
|
||||
Your account with a project has a 'default location'
|
||||
(home, work, or school).
|
||||
New computers registered to your account will be
|
||||
given the default location.
|
||||
You can change the location of an existing computer
|
||||
through the project's web site.
|
||||
";
|
||||
page_tail();
|
||||
?>
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
<?php
|
||||
require_once("docutil.php");
|
||||
page_head("Participating in multiple projects");
|
||||
echo "
|
||||
<p>
|
||||
|
||||
You can join a second and subsequent projects as follows.
|
||||
<ol>
|
||||
<li> Visit the new project's web site and create an account.
|
||||
Note: if you wish, you can use different email and name
|
||||
than those of your first account.
|
||||
<li> Receive an email containing an account ID (a long random string).
|
||||
<li> Run the BOINC client, and select the <b>Attach to Project</b> command.
|
||||
Enter the project's URL and your account ID.
|
||||
|
||||
</ol>
|
||||
|
||||
<h3>Where to edit your preferences</h3>
|
||||
<p>
|
||||
Your preferences are stored on BOINC servers.
|
||||
When your hosts communicate with a server they get the latest preferences,
|
||||
and they pass along these preferences to other servers.
|
||||
Thus, when you change your preferences on one project's web site,
|
||||
these changes will quickly spread to all your hosts,
|
||||
and to the web sites of all the other projects in which you participate.
|
||||
|
||||
<p>
|
||||
If you change your preferences first at one project
|
||||
and then at another, the second changes will overwrite the first.
|
||||
To avoid this, do all your edits at one project.
|
||||
|
||||
<p>
|
||||
Some projects may provide a web interface
|
||||
for editing their project-specific preferences.
|
||||
In this case it may be necessary to edit preferences at different sites.
|
||||
To avoid overwriting edits,
|
||||
wait until previous edits have propagated to a site
|
||||
before editing preferences there.
|
||||
";
|
||||
page_tail();
|
||||
?>
|
|
@ -29,7 +29,14 @@ boinc_3.17_i686-pc-linux-gnu.gz
|
|||
astropulse_7.17_windows_intelx86.exe
|
||||
</pre>
|
||||
The prefix name and extensions .gz, .exe, .sit are ignored.
|
||||
Platform strings must match the names of platforms in the database.
|
||||
<p>
|
||||
Important notes:
|
||||
<ul>
|
||||
<li> <b>Platform strings must match the names of platforms in the database.</b>
|
||||
If needed, <a href=tool_xadd.php>add the platform to the DB</a>.
|
||||
<li> <b>Your application must have the same major version number
|
||||
as your BOINC server software</b>.
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
If a file of the form
|
||||
|
|
|
@ -142,8 +142,9 @@ struct SCHEDULER_REPLY {
|
|||
int request_delay; // don't request again until this time elapses
|
||||
char message[1024];
|
||||
char message_priority[256];
|
||||
int hostid; // send this only if nonzero.
|
||||
// this tells client to reset rpc_seqno
|
||||
int hostid;
|
||||
// nonzero only if a new host record was created.
|
||||
// this tells client to reset rpc_seqno
|
||||
bool send_global_prefs; // whether to send global preferences
|
||||
bool nucleus_only; // send only message
|
||||
bool probable_user_browser;
|
||||
|
|
Loading…
Reference in New Issue