Posts by Metod, S56RKO

InfoMessage
21) Message boards : BOINC client : Scheduler weakness
Message 13205
Posted 22 Oct 2007 by Metod, S56RKO
I have to assume it is a BOINC problem because the same pattern is happening on both computers.


This is BOINC by design as I see it. And IMHO it's flawed.

See this post.


I volunteer my resources to BOINC projects and unlike some others I accept BOINC as is. This doesn't stop me from being annoyed about scheduler's behaviour though. :)
22) Message boards : BOINC client : Scheduler weakness
Message 13199
Posted 22 Oct 2007 by Metod, S56RKO
I have to assume it is a BOINC problem because the same pattern is happening on both computers.


This is BOINC by design as I see it. And IMHO it's flawed.

If I understand it right then BOINC client accumulates LTD when certain project is out of work/inaccessible/down for some time (among other reasons). IMHO this is wrong. I agree that BOINC client should accumulate (and spend) LTD if BOINC client runs into some kind of problems (eg. no internet connectivity, EDF, ...).

However, I think that LTD shouldn't accumulate if there are problems on projects' side. If a project doesn't provide any work, then IMHO this project is actually voluntarily giving up it's resource share. Other project troubles (such as server crashes etc.) are not voluntary as such, however time to bring project up again is in project's staff hands (well, more or less). Hence the same reasoning: if project can't provide users with work, LTD should not build up.

Distinction between client-side and project-side troubles is not trivial at all times. There is mechanism to check whether BOINC client is unable to contact project's server due to local or remote connection problems (everybody noticed that sometimes BOINC client connects to google) so this kind of distinction could be done.

My humble opinion is that LTD should build up only if client is in EDF or if BOINC client can not fetch new work from any of attached projects.
23) Message boards : BOINC client : 5.10.20 - uploading but not reporting
Message 13194
Posted 22 Oct 2007 by Metod, S56RKO
So I don't see any harm in having a little something for everybody who participates in BOINC. The dilemma is determining where to draw the line and who gets to decide.


Or, better yet, who is to draw the line. And the answer is clear: project management. As BOINC itself has many project managers, it's up to their consent about what to do. I don't know how democratic the debate between them is, but at the end its all about: Berkeley created BOINC, they put it on open for use by anybody and it's up to anybody do decide about fitness for their special needs. If they find it fit, they are welcome to use it and to make suggestions which, in turn, might get accepted or not by Berkeley.

The picture is almost identical when it comes to users: they can join the flock if they see it fit. If they want to have it different, they can make suggestions and those can be accepted or not. If an user finds the whole system not acceptable anymore and gets frustrated by the fact that his/her suggestions were not accepted, then he/she is more than welcome to leave the flock.

In case when Berkeley rejects too many good suggestions, which in turn, frustrate too many users, then all of projects (including Berkeley's own) will loose and that may (or may not) force Berkeley to change decisions. Until Project Managers feel comfortable about the amount of work being done they may discard more user suggestions than some users may like.

Volunteerism is all about free choice: if somebody is not happy about how some particular project is handled, he/she is more than welcome to choose another one.
24) Message boards : BOINC client : 5.10.20 - uploading but not reporting
Message 12758
Posted 27 Sep 2007 by Metod, S56RKO
My concept of helping is to let them tell me what they want me to do and then doing it. I don't try to tell them what or how.


Sometimes by-passer's idea of helping is not acceptable to the one asking for help. It is quite understandable to me that in those cases help offered gets rejected. Most of times it's nothing personal.
25) Message boards : BOINC Manager : linux boincmgr: No such file
Message 12582
Posted 18 Sep 2007 by Metod, S56RKO
I just installed Boinc x64, 5.10.8 on a Linux machine (Arch Linux). The client runs fine, and I can look at the tasks remotely, but when I try to look at things locally, I get:

boincmgr: No such file or directory

Logged in as root, boincmgr does exist, and permissions are set to 'Is executable'. ldd shows:

ldd: warning: you do not have execution permission for boincmgr, not a dynamic executable.


The last stance is really weird. I can imagine a couple of reasons for it:

  • this particular executable somehow got invalid. As it works fine on your other linux boxen, you might try to copy it over
  • dynamic loader on your Arch Linux has some problems either with executable or some library that is required by boincmgr. Not much that you can do about it unless there are updates/upgrades available for your linux distribution
  • file somehow lost execute permissions. You can set them by executing command chmod 755 boincmgr



HTH.

26) Message boards : BOINC client : trouble with boinc client and firewall
Message 12494
Posted 13 Sep 2007 by Metod, S56RKO
My firewall allows my machine to ESTABLISH a connection to any IP address on port 80. And any established connection can be replied to. So once I am connected as I imagine FireFox does, it goes along OK.

But there is something different about the way the BOINC client does it that gets all these rejects.


