No, safe mode doesn't help.
So, the last version
worked in safe mode, but crashed otherwise, and the current version doesn't work at all in either mode?
And, just to verify, the key search rate is still ~3Mkey/s in safe mode?
I may have jumped the gun on this one. The old one has the same problem of not actually finding anything in safe mode, either (the one I was looking for would've taken an estimated 3 days to find it in safe mode, so it never finished)
This is a very interesting result. In the current version, safe mode does not completely disable loop unrolling, just the long ones. The shorter loops used in the bignum arithmetic functions are still unrolled by the preprocessor. There were changes beside this, but it could be a good place to start poking. I can send you replacement kernel code that disables all preprocessor unrolling if you want to try.
I think the issue may be something else now. Then again, maybe it DID work back when I had 0.16, and something changed between then? Damn. I hate debugging things. Sorry :/
What code is this written in? Or rather, what compiler (for Windows) should I get? Maybe I can step through the thing to see where it fails (I at least know that much about programming >.< )
The language is OpenCL-C, and you should already have the code: take a look at calc_addrs.cl. Unfortunately, I don't have any tips to offer on how to use a device-side debugger, or whether it's even possible using AMD's SDK.
The kernels keep a couple of large temporary value buffers in GPU memory, usually never touched by the CPU. Their contents could be very informative for diagnosing problems, and all the test suite will do is check the correctness.
I was thinking I could do something like step through it line by line to see where it SHOULD actually find a match and see what happens when it skips it and keeps going. I code in VB for Excel for work, and used to write in some other languages. There's no compiler out there that would allow me to execute the code line by line? Or is the stuff in the background too complicated to monitor?