Commit graph

51 commits

Author SHA1 Message Date
Jeff Garzik 714c0fd7c9 Continue scanhash, even if high 32 bits are zero.
Previously, we would stop the scan if the high 32 bits of the hash were zero,
as a quick shortcut for testing the full hash.  If this quick test succeeded,
we would pass the work to the server for full validation.

Change this logic to perform full validation inside minerd, so that work may
be resumed more quickly if hash > target.
2011-02-03 00:46:55 -05:00
Jeff Garzik 453101d9e9 Remove "PROOF OF WORK FOUND?" debug output; redundant. 2011-01-29 23:55:11 -05:00
Jeff Garzik f889476bbd Dynamically adjust time spent hashing current work unit, to meet target 2011-01-29 01:14:12 -05:00
Jeff Garzik 0b67740707 Pass max-nonce as arg to each sha256 algo.
Should be an equivalent transformation, with no behavior changes.
2011-01-29 00:56:24 -05:00
Jeff Garzik f570ffcf75 Code movement: move second hash time sampling to main miner loop 2011-01-29 00:47:48 -05:00
Jeff Garzik e41171424a Fix non-working short options -q and -r N, by listing them in optstring. 2011-01-29 00:28:19 -05:00
Jeff Garzik fc4ed179e8 Release version 0.5. 2010-12-28 22:38:57 -05:00
Jeff Garzik 16006f9037 Rather than sleep-loop, main thread waits for all threads to exit. 2010-12-28 21:10:41 -05:00
Jeff Garzik 872211caad Add --quiet option, to disable hashmeter output. 2010-12-27 02:13:15 -05:00
Jeff Garzik d88648dd39 sha256_via: ensure that found nonce is copied back into output data buffer
Also, some minor cleanups, removing unused args.
2010-12-23 20:21:00 -05:00
Jeff Garzik d363a1d68d sha256_via: ensure proper data area is fully checksummed 2010-12-19 21:37:30 -05:00
Jeff Garzik ee592d0a60 Handle temporary JSON failures (due to server reboot, etc.) 2010-12-18 22:22:06 -05:00
Jeff Garzik 857ba8f6cc Release version 0.3. 2010-12-18 16:31:28 -05:00
Jeff Garzik ce1c9a8aca Display version on minerd --help usage output. 2010-12-06 20:21:22 -05:00
Jeff Garzik f1fcd76ba7 sha256_cryptopp: Add crypto++ 32-bit assembly implementation 2010-12-06 20:14:58 -05:00
Jeff Garzik 1a1a018627 Release version 0.2.2.
Remove 'experimental' marker from VIA padlock implementation.
2010-12-06 02:30:57 -05:00
Jeff Garzik 276dcdbcec Avoid null deref in command line arg processing.
Reported by lfm.
2010-12-05 23:18:18 -05:00
Jeff Garzik 145e5fe141 submit_work: increase string buffer, to avoid overflow 2010-11-29 12:21:03 -05:00
Jeff Garzik 74bb196296 Add Crypto++ sha256 implementation (C only, ASM elided for now) 2010-11-28 20:16:22 -05:00
Jeff Garzik 339ddf4d75 Move sha256_generic into its own .o build output. Const-ify midstate param. 2010-11-27 04:31:32 -05:00
Jeff Garzik 4c47553c85 Clean up multi-algorithm selection and display 2010-11-27 03:50:52 -05:00
Jeff Garzik e2eeaaf75b Add experimental (read: probably broken) VIA padlock support. 2010-11-27 01:29:56 -05:00
Jeff Garzik 86eb37d631 Improve and modularize compile-time CPU detection.
Ideally, we should move this to autoconf.
2010-11-27 00:46:59 -05:00
Jeff Garzik 500759cea1 s/__SSE__/__SSE2__/ 2010-11-27 00:12:28 -05:00
Jeff Garzik 2f2bf745c4 Note that 4way is experimental 2010-11-26 23:16:38 -05:00
Jeff Garzik 35ea649d97 Improve hash performance statistics. 2010-11-26 23:12:24 -05:00
Jeff Garzik a50201eb21 Improve --help output. Mention --help in README. 2010-11-26 20:15:07 -05:00
Jeff Garzik 1f5074381f Correct -a command line help. 2010-11-26 19:12:22 -05:00
Jeff Garzik c639149977 Add tcatm's 4way SSE2 sha256 implementation. 2010-11-26 19:04:48 -05:00
Jeff Garzik 0a333110f7 Build on Windows using mingw32. 2010-11-26 16:28:12 -05:00
Jeff Garzik 352bab2109 Introduce compat.h, for Win32 builds 2010-11-26 15:50:36 -05:00
Jeff Garzik b7cc9b68ad Replace argp with getopt_long 2010-11-26 15:46:11 -05:00
Jeff Garzik 59f1fb2ec8 Link with pthreads lib, if present. Remove GNU-specific asprintf usage. 2010-11-26 15:20:54 -05:00
Jeff Garzik 5d1a45294b code movement: move submit_work() above hot path 2010-11-25 04:04:30 -05:00
Jeff Garzik 945be82ea1 Move utility routines to util.c. 2010-11-25 04:03:59 -05:00
Jeff Garzik e4c4b3fe5f scanhash micro-optimizations
* don't bother returning nonce, we only need success/fail boolean
* don't needlessly read nonce pointer data, for each loop
2010-11-25 01:27:19 -05:00
Jeff Garzik 1032fec15b Allocate work struct once, on stack, rather than alloc+free for each getwork. 2010-11-25 01:16:34 -05:00
Jeff Garzik a614823fa7 Remove unused OpenSSL dependency.
Also, turn a few strings into #define'd constants.
2010-11-25 01:02:53 -05:00
Jeff Garzik 23cd22a5a5 RPC URL, username and password become arguments,
rather than compile-time constants.
2010-11-25 00:49:39 -05:00
Jeff Garzik 67d3c91317 Small cleanups and comment additions. Don't sleep after proof of work found. 2010-11-25 00:36:40 -05:00
Jeff Garzik ea6c1126ec Add GPLv2 header. 2010-11-24 19:50:46 -05:00
Jeff Garzik 702e2ac811 Convert over to autotools. Release version 0.1. 2010-11-24 19:31:12 -05:00
Jeff Garzik 19b51e3600 Clean up protocol debugging output, and other cleanups. 2010-11-24 18:25:06 -05:00
Jeff Garzik 5b0ab3cf79 Remove byte reversing in submit_work() 2010-11-24 15:39:37 -05:00
Jeff Garzik 89a05600ba Code movement. Update stats counter more frequently. 2010-11-24 05:55:56 -05:00
Jeff Garzik 5b6e9a92f1 Add command line parsing, and multiple threads. 2010-11-24 03:36:53 -05:00
Jeff Garzik 45a29ac997 Add timing info. Remove BIGNUM PoW checks. 2010-11-24 02:11:59 -05:00
Jeff Garzik 666af32046 Clean up proof-of-work checking,
attempting to address find-solution-too-fast problem.
2010-11-24 01:19:47 -05:00
Jeff Garzik 16b535e2dd Add some code comments. 2010-11-23 23:54:37 -05:00
Jeff Garzik 9bc3649e91 Add README and license info. 2010-11-23 23:43:45 -05:00