The fact is that most of BOINC projects run on shoe-string. Which means that servers are generally under-powered for amount of requests they get and thusly response is a bit less than immediate many times. When things go haywire, one may see all sort of funny (or not so funny). I wouldn't be much surprised if I saw long and sporadic delays when connecting to some project server.

If your FW rules impose too strict timing, then it may occasionally seem that you get some sort of inbound connection from project server while in reality it's only a very late response.

I'm doing some statistics on real use of internet by many broadband and dial-up users and I've found out that sometimes a live TCP connection can have pauses as long as 10 minutes before they resume. Go figure ...
27) Message boards : BOINC client : mgr not able to connect to client
Message 12492
Posted 13 Sep 2007 by Metod, S56RKO
I've seen similar misbehaviour as Zombie does. I'm a bit nicer to BOINC though, only running 2-5 projects per box. And with different GUI (boincview). Symptoms are the same: GUI momentarily shows everything and a moment later nothing.

What I did notice in such episode is that there are maaaany connections done from host that has GUI running to local BOINC client. Most of connections are in FIN_WAIT state. Probably has something to do with refresh interval being set to 10 seconds in GUI.

Restarting BOINC doesn't help, reboot does.

Windows XP or Windows 2003 server mostly.
28) Message boards : BOINC Manager : BoincMgr runs automatically - 6.1.0 on Windows
Message 12406
Posted 11 Sep 2007 by Metod, S56RKO
I've noticed that if I install BOINC 6.1.0 as service, then installation programme installs shortcut to BOINC manager into Startup pseudo-folder. This way BOINC manager automatically starts after user (that originally installed BOINC) logs in.

Now, this might be nice and somebody thought about it enough to install that shortcut only for user that installed BOINC, but I really miss option (in the same manner as for screen saver etc.) not to do it.

I, personally, really hate it. First of all, I use third party GUI, and secondly I run BOINC on a number of hosts and I really want to have GUI only running on one particular host even though I'm logged in to several hosts at the same time.

[edit]
I need to add: checkbox that says (I can't quote, memory leak ;) ) something about starting after log-in is not checked. Does/should it really matter if one selects a service installation?
[/edit]
29) Message boards : BOINC client : any easy way to get boinc to work on centos 4 x64 ?
Message 12172
Posted 21 Aug 2007 by Metod, S56RKO
If you are building from source then you need the proper version of curl. And that keeps being changed as the new versions of curl provide newer features.


My feeling was that required version of curl changes a lot because new versions of curl are supposed to fix problems with NTLM-enabled proxy servers. In fact, I'm using older curl version on my Debian Sarge system without any problem. The only thing I have to do is to patch configure.ac to test against installed curl version that matches what I have on my system.

Obviously I don't care about NTLM-enabled proxy servers 'cause I don't use any.

30) Message boards : BOINC client : any easy way to get boinc to work on centos 4 x64 ?
Message 12160
Posted 20 Aug 2007 by Metod, S56RKO
I tried building the 5.10.18 client (the current alpha version) on Linux (on Fedora Core 4), but it failed to build for me. I can build the current SVN HEAD, but not 5.10.18.

Now that might be because I don't understand branches in SVN as well as I did in CVS. I know CVS use of tags for both snapshots and branches was confusing, but I got used to it. Can someone who got 5.10.18 to build tell me how they checked it out?


As I wrote in this thread, checkout is quite straight-forward. It seems to me that there's something in the code that freaks out optimizers in both GCC and ICC though ...

[edit] Actually I didn't write that. Here's how I fetch sources:

svn co http://boinc.berkeley.edu/svn/branches/boinc_core_release_5_10/

[/edit]
31) Message boards : BOINC client : stable versions for linux?
Message 12140
Posted 18 Aug 2007 by Metod, S56RKO
Hmmm ... I just retried to compile my own BOINC CC and now I succeeded. The successful compilation was done using GCC 3.4.4 on Debian Sarge i686 and using GCC 4.1.2 on Debian Etch x86_64.

Previously I was using ICC and it still fails while trying to do some IPO over sandbox functions. It also failed when compiling using GCC on Debian Lenny x86_64 but I tried some fairly aggressive optimisation flags, so this might be the same problem.

Thanks for encouragement to retry!


[edit]
It still bothers me that I can't compile it using ICC 8.1 as it was perfectly possible at least until version 5.10.7.
[/edit]
32) Message boards : BOINC client : stable versions for linux?
Message 12139
Posted 18 Aug 2007 by Metod, S56RKO
Hmmm ... I just retried to compile my own BOINC CC and now I succeeded. The successful compilation was done using GCC 3.4.4 on Debian Sarge i686 and using GCC 4.1.2 on Debian Etch x86_64.

