Sat_ManMonotonous Isn't ItPremium
Gray Court, SC
SETI Enhanced Application FAQ
Thanks to Jim-R. on the SETI forum for this FAQ. He has given permission for everyone to use/post.
What version of BOINC should I use?
We recommend using at least version 5.2.6 and up with SETI Enhanced. The newest version available on the BOINC download page as of 2/19/06 is 5.2.13. Please be aware that the new enhanced application calculates credits differently than the old application. You will still get credits using BOINC versions less than 5.2.6, but the credits claimed for processing a work unit may be considerably different than what it should be. Also there have been a few other problems associated with BOINC versions less than 5.2.6. For best results and most accurate credit reporting with the SETI Enhanced application, we strongly urge you to upgrade to the newest version of BOINC available.
Does the new enhanced application figure credits the same as the old application?
How does the new enhanced application figure credits?
The new enhanced application does not use an arbitrary benchmark to figure credits the way the old application does. The old application depended on a "benchmark" program to get an estimate of the general speed of your computer and computed credits based on the benchmark. The new enhanced application determines the actual number of floating point operations (fpops) that are used to crunch the work unit. This number is used to figure your credit. You will see little if any variation in the credits reported for work units processed on widely varying computers and operating systems. So unless your computer was constantly over or under reporting credits using the old application, you should not notice much difference in the amount of credit issued to you per amount of time.
What are FPOPS?
FPOPS stands for Floating Point OPerationS. Mathematical calculations using decimal numbers instead of integers. In the enhanced app, the number of fpops done in a work unit are counted and used as the basis for issuing credits.
How long will it take to crunch these new work units?
Why does it take so long for the enhanced application to crunch a work unit?
The work unit itself is no larger than the standard work unit. The difference comes from the way the new application processes the information contained in it. The new application does a much more extensive search of the data and can find a signal that is buried deeper in the "noise" than the standard application. Unfortunately this new "sensitivity" comes at a price, much longer crunch times.
The standard workunit is most closely defined as being 0.4x Angle Range. Your times will vary depending on the actual AR of your work unit and the speed of your computer. (See "What is Angle Range")
Will I get the same amount of credit for crunching a work unit with the enhanced application?
Yes and No. Yes, you will get approximately the same number of credits for the same amount of time spent crunching a work unit, however No, you will not get the same number of credits per work unit. You will actually get more credit for an average work unit. This is due to the much longer crunch times for the new application. Credits/hour or credits/day will remain close to what was given in the standard application. Due to the way the benchmark routine computed it's results, many computers were either over or under reporting credits. With the new application you will see the claimed credits to be nearly uniform across all computers. See "How does the new enhanced application figure credits?"
I have completed a work unit but why have I not received any credit for it?
Most of this is no different than the way the standard application worked, so I will briefly rehash the whole credit system here. The important things to look at which result from using the new application are the time frames for the return of work unit results and the delay in issuing credits that they can cause.
There are several causes for not receiving credit and also several things that can delay issuing credits.
One posibility is that your computer has returned invalid results. To find out, go to your "profile" page and scroll down until you see "results". When you click here you will see any work units that you have downloaded plus any results you have returned and their status. If you look under "Outcome" and see anything except "unknown" or "success" there is an error with your results. "Unknown" will only appear when a result has not been returned yet so you should not see this if you are sure you have already returned a result for this work unit. Any other outcome means there was a problem with the work unit returned by you and you will not get credit for it.
If the "outcome" is "success" then click on the work unit ID number on the left. This will take you to a page where you can check the status of the other copies of the work unit. Each work unit is sent to four different computers to crunch. When the results of three computers are received they are compared to see if the results agree. This alone accounts for one reason for a delay. If you have a fast computer and returned your result first, you must wait until two other computers report in. If these are slow computers it may take up to a week or even longer for them to crunch the work unit and return their results. Another delay can occur if one or more of the computers crunches the work unit and returns a result but when the results are compared something is wrong with one or more results This means that additional work units will have to be sent out, crunched and returned, meaning another delay of up to a week or more. And in the rare occasion that one of those results is invalid this process will have to repeat meaning another delay. There also is a possibility of a "runaway" computer. These are computers that either download work units and never crunch them, or they download more work units than even the fastest computer could crunch before the deadline is up. In this case you would have to wait until the deadline for the work unit to pass before another work unit would be sent out.
Example "worst case" timeline:
The deadline is 6 weeks for this wu.
"Your" computer is very fast so it returns a good result within 2 days.
One of original wu's goes to a computer that downloads it but for some reason never crunches it.
One of the computers aborts a work unit.
One computer finally returns good results but since there is a third result needed the system waits for the one wu that was sent to the "dead" computer and when the deadline is finally up another wu is sent to a very slow computer.
After 2 weeks the slow computer returns it's result. A quorum is reached so the results are sent to validation. Two of the results fails validation. Two more wu's are sent to be crunched. One is sent to another slow computer. At about 80% complete the computer suffers a "hiccup" and restarts calculation from the beginning. (The other result was sent to a faster computer and has long ago been received.)
Finally the slow computer sends in it's result. At last!, a quorum and validated results.
6wks - timeout from non-responding computer.
2wks - response from slow comp.
1 3/4 wks - slow comp crunching before hiccup
2wks - slow comp finally finishes crunch
6+2+1.75+2=11.75 weeks, or nearly three months after first result was returned.
I know this scenario is not likely to happen, but it could. Actually if you started to check work units, you would find that a fairly large number of work units sent out have had *something* happen to them which could delay the issuance of credit. And with the much longer crunch times of the enhanced application, the delays can be much longer also.
In any of the above cases, just be patient. When all the results are in, they will be checked (validated). If the results check out you will get credit. I know all this seems complicated and unnecesary, but we want to make sure the results are returned and they are correct. We can't reward someone for doing bad work. This is the reason for triple checks on the returned data. And we sure don't want something like "Hello Earth, this is Vega calling" to be missed because of a computer returning bad data or not returning results at all!
Why did I not get all the credit that the work unit claims?
Why did I get more credit than the work unit claims?
Claimed credit, although ideally, is supposed to be close to the same or exactly the same, however it isn't always the same. In most cases it is because of benign reasons (such as older clients over-claiming credits);
The way it works at the present time is that the lowest and highest claimed credits are automatically thrown out. That insures that one extremely high or low claim would not sway the awarded credit out of line. Then if only three good results are returned, the claimed credit of the middle one is used for all three. If four good results are returned, the two middle claims are averaged and the result is awarded for all. With the new application you will notice that the claimed credit will be much closer to, if not exactly the credit you are granted. I have seen many results returned where the claimed credits are within a couple hundredths of a credit of each other, if not exact. This is where the new way of basing credits on FPOPS instead of arbitrary benchmarks really shines.
Why do some of my work units finish quicker than others?
The time it takes to compute a result from a work unit depends on the Angle Range (AR) of the work unit.
Most of the angle ranges we will be processing will be around 0.4xx. These AR's also happen to take the most amount of time to process. If you get a WU that has a significantly higher or lower AR, your crunch times will be less.
Crunch-times and Deadlines in Seti_Enhanced is heavily influenced by angle-range, (see What is Angle Range?)
AR - cpu-time (h) - Deadline (days)
0.112742888 - 2.87 - 19.10 (same for smaller angle-range)
0.12 - 3.04 - 20.25
0.15 - 3.39 - 22.57
0.20 - 3.97 - 26.43
0.225 - 4.26 - 28.36
0.226 - 8.26 - 54.96
0.25 - 7.28 - 48.45
0.30 - 5.80 - 38.58
0.35 - 4.78 - 31.82
0.40 - 4.05 - 26.92
0.41 - 3.92 - 26.11
0.42 - 3.81 - 25.33
0.43 - 3.70 - 24.60
0.44 - 3.59 - 23.90
0.45 - 3.49 - 23.24
0.46 - 3.40 - 22.61
0.47 - 3.31 - 22.01
0.48 - 3.22 - 21.44
0.49 - 3.14 - 20.89
0.50 - 3.06 - 20.37
0.55 - 2.72 - 18.08
0.60 - 2.44 - 16.22
0.65 - 2.21 - 14.67
0.70 - 2.01 - 13.38
0.75 - 1.84 - 12.27
0.80 - 1.70 - 11.32
0.85 - 1.58 - 10.49
0.90 - 1.47 - 9.77
0.95 - 1.37 - 9.13
1.00 - 1.29 - 8.56
1.05 - 1.21 - 8.06
1.10 - 1.14 - 7.60
1.127 - 1.10 - 7.37
1.128 - 0.65 - 4.34 (same for larger angle-range)
Please note, this info is based on the current estimates the Splitter is
using, so your real cpu-times will very likely be different. Also, even if the estimates are correct for one Angle Range, it doesn't mean that it isn't 2x away for another angle-range. Use this information just as a demonstration of how the angle range affects the crunch times and deadlines.
What is an "AR" or
What is an Angle Range?
The "AR" is the "Angle Range" of the work unit. This basically describes the angle at which the Arecibo Radio Telescope was "tracked across" the sky to record the information that is contained in that particular work unit.
If the AR or Angle Range of the unit were 0 this would mean that the telescope (The SETI receiver portion of the telescope) was actually tracking that particular point in the sky. Larger AR's are due to the SETI receiver being swept across the sky as the work unit is recorded. AR's of approximately 0.4 result from the telescope not moving at all but just turning with the earth. Larger AR's are a result of the telescope being swept from one point of the sky to another during a recording.
How do I find what the Angle Range of a work unit is?
You can find the AR of only work units that you have on your computer. You can find the AR of a work unit after it has been completed only while the result resides on the server. Once the result is purged from the system this info is no longer available.
First to find the AR, You open a workunit in an Editor or (preferrably) a text file viewer. It is a *nix file so if you are running Windows make sure you do not save it. About 20 lines down the header you will find a XML Tag that says "True Angle Range". The number folloing this tag is the Angle Range of the work unit you are looking at. So unless you look before it is done, it almost impossbile for a user to click and see what the AR "Was."
Again, DO NOT SAVE the file as it will corrupt it and cause it to fail. Use a simple file viewer if at all possible.
Here is a sample header from a work unit:
Notice that the angle range of this wu is 0.65xxx so it would be considered a "high" angle range when compared to a "normal" AR of 0.41/0.42 Also note that this wu would take about 1/3 less time to crunch than a "normal" AR unit.
<true_angle_range>0.65538785528265</true_angle_range> <<<----AR (Angle Range)
<time_recorded>Wed Apr 5 19:00:04 2000</time_recorded>
***Addendum, using the newest version of the enhanced applications, the "angle range" can also be found in the result file listed under your account as long as they remain on the system Unfortunately at the present time these results are deleted from the system almost as fast as they are validated, however it does give you a little opportunity to check the angle range after the wu is completed but before the result is purged.
How do I find and recognize a work unit on my computer?
First, where the work unit is located will depend on your operating system and the method used to install the BOINC application. Basically you would look in the "projects" directory under your boinc installation directory. Here you will find a directory for each project you have joined. Now open the actual seti project directory. As I said, the actual directory names and location may be different depending on your operating system and where the actual boinc directory was installed.
In your seti project directory will be a number of files. There will be at least one executable file and some other files. The actual work unit will have a filename that has six groups of characters separated by commas. Here is one example: 01dc04ab.3621.112.834626.3.233 Notice that the groups are of different sizes. The work units will have a file size of roughly 360,000 bytes (360kb). If you see other files in the directory with filenames exactly the same as one of the work units but with a couple of extra groups of characters at the end of it and a much smaller file size, these are the result files for the computations.
When I started this work unit it said 120 hours to complete. Now it says 30 hours runtime at 50% completed and still 50 hours to completion. What gives?
When the SETI Enhanced application starts crunching it's first work unit it does not have a clue to how much time it will actually take to finish. The time you saw is just what was "guesstimated" when the work unit was created. As progress on a work unit progresses the estimated completion time is adjusted to more closely reflect the actual time used and the percentage completed. When the percentage is at 50% the error in the estimated time should be about half of the beginning error.. After the work unit has been completed a Duration Correction Factor (DCF) will be computed. When you start crunching your next work unit the DCF will be applied. As long as you are processing Wu's with close to the same angle range the time to completion will gradually become fairly accurate. If you do happen to crunch a WU with either a high or low AR, your estimated time will be affected temporarily but it will return to normal after a couple more "average" WU's.
It has also been noticed that due to the way the calculations on the WU are performed, it takes longer to get to the 50% point than it does to go from 50% to 100%.
What is DCF?
What is a Duration Correction Factor and how is it used?
No project out there can give you a task timed exactly for your CPU, unless they have all those CPUs as well, overclocked or not. So you get one standard task to work on. Each work unit is given an expected time to completion which is based on a reference computer and the angle range etc. of the work unit. When the work unit is downloaded to your computer, boinc takes the actual speed of your computer, the speed of the reference computer and the expected time to completion (from the work unit) and calculates an estimated completion time for your computer. The Duration Correction Factor is used to modify the estimated completion time to more closely match the actual speed of your computer. The DCF will take 10% off the estimated time you last had and for the next task start with that time. It'll continue doing so until the estimated time about equals the CPU time (not wall clock time). To help prevent underestimating the time, if a work unit actually takes longer to crunch than the estimated time, the new estimated time will use the actual completion time of the last work unit.
This means that it may take quite a while for your BOINC to know of one project what to expect in tasks getting in, asking the right amount of time and thus adjust the amount of tasks for you to crunch within the "days between connect" you set.
Are there going to be optimized versions of the enhanced application for different computers?
Yes. There are a few people already testing versions of optimized applications for various platforms. The main enhanced application has been heavily optimized and is much much faster than the original enhanced application however there will be optimized applications for specific platforms. They should be ready for mainstream release shortly after the main enhanced application.
Will there be 64 bit versions of the enhanced application?
While nothing is set in stone, at the present time there seems to be no definite plans to release a 64 bit application. Alpha tests have been done on an app that had been modified to make use of some of the 64 bit resources, but there was very little speed increase over the plain vanilla 32 bit app. A new application would have to be written to take full advantage of the 64 bit processor's features tailored to each processor. I'm sure there will be 64 bit apps, but just no definite timetable for them yet.
Join Team Starfire
Rudeness is a weak man's imitation of strength