Stupid mistake, try this change in algo/lyra2/lyra2h.c line 34:
34c34
< LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16 );
---
> LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8);
I presume no news means it now works? I'd like confirmation.
With the following change it still only uses 32 CPUs:
--- algo/lyra2/lyra2h.c.orig 2017-12-14 23:28:51.000000000 +0000
+++ algo/lyra2/lyra2h.c 2017-12-16 05:29:48.295167452 +0000
@@ -31,7 +31,7 @@
sph_blake256( &ctx_blake, input + 64, 16 );
sph_blake256_close( &ctx_blake, hash );
- LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 8, 8, 8);
+ LYRA2Z( lyra2h_matrix, hash, 32, hash, 32, hash, 32, 16, 16, 16);
memcpy(state, hash, 32);
}
Not sure if I should try your earlier changes as well? If so - could you send a patch in diff -u format?
I'm a bit confused by this post.
Your comment about still using 32 CPUs is for my previous post about using 1ULL to force it to 64 bits.
You're saying that didn't work?
The quote above is for a different problem with rejects mining the new lyra2h algo. Is that what you
are now offerring to test?
Edit: I re-read you post a few more times and it appears you're saying that the Lyra2 chage didn't fix
the 32 cpu limit problem you initially reported. It only (hopefully) fixes the rejects from lyra2h reported
by someone else.
This is the proposed fix for the 32 cpu limit:
@@ -204,7 +204,7 @@
for ( uint8_t i = 0; i < ncpus; i++ )
{
/ cpu mask
- if( (ncpus > 64) || ( mask & (1UL << i) ) ) CPU_SET( i, &set );
+ if( (ncpus > 64) || ( mask & (1ULL << i) ) ) CPU_SET( i, &set );
}
if ( id == -1 )
{
@@ -1690,9 +1690,9 @@
{
if (opt_debug)
applog( LOG_DEBUG, "Binding thread %d to cpu %d (mask %x)",
- thr_id, thr_id % num_cpus, ( 1 << (thr_id % num_cpus) ) );
+ thr_id, thr_id % num_cpus, ( 1ULL << (thr_id % num_cpus) ) );
- affine_to_cpu_mask( thr_id, 1 << (thr_id % num_cpus) );
+ affine_to_cpu_mask( thr_id, 1ULL << (thr_id % num_cpus) );
}
else if (opt_affinity != -1)
{