Previously I was using ICC and it still fails while trying to do some IPO over sandbox functions. It also failed when compiling using GCC on Debian Lenny x86_64 but I tried some fairly aggressive optimisation flags, so this might be the same problem.

Thanks for encouragement to retry!
33) Message boards : BOINC client : stable versions for linux?
Message 12114
Posted 17 Aug 2007 by Metod, S56RKO
I've got 11 boxes of various different flavours running the latest self-compiled SVN code without any problems.


I hope you don't mind me asking how did you get it compiled? I tried to compile latest 5.10 branch and it stuck being unable to link stuff regarding sandbox. I even didn't realize that sandbox applied to Linux also, I thought it was for Mac OS X only ...
34) Message boards : BOINC client : Suggestion: Retry Connection countdown
Message 11867
Posted 29 Jul 2007 by Metod, S56RKO
I wasn't really thinking of dial-up users in particular - more about machines that aren't on that much which will finish tasks but then not upload them before being switched off.


Well, once upon a time there was option that made BOINC CC report any uploaded results to project schedulers immediately after successful upload. This option basically made BOINC developers and several project administrators quite unhappy.

Basically it boils down to proper selection of projects to participate. If an user runs his/her machine only from time to time, then she has to choose projects that are less strict on deadlines. Or else pay attention and do some manual work on BOINC CC. If that is not acceptable for an user, she can well decide not to take part in such project and/or BOINC as a whole. BOINC developers and project developers have to think about their project as a whole and sometimes this is in direct confrontation with individual users' expectation.

Both have to live with it.


I'd have thought retrying all connections from a given client (in serial as they do) would be better than them making the connection and sending one task, then disconnecting, and then repeating the same a later on... I understand the point about too many connections swamping the server but surely the server will just tell the client to wait if it's busy, in which case you've not lost out over the current functionality.


To avoid re-inventing the wheel they used an already existing protocol for downloading work unit files and uploading result files. It is called HTTP. In it's original version it doesn't support any kind of persistent connections which means that new connection (with all the IP overhead) is needed for every file to transfer. There are number of HTTP proxy servers out there that still support only this kind of HTTP transport protocol. Newer version of HTTP defines persistent connection, but to be on safe side, one can not assume their availability.
Understanding this one can see that there's no difference between making next connection immediately after the previous has been finished and making next connection after random period of time.

Problem is that if upload server gets hit by too many requests, most of the times client side will not get enough feedback to notice that there are problems. Whenever S@H was in such problems, most of the time clients were not able to get through initial TCP handshake which takes place on OS level. If the connection went through this stage, then upload was mostly successful.
Accepting inbound file and sending error message don't differ with regard to TCP overhead so this would be by no means any solution in case of congestion.
This approach works with scheduler requests though: when client rings home to get more work and there is none, then scheduler can tell client to wait certain amount of time before another attempt. This works because connection was already made so the cost of sending a reply with back-off request is low compared to cost of new incoming connection too soon.
35) Message boards : BOINC client : Suggestion: Retry Connection countdown
Message 11792
Posted 26 Jul 2007 by Metod, S56RKO
i'm not sure if this has been discussed/considered before, but I've noticed that if a machine doesn't/can't connect for a while and builds up a queue of completed jobs then when it comes to upload them they don't all upload at once. The countdowns continue and the retry isn't initiated until the countdown is complete on a task by task basis. It would seem beneficial to me to retry all transfers once a connection has been established, thereby increasing the likelihood of the jobs being uploaded if the connection is intermittent, and also reducing the number of connections to the project servers.

I don't think it would have to be on a project by project basis either because if the connection problems are due to an intermittent internet connection then it's beneficial to retry all projects communications.


Your thinking has some merit. However, the behaviour you're suggesting would be beneficial to dial-up users but wouldn't be so beneficial to projects.

Here's an example: S@H has weekly scheduled downtimes during which uploads are often not possible. All the clients start back-off timers which are different for any results pending upload. When the project gets on-line again, clients randomly notice availability and gradually upload results. It can take several hours to get all results uploaded this way. Graduality ensures that load on servers remains under some control.

If BOINC implemented behaviour as you proposed, then any given client would try to upload all the results at the same time while time offset between project becoming on-line and start of client's upload is different (randomly spread) between all the clients. However, if a client has many results pending for upload, it'll try to upload all results after minimum back-off time. The more results pending, the lower minimum back-off time (statistically). Which means that project upload server will face huge load immediately after becoming on-line and this load will get lower exponentially. As S@H experience proves, this will mean that many upload connections (as many as 90%?) will be unsuccessful, clients will retry uploads again and again.

Both scenarios practically ensure that wast majority of results will get uploaded in maximum back-off time (I believe this is somewhere near to 4 hours).

The whole issue is really a non-issue for users with permanent internet connection and only matters for those with dial-up. I'm pretty sure those regularly force upload manually.

