Is it possible to change a computer's BOINC CPU ID?

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
I just reinstalled Windows on one of my computers due to a severe virus infestation, and when I installed BOINC (a new version) over the old version's folders, it gave the computer a new ID so none of the computer's previous stats will be linked. Is there a way to make the BOINC client use the old CPID for the computer? I have the ID number, I'm just not sure where to put it..

Normally, I wouldn't worry about it, but this is my main home machine that was attached to EVERYTHING to keep my accounts synchronized, so if I let it use the new ID I'll have to manually merge the systems on each individual project. Since it's running a newer BOINC version now, some projects might not even let the clients merge... :(
 

petrusbroder

Elite Member
Nov 28, 2004
13,348
1,155
126
I have been waiting for some one more knowledgable to answer this question, but it seems that nobody does ...

Well, I am not aware of any method - except to merge the comps in each project, and that does, as you say, not necessarily give the wanted result ... :(

I will soon have to switch my e-mail in all BOINC-accounts I have, and I am not looking forward to that chore.
 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
One of the main reasons I don't want to bother with a manual merge is that quite a few projects are gone so I won't be able to merge those together. :(

I'll wait for a few more days and see if I can find a way to do it. If not, I'll just go ahead and merge what I can.

Thanks for the input. :)

 

BlackMountainCow

Diamond Member
May 28, 2003
5,759
0
0
[possible stupid idea]

If you manually changed the entry for <host_cpid> in all your BOINC xml files in tje data directory, like client_state.xml, but also the ones in your slots directory, it might do the trick, if you still know your old CPU ID.

[/possible stupid idea]
 

petrusbroder

Elite Member
Nov 28, 2004
13,348
1,155
126
Hmm, BMC, that may even be a possibly very good idea! I hope Rattledagger will see this and tell us if it is possible.
BTW, Fardringle, why not PM Rattledagger, he is a very helpful guy!
 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
I only have the computer attached to one project at the moment (to not mess up my other stats yet). I'll give that suggestion a try and see if it works. If so, I'll do it with the others.

The strange thing is that I actually looked at the Client State file before my original post since I figured that it would be the place to put the ID number. However, the number on the CPID at that point wasn't anything remotely close to the new or old IDs. It does match the new ID now so changing it might work. :)


edit: I have to correct myself. The ID number doesn't actually match in the real XML files. It was only matching when I posted because I was looking at a "test" file I created with the correct ID.. :p
 

BlackMountainCow

Diamond Member
May 28, 2003
5,759
0
0
I see what you mean. The CPU ID in the xml files doesn't seem to be the one you can access via the "my computers" link in BOINC projects. But the <hostid> string in the xml files matches those numbers. Maybe you should rather change that one.
 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
That could work, but it would mean going to each individual project to look up the HOSTID for the computer for that project. If I'm going to do that, I might as well just let it pick a number and then merge the systems anyway. :)

It is starting to look like I either need to let it keep the new ID or manually merge them. It shouldn't matter, but it does, so I'll probably go ahead and merge them when I'm in the mood...
 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
I did send a PM to Rattledagger, so I guess I'll wait to hear from him before I do anything else. I'll let you know what he has to say.
 

Rattledagger

Elite Member
Feb 5, 2001
2,994
19
81
While it's possible to stop the BOINC-client and manually edit the <host_cpid> the problem atleast earlier was, then you attach to a new project, often a new host_cpid is generated... It's possible this doesn't happen so often now, since scheduling-server can look on host_cpid then deciding to re-use an old hostid in a project or not. Still, you risk getting a new host_cpid for each new project you attachs, and, if you're using an account manager, this will trigger connection to all projects attached to...

Some projects like World Community Grid doesn't allow merging/deleting of hosts, with retiring of computers and so on, the #computers is anyway often too high. And, Total credit doesn't depend on individual hosts credit, so personally I'm often just deleting the old hosts instead of merging them...


BTW, <host_cpid> is the same for all projects on a client-install, while <hostid> is different for each project. Since <hostid> doesn't show-up until after you've attached to a project, and this normally means you've already been assigned a hostid, it's little point to edit the hostid, since this can screw-up for already-assigned work, and you must anyway either delete or merge the extra hostid already generated...


 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
Thanks for the info, Rattledagger! I suspected that changing the host_CPID line would trigger an "identity crisis" for the computer like I wanted it to. However, the data in the XML files on the computer do not match the CPID number on Boincstats or on the actual project sites for the new or old computer ID so I figured that it was probably a hash of the number or something similar.

Regardless, I think I'll just let BAM tell the computer to attach itself to all projects using the new ID and then go through and merge the computer on the individual projects if/when I feel like it. :)
 

Fardringle

Diamond Member
Oct 23, 2000
9,200
765
126
Interesting.

I started going through my projects as the Boinc Manager finished attaching to them, and a few of the projects (LHC, Pirates, and Einstein so far) automatically merged the old computer ID with the new one. The rest are merging manually as I expected, but it's interesting to see that those three projects did the merge on their own...