2019-01-31 00:09:51
Without at least 1 GB/s it really won't work
Fireduck
2019-01-31 00:19:17
so a fast spinny disk raid 1 is about 10x short
Rotonen
2019-01-31 00:20:52
Yeah
Fireduck
2019-01-31 18:17:58
So that is closely related to the methods near it which save and get the records, so it is kinda commented by proximity to those. :wink:
Fireduck
2019-01-31 18:39:57
not for someone coming in cold and trying to get an overview level understanding of how it ticks :P
Rotonen
2019-01-31 18:40:26
al least name variables and sum those together :D
Rotonen
2019-01-31 18:40:39
you are not at all wrong
Fireduck
2019-01-31 18:40:59
a test run cycle is 20min
Rotonen
2019-01-31 18:41:34
i guess the sensible amount of hashing threads is the system hyperthread count
Rotonen
2019-01-31 18:42:06
that might as well be per default that
Rotonen
2019-01-31 18:42:36
what’s the sizing thing?
Rotonen
2019-01-31 18:42:50
and why would one want more than one wave?
Rotonen
2019-01-31 18:43:22
buffer_size ?
Fireduck
2019-01-31 18:43:41
work unit mem gb
Rotonen
2019-01-31 18:44:03
how much memory (roughly) you want to use for in progress work units
Fireduck
2019-01-31 18:44:24
in total or per wave?
Rotonen
2019-01-31 18:44:27
total
Fireduck
2019-01-31 18:44:36
gotcha
Rotonen
2019-01-31 18:44:53
and why more than one wave?
Rotonen
2019-01-31 18:44:53
and you would want more than one wave so that reads continue while a wave is processing
Fireduck
2019-01-31 18:45:01
and if your IO system does better with more readers
Fireduck
2019-01-31 18:45:10
why more than two waves?
Rotonen
2019-01-31 18:45:34
not sure
Fireduck
2019-01-31 18:46:21
i’ll try with two waves, 8 threads, 50gb work unit
Rotonen
2019-01-31 18:46:46
2TB 960 pro, 64GB ram, i7-7700T
Rotonen
2019-01-31 18:47:16
probably want more threads. Ram is fast, but not instant
Fireduck
2019-01-31 18:47:23
so threads will still be waiting on data from ram
Fireduck
2019-01-31 18:47:27
but I am not sure
Fireduck
2019-01-31 18:47:44
so, 16 threads
Rotonen
2019-01-31 18:48:04
I had some better experience with 10x the number of cores
Fireduck
2019-01-31 18:48:09
but I really don't know
Fireduck
2019-01-31 18:48:31
if that is from your R900, i’ll not try to follow
Rotonen
2019-01-31 18:48:49
I did most of my testing on a ryzen system
Fireduck
2019-01-31 18:49:43
preliminarily i get more and more consistent reads with just one wave
Rotonen
2019-01-31 18:49:46
by theory was ram is about 10 microseconds to access, and it takes about 1 microsecond to do the hashing, so 10:1 ratio makes sense
Fireduck
2019-01-31 18:50:28
i’ll try 80 threads 16 waves later
Rotonen
2019-01-31 18:50:36
I should probably add a 100ms delay between wave starts so they aren't in lock step to start with
Fireduck
2019-01-31 18:50:42
the device is a multiqueue io device
Rotonen
2019-01-31 18:51:03
add a rand() + 100ms
Rotonen
2019-01-31 18:51:15
I should also add a higher level bandwidth report, I might be fooling myself watching dstat
Fireduck
2019-01-31 18:51:19
if the OS is caching anything
Fireduck
2019-01-31 18:52:00
got a null pointer exception
Rotonen
2019-01-31 18:52:29
runpass -> old work unit -> boom
Rotonen
2019-01-31 18:52:59
can you paste me the stack trace?
Fireduck
2019-01-31 18:53:46
checking this out on the side and slack only on phone on site
Rotonen
2019-01-31 18:53:56
ah
Fireduck
2019-01-31 18:54:12
line number of closest line in my code?
Fireduck
2019-01-31 18:54:40
os::commit_memory failed
Rotonen
2019-01-31 18:54:45
so dunno
Rotonen
2019-01-31 18:54:51
ah
Fireduck
2019-01-31 18:55:02
prolly i am using more ram than is available
Rotonen
2019-01-31 18:57:33
for the miner to be worth it, i guess i’ll need to punch above 200k in hashrate
Rotonen
2019-01-31 18:59:31
the memory use just balloons out of hand, already down to a 35G work unit and still tries to use 55G memory
Rotonen
2019-01-31 18:59:47
my math says if you can do 2GB/s reads, and use 40GB of ram, you should be able to get about 1.3 MH/s
Fireduck
2019-01-31 19:00:17
but I haven't managed to get anything with near that number of work units not slow way down
Fireduck
2019-01-31 19:00:55
i’ll idly play with it on the side for the next 3 hours
Rotonen
2019-01-31 19:01:09
awesome, I appreciate it
Fireduck
2019-01-31 19:01:22
i’ll try with one wave one thread
Rotonen
2019-01-31 19:01:23
I don't quite have the right hardware for this and am trying to spend less money on things
Fireduck
2019-01-31 19:04:31
but the sequential reads it does are not above like 1.2GB/s
Rotonen
2019-01-31 19:05:28
with one thread and one wave it only uses about 20GB ram - expected?
Rotonen
2019-01-31 19:06:02
oh, it stops reading for a bit
Rotonen
2019-01-31 19:06:15
it should use 1gb for the wave itself, plus whatever amount of work units you specify
Fireduck
2019-01-31 19:06:18
gotcha, switching to 2 waves
Rotonen
2019-01-31 19:06:48
oh, the per wave 1GB got me
Rotonen
2019-01-31 19:07:47
and 2 waves 1 thread gets me 2.3GB/s reads
Rotonen
2019-01-31 19:08:30
each wave uses 100% CPU - expected?
Rotonen
2019-01-31 19:10:24
so this actually needs a beefy cpu too
Rotonen
2019-01-31 19:10:49
otherwise it keeps stepping on its own toes
Rotonen
2019-01-31 19:15:15
something went boom lines 370 393
Rotonen
2019-01-31 19:18:22
it fails to consume work units from the pool?
Rotonen
2019-01-31 19:24:46
letting it run 2 waves, 40 threads, 50gb, xmx 55gb
Rotonen
2019-01-31 19:25:57
so far it is up to two hashes per second
Rotonen
2019-01-31 19:39:53
ah, that makes sense
Fireduck
2019-01-31 19:40:00
i changed some of the time flow and broke it
Fireduck
2019-01-31 19:41:07
has run for about two blocks now, one of which it tripped up on, but seemed to somehow recover
Rotonen
2019-01-31 19:41:20
up to ten hashes per second
Rotonen
2019-01-31 19:41:31
ha
Fireduck
2019-01-31 19:41:53
will leave it for an hour now and come back to it
Rotonen
2019-01-31 19:42:21
maybe you figure something out in the meanwhile
Rotonen
2019-01-31 20:40:33
it peaks up to 150k, averages 50k over the hour and posted only invalid shares
Rotonen
2019-01-31 20:40:52
invalid shares are the best shares
Fireduck
2019-01-31 20:40:56
all rejected?
Fireduck
2019-01-31 20:41:10
ping me for a retest once you figure it out, the pool miner performs better
Rotonen
2019-01-31 20:41:16
all rejected
Rotonen
2019-01-31 20:41:23
that is strange
Fireduck
2019-01-31 20:41:34
something is off in the pool communication
Rotonen