Skip to content

Commit

Permalink
v3.23.3
Browse files Browse the repository at this point in the history
  • Loading branch information
JayDDee committed Sep 28, 2023
1 parent be88afc commit bc5a5c6
Show file tree
Hide file tree
Showing 88 changed files with 5,532 additions and 3,367 deletions.
12 changes: 4 additions & 8 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -36,21 +36,17 @@ cpuminer_SOURCES = \
algo/argon2/argon2d/argon2d/argon2d_thread.c \
algo/argon2/argon2d/argon2d/encoding.c \
algo/blake/sph_blake.c \
algo/blake/blake256-hash-4way.c \
algo/blake/blake512-hash-4way.c \
algo/blake/blake256-hash.c \
algo/blake/blake512-hash.c \
algo/blake/blake-gate.c \
algo/blake/blake.c \
algo/blake/blake-4way.c \
algo/blake/sph_blake2b.c \
algo/blake/sph-blake2s.c \
algo/blake/blake2s-hash-4way.c \
algo/blake/blake2s-hash.c \
algo/blake/blake2s.c \
algo/blake/blake2s-gate.c \
algo/blake/blake2s-4way.c \
algo/blake/blake2b-hash-4way.c \
algo/blake/blake2b-hash.c \
algo/blake/blake2b.c \
algo/blake/blake2b-gate.c \
algo/blake/blake2b-4way.c \
algo/blake/blakecoin-gate.c \
algo/blake/mod_blakecoin.c \
algo/blake/blakecoin.c \
Expand Down
8 changes: 8 additions & 0 deletions RELEASE_NOTES
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,14 @@ If not what makes it happen or not happen?
Change Log
----------

v3.23.3

#400: Removed excessive thread restarts when mining solo.
Fixed build_msys2.sh for gcc-13 by removing unsupported option "--param=evrp-mode=legacy" from CFLAGS.
Added CPUID detection and reporting of CPUs and SW builds supporting SHA512 extension.
Added prototype of sha-512 using SHA512 intrinsics, untested.
Other improvements and code cleanup.

v3.23.2

sha256dt, sha256t & sha256d +10% with SHA, small improvement with AVX2.
Expand Down
1 change: 1 addition & 0 deletions algo-gate-api.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ typedef uint32_t set_t;
#define SHA_OPT 0x20 // Zen1, Icelake (deprecated)
#define AVX512_OPT 0x40 // Skylake-X, Zen4 (AVX512[F,VL,DQ,BW])
#define VAES_OPT 0x80 // Icelake, Zen3
#define SHA512_OPT 0x100 // Lunar Lake, Arrow Lake

// AVX10 does not have explicit algo features:
// AVX10_512 is compatible with AVX512 + VAES
Expand Down
2 changes: 1 addition & 1 deletion algo/blake/blake-4way.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#include "blake-gate.h"
#include "blake-hash-4way.h"
#include "blake256-hash.h"
#include <string.h>
#include <stdint.h>
#include <memory.h>
Expand Down
958 changes: 477 additions & 481 deletions algo/blake/blake256-hash-4way.c → algo/blake/blake256-hash.c

Large diffs are not rendered by default.

64 changes: 3 additions & 61 deletions algo/blake/blake-hash-4way.h → algo/blake/blake256-hash.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#ifndef BLAKE_HASH_4WAY__
#define BLAKE_HASH_4WAY__ 1
#ifndef BLAKE256_HASH__
#define BLAKE256_HASH__ 1

#include <stddef.h>
#include "simd-utils.h"
Expand All @@ -11,13 +11,6 @@
void blake256_transform_le( uint32_t *H, const uint32_t *buf,
const uint32_t T0, const uint32_t T1, int rounds );

/////////////////////////
//
// Blake-512 1 way SSE2

void blake512_transform_le( uint64_t *H, const uint64_t *buf,
const uint64_t T0, const uint64_t T1 );

//////////////////////////
//
// Blake-256 4 way SSE2
Expand Down Expand Up @@ -86,30 +79,6 @@ void blake256r8_8way_init(void *cc);
void blake256r8_8way_update(void *cc, const void *data, size_t len);
void blake256r8_8way_close(void *cc, void *dst);

// Blake-512 4 way AVX2

typedef struct {
__m256i buf[16];
__m256i H[8];
__m256i S[4];
size_t ptr;
uint64_t T0, T1;
} blake_4way_big_context __attribute__ ((aligned (128)));

typedef blake_4way_big_context blake512_4way_context;

void blake512_4way_init( blake_4way_big_context *sc );
void blake512_4way_update( void *cc, const void *data, size_t len );
void blake512_4way_close( void *cc, void *dst );
void blake512_4way_full( blake_4way_big_context *sc, void * dst,
const void *data, size_t len );
void blake512_4way_full_le( blake_4way_big_context *sc, void * dst,
const void *data, size_t len );
void blake512_4way_prehash_le( blake_4way_big_context *sc, __m256i *midstate,
const void *data );
void blake512_4way_final_le( blake_4way_big_context *sc, void *hash,
const __m256i nonce, const __m256i *midstate );

#if defined(__AVX512F__) && defined(__AVX512VL__) && defined(__AVX512DQ__) && defined(__AVX512BW__)

////////////////////////////
Expand Down Expand Up @@ -137,7 +106,6 @@ void blake256_16way_round0_prehash_le( void *midstate, const void *midhash,
void blake256_16way_final_rounds_le( void *final_hash, const void *midstate,
const void *midhash, const void *data, const int rounds );


// 14 rounds, blake, decred
typedef blake_16way_small_context blake256r14_16way_context;
void blake256r14_16way_init(void *cc);
Expand All @@ -150,33 +118,7 @@ void blake256r8_16way_init(void *cc);
void blake256r8_16way_update(void *cc, const void *data, size_t len);
void blake256r8_16way_close(void *cc, void *dst);

////////////////////////////
//
//// Blake-512 8 way AVX512

typedef struct {
__m512i buf[16];
__m512i H[8];
__m512i S[4];
size_t ptr;
uint64_t T0, T1;
} blake_8way_big_context __attribute__ ((aligned (128)));

typedef blake_8way_big_context blake512_8way_context;

void blake512_8way_init( blake_8way_big_context *sc );
void blake512_8way_update( void *cc, const void *data, size_t len );
void blake512_8way_close( void *cc, void *dst );
void blake512_8way_full( blake_8way_big_context *sc, void * dst,
const void *data, size_t len );
void blake512_8way_full_le( blake_8way_big_context *sc, void * dst,
const void *data, size_t len );
void blake512_8way_prehash_le( blake_8way_big_context *sc, __m512i *midstate,
const void *data );
void blake512_8way_final_le( blake_8way_big_context *sc, void *hash,
const __m512i nonce, const __m512i *midstate );

#endif // AVX512
#endif // AVX2

#endif // BLAKE_HASH_4WAY_H__
#endif // BLAKE256_HASH_H__
113 changes: 0 additions & 113 deletions algo/blake/blake2b-4way.c

This file was deleted.

20 changes: 0 additions & 20 deletions algo/blake/blake2b-gate.c

This file was deleted.

34 changes: 0 additions & 34 deletions algo/blake/blake2b-gate.h

This file was deleted.

Loading

0 comments on commit bc5a5c6

Please sign in to comment.