My experience with dial-up machines also goes like this: it's good thing to let know BOINC CC that internet connection is not available by setting 'Network connection: never'. While network connection is set to none, client won't try any connection at all (nicely preventing log from becoming full of error messages). It will try any pending connection immediately after 'network connection' becomes set to always (or automatic while criteria for enabled connection are met). That includes immediate start of uploading all pending results as well as connection to any project schedulers if needed.
36) Message boards : BOINC client : Boinc and Disc De-fragging question.
Message 11459
Posted 3 Jul 2007 by Metod, S56RKO
i rarely shut anything down when defragging as i've got it running as scheduled tasks that run at night and never have any problems with BOINC. Defrag skips locked files anyway... of course that means that locked files aren't defragged though ;)


What you write is just fine.

What is your experience with the following scenario: an application produces a large file in several steps (or, alternatively, has a large file which gets appended and changed from time to time). When that file is not being updated, it is not locked. When a defragging programme comes to such a file when not locked, it starts to defragg it. If that's done properly, defragging programmes houd lock that file. If that file is a large one, then it gets locked for extended period of time. What happens when original application tries to update the file in question? It finds the file locked and may well just decide to crash.
37) Message boards : BOINC client : STD/LTD increase while computation is suspended
Message 11263
Posted 26 Jun 2007 by Metod, S56RKO
This is the way it should work ... If you suspend BOINC cc and then you don't suspend machine, do LTD and STD still change?

Yes, it does change with no relation to whether the PC was suspended in the time the computation was suspended or not.


This is weird. I just tried: BOINC 5.10.7 on Linux x86_64, suspended using boinc_cmd (works via GUI RPC, so this should make no difference as opposed to suspending it through BOINC manager or BoincView). I'm using BoincView 1.4.2 and LTD/STD values for 3 active projects did not change a bit.

I'm at my wits end, so somebody else will have to jump in :(
38) Message boards : BOINC client : STD/LTD increase while computation is suspended
Message 11259
Posted 26 Jun 2007 by Metod, S56RKO
If I set computation suspended in Boinc manager, it isn't the same as setting Boinc core client suspended? I don't know how to suspend the core client exactly, so tell me please how to... :)


This is the way it should work ... If you suspend BOINC cc and then you don't suspend machine, do LTD and STD still change?
39) Message boards : BOINC client : STD/LTD increase while computation is suspended
Message 11254
Posted 26 Jun 2007 by Metod, S56RKO
For example: I've had my PC computation suspended overnight. The project that was running last, had a debt about 8000 seconds in the evening, and when I restarted computation in the morning, it had a debt about -19000 seconds. Seems like it was computing whole night, doesn't it? But it wasn't, especially because the whole PC was suspended in power saving mode. Is it a real bug, or is it an expected behaviour?


Huh, just re-read your post.

Actually what you see is more or less expected. If you suspend your computer (either to stand-by or hibernate state), BOINC core client doesn't really get stopped. Or, rather, it gets stopped but it doesn't get any notification from project applications about them also getting stopped. From BOINC cc point of view, application was running all the time. The only thing it might happen is that when BOINC cc gets restarted, it'll notice that it didn't get heart-beat from app for really long time and it would normally decide just to restart it assuming it was hung or something.

To get your stats right, first set BOINC core client to suspend computation and then suspend your box into power save mode. When you start up your box, un-suspend BOINC ...
40) Message boards : BOINC client : STD/LTD increase while computation is suspended
Message 11253
Posted 26 Jun 2007 by Metod, S56RKO
I'm running several BOINC projects on my PC and yesterday I found something like - lets say "bug".
Because of I've installed BOINC on another PC in my private network, I've downloaded and installed BOINC manager named BoincView to help me to manage both PC's at once. I found out that in this manager, you can see some more detailed informations about computations, especially STD and LTD of each project.

And now I get to the core of the problem. I found out, that if I suspend computation, the STD (and LTD as well) remains decreasing for the project that was running last before suspending and of course it remains increasing for all the other projects.


Did you see this with both BOINC manager and BoincView? What happens when all the scientific applications get run for a while by BOINC core client?

I've been using BoincView for ages (now 1.4.2) and have never seen this problem.
BoincView does not update LTD nor STD on the fly, they are only updated now and then. My feeling is that these numbers really are updated only when BOINC CC updates them, and BOINC CC updates them when just prior to evaluation of which project to run next.

BOINC manager, on the other hand, does some extrapolation of BOINC core client status to make it more transparent to the user.

If you see it both with BoincView and BOINC manager, then this is a BOINC core client bug. If you only see it with BOINC manager, then this is a BOINC manager bug. In any case it'd be useful if you posted versions of software you're using.
Previous 20 · Next 20

Copyright © 2025 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.