Version 2 (modified by davea, 10 years ago) (diff)


Validation, credit, and replication

A computational result consists of:

  • The result itself (the output files)
  • The amount of CPU time used; this may be used to determine how much credit to grant for the result.

In general, neither of these can be trusted:

  • Some hosts have hardware problems (consistent or sporadic) that cause errors (usually in floating-point computation).
  • Some volunteers may maliciously return wrong results; they may even reverse-engineer your application, deciphering and defeating any sort of internal validation mechanism you might include in it.
  • Some volunteers may return correct results but falsify the CPU time.

There are

purposes: correct results, correct credit no redundancy

(still can validate) may bound credit


exact match

exact computation

sixtrack example: compiler,

compiler options (disable DP hardware), numerical libraries

homogeneous redundancy exact checkpointing

fuzzy matching