mirror of https://github.com/BOINC/boinc.git
- client: when suspending a GPU job,
always remove it from memory, even if it hasn't checkpointed. Otherwise we'll typically run another GPU job right away, and it will bomb out or revert to CPU mode because it can't allocate video RAM svn path=/trunk/boinc/; revision=18503
This commit is contained in:
parent
2a0a83d1c8
commit
6a22356497
|
@ -6031,3 +6031,13 @@ Charlie 23 June 2009
|
|||
clientscr/
|
||||
res/
|
||||
ProgThruProc_ss_logo.png
|
||||
|
||||
David 26 June 2009
|
||||
- client: when suspending a GPU job,
|
||||
always remove it from memory, even if it hasn't checkpointed.
|
||||
Otherwise we'll typically run another GPU job right away,
|
||||
and it will bomb out or revert to CPU mode because it
|
||||
can't allocate video RAM
|
||||
|
||||
client/
|
||||
app.cpp
|
||||
|
|
|
@ -98,25 +98,21 @@ int ACTIVE_TASK::preempt(int preempt_type) {
|
|||
remove = false;
|
||||
break;
|
||||
case REMOVE_MAYBE_USER:
|
||||
if (checkpoint_elapsed_time == 0) {
|
||||
remove = false;
|
||||
break;
|
||||
}
|
||||
if (result->uses_coprocs() && checkpoint_wall_time) {
|
||||
remove = true;
|
||||
break;
|
||||
}
|
||||
remove = !gstate.global_prefs.leave_apps_in_memory;
|
||||
break;
|
||||
case REMOVE_MAYBE_SCHED:
|
||||
if (checkpoint_elapsed_time == 0) {
|
||||
remove = false;
|
||||
break;
|
||||
}
|
||||
// GPU jobs: always remove from mem, since it's tying up GPU RAM
|
||||
//
|
||||
if (result->uses_coprocs()) {
|
||||
remove = true;
|
||||
break;
|
||||
}
|
||||
// if it's never checkpointed, leave in mem
|
||||
//
|
||||
if (checkpoint_elapsed_time == 0) {
|
||||
remove = false;
|
||||
break;
|
||||
}
|
||||
// otherwise obey user prefs
|
||||
//
|
||||
remove = !gstate.global_prefs.leave_apps_in_memory;
|
||||
break;
|
||||
case REMOVE_ALWAYS:
|
||||
|
|
Loading…
Reference in New Issue