Thursday, August 28, 2008

Let us revive this practice...

To submit questions for next week just click on the comments link below and submit your question.

Thanks in advance.


----- Rom

Saturday, February 24, 2007

What are you most chuffed about getting fixed/working/added?

 To be honest most of my contribution to this release has been in the manager role, most of the code changes were from David and 3rd party contributors.

I guess the thing I'm most jazzed about in the release of this new client that I pushed for would be the CPU feature detection stuff the community has been wanting for a long time. Along with that the client makes an attempt to detect which video card the machine is using.

It has been a 'chicken and the egg' problem, it wasn't something any of the projects were specifically looking for and therefore kept being dropped from the list. Of course the major problem with that is we didn't have any firm numbers on what percentage of the base of machines could handle the more advanced instruction sets.

Now that the information is part of the host record, I'm hoping the stat sites can build some fancy graphics and charts which might encourage one or more of the projects to create a client with specialized instruction sets.

We'll need to improve the server-side scheduler to handle scheduling specialized clients, but in the end I think it'll benefit everyone. Undoubtedly this is going to cause some angst amongst those who are only in it for the credits, as the credit granting gap between a stock client and an optimized client is going to shrink further.

How is boinc going to get around the problem on Windows VISTA where you are not suppose to (and often cannot) write to the 'program files' directory?

We'll be breaking apart the data from the executables using the SHGetFolderPath API. Although we'll need to put a possible override registry value for those who want to store the data on a different drive.

Right now I've been brainstorming on the various upgrade scenario's. ( XP to Vista and  32-bit to 64-bit )

It is a messy problem.


To submit questions for next week just click on the comments link below and submit your question.

Thanks in advance.

----- Rom

Saturday, February 10, 2007

We just released 5.8.x, so I’m sure there are a lot of questions out there.

Ask away...


----- Rom

Thursday, February 1, 2007

Have you seen this GPU programming kit:
What do you think are the difficulties of GPU programming with this and would some work still need to be done by the CPU like on F@H?

I suspect every project would have to be a hybrid and use both the CPU and GPU. At the end of the day the OS needs to know what is going on, otherwise it would just overwrite whatever work you assigned to the GPU with something else.

To be honest, I haven't studied the S@H or R@H source closely enough to know how easy or hard it would be to port using the various toolkits released by the video card manufacturers.

Hopefully we'll start to see more traction in this area with the release of 5.8, since it has some basic video card detection code in it.


----- Rom

Friday, January 12, 2007

I've tried to install BOINC as a service on a computer of my fiance's mother's but she has no password on her XP computer account. BOINC won't install (service) without a XP password. The obvious would be to password the account on the computer and then install but she doesn't want a password. Is there another way around this issue?

As another later in the thread has mentioned, I would also just create a different account and let it run in the background. is down:
DB Error: connect failed
[nativecode=Can't connect to local MySQL server through socket '/var/run/mysql/mysql.sock' (2)] ** Array

It appears to be up at the moment. although the address I have for it is is scheduled for some hardware upgrades, after that it is my understanding that we'll be bringing the bug database in house. I'm trying to get David onboard for using Trac which I think is pretty neat software. I've started using it for a pet project of mine.

Is there a fix for the next boinc version later 5.8?
ERROR: buffer too small in MFILE::vprintf() -->continuously logs in stderrdae.txt

This should be fixed now.

I need a better xml administration because all changes you get only by restarting boinc (url changing, skins etc.)

I'm not sure I understand this? Which controls are not updating on a skin change?

1) In the advanced view - Help - first entry starts . Is it possible to configure this URL in skin.xml? i can only configure the domain.

I'm afraid we are in lockdown for 5.8, that is something we can fix for 5.10 though. Or sooner I suppose.

2) If I click with the right mous button on the icon in the taskbar (windows) and select the first entry the page is loaded. Is this URL configurable?

Nope, when your attached to an account manager, that is their URL.

3) My skin on windows looks good, but on Mac the pictures seems not to fit. See in the middle above "Graphics Available".

I'll send an email to our Mac dev and checkout what is going on.

