dmarcuse / turbokrist

The first-ever GPU accelerated Krist miner - using Java and OpenCL.
GNU General Public License v3.0
6 stars 3 forks source link

Trouble with compiling on Linux #5

Closed Lignum closed 8 years ago

Lignum commented 8 years ago

Not sure if it's a bug or I'm being silly...

:test

me.apemanzilla.jclminer.tests.TestCLHashing > testHashing_digest FAILED
    java.lang.ExceptionInInitializerError
        Caused by: com.nativelibs4java.opencl.CLException
    java.lang.NullPointerException

me.apemanzilla.jclminer.tests.TestCLConstants > testConstant_K FAILED
    java.lang.NoClassDefFoundError
    java.lang.NullPointerException

me.apemanzilla.jclminer.tests.TestCLMacros > testMacro_PAD FAILED
    java.lang.NoClassDefFoundError
    java.lang.NullPointerException

me.apemanzilla.jclminer.tests.TestCLMacros > testMacro_RR FAILED
    java.lang.NoClassDefFoundError
    java.lang.NullPointerException

me.apemanzilla.jclminer.tests.TestCLMining > testMining_hashToLong FAILED
    java.lang.NoClassDefFoundError
    java.lang.NullPointerException

Dunno if this is intended, but it doesn't build the CLI, which is a problem. Unless you're supposed to build it manually, in which case I get this:

Circular dependency between the following tasks:
:classes
\--- :compileJava
     \--- :jar
          \--- :classes (*)

(*) - details omitted (listed previously)
dmarcuse commented 8 years ago

You can't build the CLI subproject separately as it requires the core code.

Can you attach the full stacktrace of the testHashing_digest test? You can find it by opening build/reports/tests/index.html.

Lignum commented 8 years ago

Sure!

dmarcuse commented 8 years ago

Can you post the stdout logs for testHashing_digest? They are also available from the test reports. (This is why I love Gradle for testing :+1: )

Lignum commented 8 years ago

Ah, it's this bullcrap again:

an 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : atiocl64
Jan 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : amdocl64
Jan 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : atiocl32
Jan 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : atiocl
Jan 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : amdocl32
Jan 21, 2016 7:19:59 PM org.bridj.BridJ log
INFO: Library not found : amdocl

I had this error with JCLMiner... eventually it fixed itself for some reason.

dmarcuse commented 8 years ago

Yeah, Linux with the proprietary NVidia drivers is... annoying, at best. I'm assuming you still have the latest drivers from apt installed - 352, right?

Lignum commented 8 years ago

Yep, this is a fresh Xubuntu install running nvidia-352. Maybe installing the CUDA SDK will help?

dmarcuse commented 8 years ago

No, that shouldn't be it. I had some success with version 346, so try that out first.

Alternatively, you can try building it with ./gradlew build -x test which will skip the testing entirely, but if the tests fail chances are the miner will have the same problem.

Lignum commented 8 years ago

Too late, I'm almost done installing the CUDA SDK... besides, it worked on nvidia-352 last time. But I'll give it a shot if this doesn't work.

dmarcuse commented 8 years ago

Alright. You can also try installing some of the OpenCL packages from apt. Just run apt-cache search opencl and see what packages are available.

Lustyn commented 8 years ago

Question: If i'm on windows I shouldn't have to install any special OpenCL packages right? Seems weird that last time I got that BSOD... I might have not read instructions right

Lignum commented 8 years ago

All you need are your graphics drivers...

Lustyn commented 8 years ago

Odd.

dmarcuse commented 8 years ago

@justync7 You mentioned yesterday that other programs were also causing BSODs, leaving me to believe that it's a problem with your system rather than my code. If you find any evidence otherwise you can open an issue.

dmarcuse commented 8 years ago

I'm going to remove the bug label seeing as this is a driver issue rather than a problem with the code itself.

Lustyn commented 8 years ago

You don't understand... The other program I knew that I didn't include all the required arguments and the code was touchy in the first place. That is unrelated.

Lignum commented 8 years ago

Installing the CUDA SDK fixed it.

dmarcuse commented 8 years ago

Glad to hear it. Have fun mining.

Lignum commented 8 years ago

Meh, I'm getting about 20MH/s on Linux... I wouldn't necessarily call that fun, but hey, it works :P

dmarcuse commented 8 years ago

You'll need to set the -w option similar to -d in JCLMiner. Copy the signature from -l, and other than that the format is the same: -w <sig>:<worksize>

Lignum commented 8 years ago

Hm, I get ~205MH/s with worksize 999999... my signature is also negative this time?

dmarcuse commented 8 years ago

The signature can be any integer. For the worksize, try 2^21 or so - that gave the best performance on my GTX 760

Lignum commented 8 years ago

I went as far as 8097152 and it seems to max out at around 240MH/s...

Lignum commented 8 years ago

Alright, on Windows I get 160MH/s?..

dmarcuse commented 8 years ago

Forgetting -a?

And yes, I noticed as well that Linux gets significantly higher hashrates than Windows. Only for NVidia though, on AMD it was exactly the same.

Lignum commented 8 years ago

Yep, that was it. I thought it wasn't necessary anymore for some odd reason :P. I get an average of 320 MH/s, though isn't this one supposed to get entire GH/s or is that still in development?