enhanced08
Weaksauce
- Joined
- Feb 21, 2006
- Messages
- 123
Wow, what luck. About 20min after I posted a tree fell across the lines and I lost power for the rest of the night. Found out Verizon DSL is down to $15/month so I'm gonna try to get that this week so I can answer questions quicker.
Alright, down to bussiness.....
A little word of advice about the prot.dat file from EMIII, its an archive of ALL work units since EMIII has been around. Stanford has (had) a bad habbit of reusing old work unit names which causes a problem. If I submit unit P1234 worth 20 points 1 year ago, say Stanford changes unit P1234 to be worth 365 points. Now there are 2 units named P1234 worth 2 different point values in the database. If the program happens to grab the unit worth 20 points then the PPD and PPD/Ghz will be wrong. What I need to do in order to solve this is to get a PHP script that will parse the Psummary page and only add new units and if the names are reused then delete the old and use the new one. Since I havn't been around I havn't kept my database updated with the new units so this is why some units wernt found on it.
PPD is Points Per Day which is calculated server-side using the average time per frame the user/program reports
/Ghz is Points Per Day Per Ghz which is also calculated server-side using the PPD/Ghz
The easiest thing I can see to do to upload the data to the server would be to use a form. I can make a simple, basic PHP form that will be hidden from public view and will only be used by the program. It would be like a "back door" i guess. I'm not sure if this would be easier or not, but I should be able to setup an FTP account for the program to upload a .txt containing the data and have a PHP script read the file, add to the database and delete the file.
With the program, the idea to save the data in a text file before uploading to the database might be a good idea. What if the user looses internet? or if they only connectevery few days? FAH has trhe option when running timeless tinkers to download 10 work units and run them all before connecting again. If your on a broadband connection then the text file wouldn't be needed as much but i think it would be harder to decide if you needed the text file or not based on the connection than it would be just to do it. Maybe even only do it if no connection is detected, I think that would be best. Then check every XX time to see if there is a connection, if so send the data and delete the file.
"What if I add a folding client after the initial setup? do I just run the setup again? or so there some way to add it in while it's running?" I would think that there should be a way to config the program after its been setup. Even some thing like the -config flag used for FAH would be fine, just a simple command line, text only setup menu or something.
Data to be collected....
These are all the variables that are currently in my database and a description of each
ID - auto increment built into the database server-side
manuf - CPU manufacturer, ex: AMD Intel, collected by program
cpuid - CPU model, ex: Athlon 2100+, collected by program
core - CPU core, ex: Prescott, collected by program
skt - CPU socket, ex: 478, collected by program
speed - CPU speed in Mhz, ex: 1995, collected by program
nm - CPU manufacturing process, ex: 90, collected by program
multi - CPU multiplier, ex: 16, collected by program
L1 - CPU L1 cache, ex: 8, collected by program
L2 - CPU L2 cache, ex: 16, collected by program
L3 - CPU L3 cache, ex: 1024, colleted by program
fsb - system bus, ex: 200mhz, collected by program
ram - amount of system RAM in mb, 1024MB, collected by program
ramspeed - speed of RAM in mhz, ex: 133mhz, collected by program
cas - CAS or RAM, ex: 2-2-2-5, collected by program
dual - is the RAM in dual channal mode? (yes/no), collected by program
wu - current work unit from system, ex: 1234, read from logfile
cpuusage - CPU Usage, ex: 100%, read from config file
hrs - average number of hours the client runs, ex: 24, not sure how to get this, maybe have the user enter it on setup??
os - system operating system, ex: Win XP, collected by program
client - what FAH client is being used, ex: text-only, I think each client is named different so maybe we could use this name to tell what one it is?
user - username, ex: enhanced08dotcom, read from config file
frtime - average time per frame, ex: 00:15:34, not sure how to get this, may need to ask TheWeatherMan about that
date - date work submitted, ex: 03/12/06, written in to the PHP script, server-side
PPD - points per day of current unit, ex: 234, calculated using 'updated' work unit table and frtime, server-side
PPDgig - points per day per ghz, ex: 110, calculated using PPD and speed, server-side
I think I had mentioned it before but if not, the program CPUz (link) can be used and bundled with this program. CPUz can be run in "ghost" mode to create a text file of system info. All system info that is in my database can be found via CPUz. This could be an option if you want to go that way.
As far as EUE's (Early_Unit_End) go, I would not even bother with them. If one is detected then dont upload that data, it will just throw off the database. Maybe have some kind of popup or something that tells the user that there is an EUE. A lot of users dont watch the logfiles closly and as far as I know there is no program that will tell you if there has been an EUE, this could be helpful.
Beta units may also cause a problem. Maybe have the program check if its working on a beta unit or not. If it is then dont upload the data.
Thats about all I can remember of the questions that didn't get answered. I printed out this thread and will be going over it again. If there are anymore unanswered questions that I missed, ask away.
Thanks for keeping this thread alive while I have been away and thanks for the help!
Happy Folding!
Alright, down to bussiness.....
A little word of advice about the prot.dat file from EMIII, its an archive of ALL work units since EMIII has been around. Stanford has (had) a bad habbit of reusing old work unit names which causes a problem. If I submit unit P1234 worth 20 points 1 year ago, say Stanford changes unit P1234 to be worth 365 points. Now there are 2 units named P1234 worth 2 different point values in the database. If the program happens to grab the unit worth 20 points then the PPD and PPD/Ghz will be wrong. What I need to do in order to solve this is to get a PHP script that will parse the Psummary page and only add new units and if the names are reused then delete the old and use the new one. Since I havn't been around I havn't kept my database updated with the new units so this is why some units wernt found on it.
PPD is Points Per Day which is calculated server-side using the average time per frame the user/program reports
/Ghz is Points Per Day Per Ghz which is also calculated server-side using the PPD/Ghz
The easiest thing I can see to do to upload the data to the server would be to use a form. I can make a simple, basic PHP form that will be hidden from public view and will only be used by the program. It would be like a "back door" i guess. I'm not sure if this would be easier or not, but I should be able to setup an FTP account for the program to upload a .txt containing the data and have a PHP script read the file, add to the database and delete the file.
With the program, the idea to save the data in a text file before uploading to the database might be a good idea. What if the user looses internet? or if they only connectevery few days? FAH has trhe option when running timeless tinkers to download 10 work units and run them all before connecting again. If your on a broadband connection then the text file wouldn't be needed as much but i think it would be harder to decide if you needed the text file or not based on the connection than it would be just to do it. Maybe even only do it if no connection is detected, I think that would be best. Then check every XX time to see if there is a connection, if so send the data and delete the file.
"What if I add a folding client after the initial setup? do I just run the setup again? or so there some way to add it in while it's running?" I would think that there should be a way to config the program after its been setup. Even some thing like the -config flag used for FAH would be fine, just a simple command line, text only setup menu or something.
Data to be collected....
These are all the variables that are currently in my database and a description of each
ID - auto increment built into the database server-side
manuf - CPU manufacturer, ex: AMD Intel, collected by program
cpuid - CPU model, ex: Athlon 2100+, collected by program
core - CPU core, ex: Prescott, collected by program
skt - CPU socket, ex: 478, collected by program
speed - CPU speed in Mhz, ex: 1995, collected by program
nm - CPU manufacturing process, ex: 90, collected by program
multi - CPU multiplier, ex: 16, collected by program
L1 - CPU L1 cache, ex: 8, collected by program
L2 - CPU L2 cache, ex: 16, collected by program
L3 - CPU L3 cache, ex: 1024, colleted by program
fsb - system bus, ex: 200mhz, collected by program
ram - amount of system RAM in mb, 1024MB, collected by program
ramspeed - speed of RAM in mhz, ex: 133mhz, collected by program
cas - CAS or RAM, ex: 2-2-2-5, collected by program
dual - is the RAM in dual channal mode? (yes/no), collected by program
wu - current work unit from system, ex: 1234, read from logfile
cpuusage - CPU Usage, ex: 100%, read from config file
hrs - average number of hours the client runs, ex: 24, not sure how to get this, maybe have the user enter it on setup??
os - system operating system, ex: Win XP, collected by program
client - what FAH client is being used, ex: text-only, I think each client is named different so maybe we could use this name to tell what one it is?
user - username, ex: enhanced08dotcom, read from config file
frtime - average time per frame, ex: 00:15:34, not sure how to get this, may need to ask TheWeatherMan about that
date - date work submitted, ex: 03/12/06, written in to the PHP script, server-side
PPD - points per day of current unit, ex: 234, calculated using 'updated' work unit table and frtime, server-side
PPDgig - points per day per ghz, ex: 110, calculated using PPD and speed, server-side
I think I had mentioned it before but if not, the program CPUz (link) can be used and bundled with this program. CPUz can be run in "ghost" mode to create a text file of system info. All system info that is in my database can be found via CPUz. This could be an option if you want to go that way.
As far as EUE's (Early_Unit_End) go, I would not even bother with them. If one is detected then dont upload that data, it will just throw off the database. Maybe have some kind of popup or something that tells the user that there is an EUE. A lot of users dont watch the logfiles closly and as far as I know there is no program that will tell you if there has been an EUE, this could be helpful.
Beta units may also cause a problem. Maybe have the program check if its working on a beta unit or not. If it is then dont upload the data.
Thats about all I can remember of the questions that didn't get answered. I printed out this thread and will be going over it again. If there are anymore unanswered questions that I missed, ask away.
Thanks for keeping this thread alive while I have been away and thanks for the help!
Happy Folding!