4) Would be also nice to be able to change the font color in skin.xml (for elapsed time, time remaining, application name,...).

We could introduce this in the 5.10 time frame.

5) There is something wrong with these files:
If the format is ".jpg" such as documented in Creating Skins the Manager shows only standard, with ".png" no problem.

Does stderrgui.txt have an entry stating it failed to load each of those images defined in your skin? It is only supposed to use the default images if wxWidgets throws an error while attempting to load the image. Which tool are you using to create a jpg file?

The current beta linux clients show about a 10% improvement in benchmarks. Is this as good as it gets, or are further improvements likely in the future?

That was from Tekwyzrd. I'm sure he and others will figure out more generic ways to speed up the client.


----- Rom

Wednesday, December 27, 2006

During the install of BOINC as a Windows service, you are required to enter an account which will be used to launch the BOINC service. Why do you need this? I can manually convert the service over to "Local System" without requiring credentials at all and it still seems to work OK.

"LocalSystem" is a special account, it has more permissions on the system then even the administrator account.

My goal in setting up the installer that way was to try and get people to be a little more paranoid about which account they were going to use as the service account.

For instance if you use your computer to track your finances you probably don't want to be running BOINC using the LocalSystem account. Even if you initially removed permissions from your financial records for the LocalSystem account any process running under that account can take ownership of those files and read them anyway.

We actually talked about the whole trust thing at the conference, how do we as a community know if a new project is trust worthy? How do we know their application is doing what it claims to be doing?

As an off shoot of that conversation, how do we minimize the damages a potential project can cause on a computer system? The most obvious answer is don't run as LocalSystem/Administrator/root.

The safest way to run BOINC as a service is to create a limited user account just for the BOINC service.


----- Rom

Wednesday, December 20, 2006
Thursday, November 9, 2006

JM7 posted a nugget of information I missed about how DCF is used in this S@H post.

Actually, ROM missed a little. A score less than 1 means that your computer finishes work faster than expected for its benchmarks. A score that is higher indicates that it finishes slower than expected for its benchmarks. It is calculated as a safety for the CPU scheduler (finish on time) and work fetch (not too much), therefore under estimates are corrected very quickly (single step) and over estimates are corrected much more cautiously.

Thanks John.

----- Rom

Monday, October 30, 2006

Is the boinc core client and manager going to support IPv6 in the near future?

All of the communication between the core client and project servers is done through a library called libCurl. It has an awesome feature set and it wouldn't surprise me if they already supported it. A quick pass over their comparison chart says they do. At this point I'm not sure there is anything more we have to do.

Does anybody have some IPv6 gear to test things out on?

Will a future BOINC have an interface tab or an options extension or the like to set any of the 'override' parameters?

I'm not sure what you mean by override parameters. If you are referring to the global preferences then yes, the manager will include the ability to override the global preferences. That feature will first make it's debut with the BSG with a small subset of the overall features, probably within a release after that I'll add the rest of the global preferences to an enhanced preferences dialog which will be available through the advanced interface.

Currently the simple preferences dialog looks like this:

To be fair though, I just got done butchering everything on Friday to take care of a usability issue and WCG hasn't had a chance to give me an updated bitmap and that is why you can see the magenta border. The general layout is there though, it should look pretty intuitive on how it should work.

Everybody should feel free to provide any first impression feedback, we are all interested in what you all have to say.

any update on new BOINC client interface? can anyone sign up for beta testing?

Well for the last several weeks I've been saying we will hit beta this week. So without further ado, we'll hit beta this week. Kevin and I will probably chat tomorrow and decide what to do. My new target date for a beta release is Wednesday.

Like with all of our beta releases they are available for those who really want to try things out, just be advised that beta releases have bugs and things may not work. In the worst case scenarios' their could even be data corruption.

When BOINC is updated, it ignores already installed folder; user have to manually choose correct folder - every new BOINC version, every machine running over and over. Any good reason for that?

Nope, none. It is on my plate to fix. I was hoping to have more time in this release to do a couple of things like storing setup information/version upgrade notification, I still might after we get the beta process underway, but right now I'm head down on the Simple GUI until things have stabilized.

