sha256_4way.c


Log

Author Commit Date CI Message
zefir 713e8be6 2012-02-04T14:22:47 move CPU chipset specific optimization into device-cpu
Luke Dashjr b9d197de 2012-01-17T16:29:01 Refactor the CPU scanhash_* functions to use a common API. Fixes bugs. - Before, some returned bool, and others returned int (which was then turned into a bool with a comparison); now, everything returns a bool - Before, some set hashes_done to nonce - 1 when a share was found and others set it to nonce + 1 or 2. This caused some algorithms to scan/submit shares twice with the new cpu_scanhash function. Now, it has all been replaced with last_nonce, which is set to the final nonce checked by the scanhash_* func. - VIA needs the full data, and cannot use midstate. All the others were expecting midstate and data+64 for their parameters. Now, we pass midstate and the full data pointer, and let the scanhash_* function choose which to use.
Ycros 9fe21064 2011-06-25T08:18:29 Fixed up using config.h instead of cpuminer-config.h.
Con Kolivas 5007805d 2011-07-03T19:10:59 Update CPU reentrant scan code to work properly for extended periods up to scantime and adjust rate properly. Simplify locking in hashmeter since it's called relatively infrequently anyway. Set gpuminer hashmeter interval update to log interval / 5 as well.
Jeff Garzik 23e9cf91 2011-03-20T22:44:25 Ensure cpuminer-config.h is universally included, in *.c and *.h alike. In miner.h, this fixes an alloca-definition-related warning. For the other files, this is simply future-proofing/precaution.
Jeff Garzik 2d49a9a5 2011-03-17T22:02:28 Introduce ability to interrupt hash scanners in the middle of scanning.
Jeff Garzik ef91bd59 2011-03-02T22:03:11 sha256_4way: skip last 3 rounds. Pointed out by several people, including Raulo.
Raulo a27e69ae 2011-02-21T21:41:19 Changes to make the 4-way code compile on Intel Compiler
Jeff Garzik 1083e15c 2011-02-17T01:22:55 Mark hash success as unlikely, using __builtin_expect() intrinsic
Jeff Garzik 714c0fd7 2011-02-03T00:46:55 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.
Jeff Garzik c68ffb30 2011-02-02T18:47:04 Display proof-of-work hash when one is discovered
Jeff Garzik 0b677407 2011-01-29T00:56:24 Pass max-nonce as arg to each sha256 algo. Should be an equivalent transformation, with no behavior changes.
Jeff Garzik 8504cf48 2011-01-29T00:36:32 sha256_4way minor optimizations http://www.bitcoin.org/smf/index.php?topic=820.msg40022#msg40022 Credit: BeeCee1
Jeff Garzik 0ee24c00 2010-12-18T16:29:07 sha256_4way: work around gcc 4.5.x bug by always inlining ROTR and SHR
Jeff Garzik 8ca6ffa8 2010-12-06T00:59:59 sha256_4way: do not include unnecessary headers, when !4way Reported by lfm
Jeff Garzik 339ddf4d 2010-11-27T04:31:32 Move sha256_generic into its own .o build output. Const-ify midstate param.
Jeff Garzik 6288d943 2010-11-27T03:50:12 sha256_4way: patch proper nonce into data block
Jeff Garzik 86eb37d6 2010-11-27T00:46:59 Improve and modularize compile-time CPU detection. Ideally, we should move this to autoconf.
Jeff Garzik 500759ce 2010-11-27T00:12:28 s/__SSE__/__SSE2__/
Jeff Garzik eed9b3c7 2010-11-26T23:15:38 sha256_4way: perform 16m hashes, not 64k, per invocation
Jeff Garzik 35ea649d 2010-11-26T23:12:24 Improve hash performance statistics.
Jeff Garzik c6391499 2010-11-26T19:04:48 Add tcatm's 4way SSE2 sha256 implementation.