Message boards : Questions and problems : boinccmd values not matching up with GUI
Message board moderation
Author | Message |
---|---|
Send message Joined: 22 Mar 09 Posts: 51 |
I'm ultimately trying to run the boinccmd --get_taskscommand and parse that output into an sql table. It's going well except for one problem.... In the `boinccmd` results, the value for "Estimated CPU time remaining" corresponds exactly with the GUI's task column for "Remaining (estimated)". As you'd expect. However the `boinccmd` value for "current CPU time" does not correspond to the GUI's task column for "Elapsed". it is roughly about 75% smaller than that. What is the deal here? How can I get the elapsed time a work unit has been running via `boinccmd`? |
Send message Joined: 5 Oct 06 Posts: 5121 |
However the `boinccmd` value for "current CPU time" does not correspond to the GUI's task column for "Elapsed".They're two different measurements. 'Elapsed' time means the time the task has been running, as shown by a wall-clock. 'CPU time' means the time the CPU - specifically - has been active during that time. There are many reasons why the CPU may be active for less than 100% of the run time. The commonest is if the task does most of its scientific work on a GPU: in that case, the CPU is only needed for management and to supply data. That needn't take long. Other reasons might include thermal throttling (the CPU is paused periodically to cool down), or an over-committed computer (the task is swapped out of the CPU for a few milliseconds so something more urgent can run instead). BOINC originally worked on CPUs only, and CPU time was the only value measured. Elapsed time became more important when GPUs were introduced, about 10 years ago. The client still records both values, but CPU time was removed from the Manager display, and elapsed time was never added to the boinccmd tool. We should tidy that up some day. |
Send message Joined: 28 Jun 10 Posts: 2636 |
I'm ultimately trying to run theboinccmd --get_taskscommand and parse that output into an sql table. It's going well except for one problem.... Probably showing different things. This is from one of my completed CPDN tasks.
The GUI gives run time rather than CPU time I would guess. |
Send message Joined: 22 Mar 09 Posts: 51 |
So how do I get the runtime? |
Send message Joined: 5 Oct 06 Posts: 5121 |
The boinccmd code is pretty straightforward. I'll see if I can do one of my 'copy and tweak' pull requests over the weekend. |
Send message Joined: 5 Oct 06 Posts: 5121 |
Actually, looking at the output from --get_tasks, I think it's been done already. For a completed task. name: wu_sf7_DS-16x8_Grp265895of655360_0For a running task, name: wu_sf7_DS-16x8_Grp266373of655360_0For an unstarted task. name: wu_sf7_DS-16x8_Grp268382of655360_0So, what do you still need, apart from the ones I've highlighted? Be aware that your computer also records a permanent list of all completed tasks by project, in the file "job_log_[project].txt". Lines are written on completion, and the one for the completed task above reads 1601725393 ue 3812.124815 ct 2694.590000 fe 10000000000000 nm wu_sf7_DS-16x8_Grp265895of655360_0 et 2766.865900 es 0We can break that down for readability: 1601725393 ue 3812.124815 ct 2694.590000 final CPU time fe 10000000000000 nm wu_sf7_DS-16x8_Grp265895of655360_0 et 2766.865900 final elapsed time es 0 |
Send message Joined: 22 Mar 09 Posts: 51 |
Actually, looking at the output from --get_tasks, I think it's been done already. I don't have an "elapsed task time" row in the result of --get_tasks. There is estimated CPU time and there is slot, with nothing in-between for me. I'm on 7.6.11. Any idea why I'm missing this information? 10) ----------- name: 172425_Hs_T116268-ITGAV_wu-12_1601185078389_2 WU name: 172425_Hs_T116268-ITGAV_wu-12_1601185078389 project URL: http://gene.disi.unitn.it/test/ received: Sat Oct 3 07:48:43 2020 report deadline: Fri Oct 9 07:48:42 2020 ready to report: no state: downloaded scheduler state: scheduled active_task_state: EXECUTING app version num: 110 resources: 1 CPU estimated CPU time remaining: 13120.401551 slot: 0 PID: 11892 CPU time at last checkpoint: 10628.880000 current CPU time: 10633.100000 fraction done: 0.478333 swap size: 4303 MB working set size: 145 MB |
Send message Joined: 5 Oct 06 Posts: 5121 |
I don't have an "elapsed task time" row in the result of --get_tasks. There is estimated CPU time and there is slot, with nothing in-between for me.In a word, no. Mine was taken from BOINC v7.16.11 (released last month), running under Windows 7/x64. Having looked at the code, I suspect that boinccmd uses exactly the same function to parse the client reply as the GUI manager does - and I don't think that's changed much in 10 years. I'll take a proper look tomorrow. |
Send message Joined: 5 Oct 06 Posts: 5121 |
I wondered if there might be something odd about your project (failure to checkpoint, or something). So I ran a test task (same BOINC version as last time): name: 172770_Hs_T137591-GBE1_wu-121_1601737922481_1So that wasn't it. Where did you get your BOINC version from? (and why did we each get a different app_version number?) |
Send message Joined: 31 Dec 18 Posts: 293 |
(and why did we each get a different app_version number?) All of my tn-grid WUs have been v1.10 regardless of which level of optimisation they’re at. That’s running Ubuntu or Mint. |
Send message Joined: 5 Oct 06 Posts: 5121 |
All of my tn-grid WUs have been v1.10 regardless of which level of optimisation they’re at. That’s running Ubuntu or Mint.Yes, I saw that from the project's Applications page after I posted - v1.10 could be either Linux or Mac, but v1.11 can only be Windows. Here's one from Mint, also at v7.16.11: name: 172467_Hs_T001760-INPP5F_wu-172_1601265762688_2So I think the problem can only be the version of BOINC that he's using. I'll check when that line was added, next time I'm back at a Windows machine. |
Send message Joined: 5 Oct 06 Posts: 5121 |
Ah - mystery solved. It was requested earlier this year (#3463), and added in June (#3800) - just in time for the much-delayed v7.16.11 release. You'll have to upgrade - if we're talking Linux, Gianfranco Costamagna has a PPA with v7.16.11 in it already. |
Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software Foundation.