So when can those of US who run Windows XP x64 see a Native 64bit Boinc and app?

I suppose when I can get my hands on a 64-bit machine.

I generally buy my own hardware, I have expensive tastes and really don't like low-budget computer hardware or base configuration models. Down-side to that is I don't upgrade often, my current workstation I've had for several years and probably has another couple of years left on it.  Although I have been looking at a few of the dual-processor/dual-core/hyperthread-enabled workstations from Dell. Who knows, I might pick one up next year.

If there is enough demand for a 64-bit build, and for whatever reason Crunch3r and crew are having problems releasing builds, I'm sure David would hook me up with a 64-bit machine.

considering it's clock-changing weekend: does boinc take into account the fact that the clocks change when recording/calculating processing time?

For the most part BOINC uses Epoch time internally, I suspect BOINC will be superseded by something else before we run into time keeping issues.

why doesn't boinc use actual CPU time directly?

Any place BOINC can use CPU time to account for the amount of CPU time an application has used, it does.  Some operating systems don't provide a very good way to get at hat information, and in those cases wall clock time is used.

about crashes etc., when something fails/crashes in windows, the user is asked to send a "report" to a Microsoft server somewhere.
Are these reports actually collected from MS for debugging purposes?

Short answer, no, the crashes are uploaded to a Microsoft server, but Microsoft only investigates their own application crashes. Microsoft does offer access to the crash reports to the 'owners' of the software so they can download the crash dump files and try to figure out what is going on. You actually shouldn't be seeing the 'Error Reporting' tool which I'll refer to as Doctor Watson.

BOINC is supposed to be completely autonomous, meaning it just runs in the background and if an application crashes it silently handles it and any diagnostic data that we can get at is analyzed in the background and then uploaded to the project server in a condensed form. I participated in debugging both S@H and R@H applications using this technology and have started to collect and publish little nuggets of information about common crashes. You can find it here:

I'll continue to add to the list as I find them, or am called in to help isolate bugs in another application. Most of the examples are R@H crash dumps, I should have started the document during the S@H beta cycle, but I didn't think about it then.

1) the most annoying one is the upload+report & download of new work process with a short cache.
I have a tiny cache (something like 0.0001 days) because i have a premanent Inet connection. When a task is very near finishing, due to my small cache a new workunit is downloaded, and then the near-finishing WU is uploaded and reported. The problem here is that 2 requests are being made, one for new work, then one soon after to report finished work, it would be more sensible to wait for the unit to finish, upload, then report and get new work in one operation, rather than hammer the servers as "return results immediately" does
Will the new CPU scheduler avoid this problem?

John really is the best person to ask about CPU scheduling issues, I'm just a consumer of his and David's work, same as you.

That said, I do not believe the new CPU scheduler will avoid the problem, one of the goals is to keep the CPU busy, if you finish your result and have to wait for the client to download another one, the CPU isn't busy.

If I was in your shoes, after the new scheduler is released, I would set my cache size to 1 and let the client re-normalize on that. The days of having a very small cache to keep from missing a deadline should be coming to a close.

4) not a bug, but a question, i've got some changes to some of the web code, and i want to checkin my changes to the CVS/SVN system, but obviously i don't have the permissions to do so. how do i go about getting my changes merged?

Send them to David and/or Rytis and let them look over the changes.

Carl was unable to trap all the exceptions within Visual Studio (unlike the Linux environment which was more helpful) which is why I suggested having a call-back process so that Boinc could get the science app to help with 'difficult' exceptions. So you'd still have a black box, just not a cubic one :-)

Yeah, I've been working with AutoDock@Home a little bit trying to help them get setup in there Fortran environment. It appears that the Intel Fortran compiler uses a different form of exceptions than Windows knows about. I found some interoperability documentation between C/C++ and Fortran and suggested some changes. When they let me know how things went we might be able to provide some extra information for those using Fortran in the BOINC environment.



To submit questions for next week just click on the comments link below and submit your question.

Thanks in advance.

----- Rom