Nxt Forum

Nxt Discussion => Nxt Monetary System => Topic started by: ScripterRon on January 16, 2015, 10:53:52 pm

Title: NxtMint Java minter
Post by: ScripterRon on January 16, 2015, 10:53:52 pm
NxtMint 1.6.0

Download the latest version from NxtMint Releases (https://github.com/ScripterRon/NxtMint/releases)


NxtMint requires the Java 8 runtime since it uses language features that are not available in earlier versions of Java.
Nxt NRS works with Java 8, so you can upgrade without worrying that you will break the server.

NxtMint mints currencies defined by the Nxt Monetary System. A single currency can be minted as specified by the NxtMint configuration file. The minting algorithm is executed using one or more CPU threads or GPU devices. Newly-minted coins will be added to the account specified in the configuration file.

The NRS node used to create the mint transactions must accept API connections. This is done by specifying nxt.apiServerPort, nxt.apiServerHost and nxt.allowedBotHosts in nxt.properties. The account secret phrase is not sent to the Nxt server since the mint transactions are created and signed locally.

OpenCL is used to mint using the GPU and is not needed if you are using just the CPU. You will need to obtain OpenCL from your graphics card vendor (OpenCL may be automatically installed as part of the graphics card driver installation). The directory containing the OpenCL runtime library needs to be in either PATH (Windows) or LD_LIBRARY_PATH (Linux).  On Windows, OpenCL.dll is often placed in \Windows\system32 by the device driver installer, so it is always available and you won't need to update PATH.

Runtime Options
The following command-line options can be specified using -Dname=value

nxt.datadir=directory-path
Specifies the application data directory. Application data will be stored in a system-specific directory if this option is omitted:

java.util.logging.config.file=file-path
Specifies the logger configuration file. The logger properties will be read from 'logging.properties' in the application data directory. If this file is not found, the 'java.util.logging.config.file' system property will be used to locate the logger configuration file. If this property is not defined, the logger properties will be obtained from jre/lib/logging.properties.

JDK FINE corresponds to the SLF4J DEBUG level
JDK INFO corresponds to the SLF4J INFO level
JDK WARNING corresponds to the SLF4J WARN level
JDK SEVERE corresponds to the SLF4J ERROR level

Configuration options
The following configuration options can be specified in NxtMint.conf. This file is required and must be in the application data directory.

connect=host
Specifies the NRS host name and defaults to 'localhost'

apiPort=port
Specifies the NRS API port and defaults to 7876.

secretPhrase=phrase
Specifies the account secret phrase and must be specified. The secret phrase will not be sent to the NRS server.  Note that the configuration file is processed using the current user locale which can cause problems if the characters in the secret phrase aren't defined in the locale.

currency=code
Specifies the code for the currency to be minted.

units=count
Specifies the number of units to generate for each hash round and defaults to 1. The hash difficulty increases as the number of units increases but the transaction fee is 1 Nxt no matter how many units are generated. Thus you want to increase units as much as possible to reduce the cost of minting the currency but don't set it so high that you don't mint anything during a session. The count can be specified as an integer value or as a decimal value with a maximum number of digits following the decimal point as defined for the currency.

cpuThreads=count
Specifies the number of CPU threads to be used and defaults to 1. Specifying a thread count greater than the number of CPU processors will not improve minting since the mint algorithms are CPU-intensive and will drive each process to 100% utilization. Decrease the thread count if your computer becomes too hot or system response degrades significantly.

gpuIntensity=count
Specifies the GPU computation intensity and defaults to 0.  Your graphics card must support OpenCL in order to use the GPU.  You will need to try different values to determine an acceptable hash rate.  Specifying too large a value will result in performance degradation and GPU memory errors.  Start with an initial value of 10 and raise or lower needed.  A GPU will not be used if gpuIntensity is 0.   
   
gpuDevice=index,wsize,gcount
Specifies the GPU device number (0, 1, 2, ...), the work group size and the work group count.  The first GPU device will be used if this parameter is omitted.  This parameter can be repeated to use multiple GPU devices.  The GPU devices that are available are listed when NxtMint is started with a non-zero value for gpuIntensity. 

The work group size specifies the number of work items per work group and defaults to 256.  Performance can sometimes be improved by setting the work group size to the number of cores in a compute unit.  You can determine this value by dividing the number of cores on the card by the number of compute units.  For Scrypt, local memory contention can occur if the work group size is too large, so experiment with smaller values.   

The work group count specifies the number of work groups that will be executed by OpenCL before returning control to the application.  Specifying too large a value can result in adapter global storage being exceeded and can cause sluggish display performance as display work groups get delayed by mining work groups.

enableGUI=true|false
Specifies whether or not to enable the GUI and defaults to true. Disabling the GUI allows NxtMint to run in headless environments such as a disconnected service.
Title: Re: NxtMint Java minter
Post by: coretechs on January 16, 2015, 11:22:09 pm
Really nice work.

After getting it to build I ran into problems with a class dependency issue with LoggingFactory.  I was able to resolve it by adding an entry for slf4j-log4j12 to the pom.xml file for NxtMint, but I've never used Maven before so I'm not sure if I missed some other step.
Title: Re: NxtMint Java minter
Post by: colin012 on January 16, 2015, 11:24:04 pm
Cool!
Title: Re: NxtMint Java minter
Post by: KrusherPT on January 16, 2015, 11:27:58 pm
This is very good  :o
I'm trying to use it on windows but it says secret phrase not specified and i have all set, so i dont know my mistake

EDIT:
Nevermind i get it i need to get my conf file on appdata
Title: Re: NxtMint Java minter
Post by: colin012 on January 16, 2015, 11:43:28 pm
Hmmm, needs Https support!
Title: Re: NxtMint Java minter
Post by: faddat on January 17, 2015, 12:06:54 am
I think I've things set, but I do not know any of the possible currency codes.  Thousand thanks to ScripterRon for taking the time to build this. 
Title: Re: NxtMint Java minter
Post by: coretechs on January 17, 2015, 12:24:47 am
I think I've things set, but I do not know any of the possible currency codes.  Thousand thanks to ScripterRon for taking the time to build this.

The most popular currency on the NXT MS right now is EGOLD which has the currency code EGOLD and is mintable using this GPU minter.

http://nxtportal.org/search/5775213290661997199
Title: Re: NxtMint Java minter
Post by: bidji29 on January 17, 2015, 12:35:29 am
WHat are the result in term of speed?

Modern cpu can do 1-2Mh/s on keccak with the default minter.
How many this one do with cpu and gpu?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:05:36 am
Really nice work.

After getting it to build I ran into problems with a class dependency issue with LoggingFactory.  I was able to resolve it by adding an entry for slf4j-log4j12 to the pom.xml file for NxtMint, but I've never used Maven before so I'm not sure if I missed some other step.
I use the JDK version of SLF4J (slf4j-api and slf4j-jdk14).  In order to use a different logger implementation, you should replace slf4j-jdk14 in the pom for both NxtCore and NxtMint and then package both of them.  Or you could just replace slf4j-jdk14.jar with slf4j-log4j12.jar in the lib subdirectory without recompiling anything (slf4j-api works with any slf4j logger implementation).  You will need to start NxtMint using -cp instead of -jar in this case since the NxtMint.jar file contains the classpath as part of the manifest.

For example,
  java -Xmx256m -cp "NxtMint-1.0.0.jar;lib" org.ScripterRon.NxtMint.Main

Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:10:45 am
This is very good  :o
I'm trying to use it on windows but it says secret phrase not specified and i have all set, so i dont know my mistake

EDIT:
Nevermind i get it i need to get my conf file on appdata
Yep - the default data directory is %APPDATA%\NxtMint

If you want to keep everything in one place, you can specify the application data directory on the command line.

For example, if you unpacked the zip into C:\NxtMint, then start it this way:
  java -Xmx256m -Dnxt.datadir="C:\NxtMint" -jar "C:\NxtMint\NxtMint-1.0.0.jar"

You should also set up logging.properties to control the output.  I forgot to include a sample in the first release, so I'll it on the forum.  If you set NxtMint logging to FINE, you will see the hashing rates every minute.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:13:36 am
I forgot to include a sample logging properties file for use with Java logging, so here it is.  Put it into the application data directory as logging.properties.

Code: [Select]
######################################
NxtMint Logging Configuration File                               #
#                                                                                      #
# Rename this file to logging.properties and place it in          #
# the NxtMint application directory.  Change the log             #
# file name as desired (java.util.logging.FileHandler.pattern) #
######################################

# Log to console and file
handlers = java.util.logging.FileHandler, java.util.logging.ConsoleHandler

# Default logging level (FINE, INFO, WARNING, SEVERE)
.level = SEVERE

# NxtMint logging level (FINE, INFO, WARNING, SEVERE)
org.ScripterRon.NxtMint.level = FINE

# NxtCore logging level (FINE, INFO, WARNING, SEVERE)
org.ScripterRon.NxtCore.level = INFO

# Create log file in temporary directory, accept FINE or higher messages,
# maximum file size is 500KB with a single file
java.util.logging.FileHandler.pattern = %t/NxtMint.log
java.util.logging.FileHandler.limit = 500000
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.level = FINE

# Limit the message that are printed on the console to FINE and above
java.util.logging.ConsoleHandler.level = FINE
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:15:48 am
Hmmm, needs Https support!
Why?  It doesn't send or receive confidential data.  The minting transaction is created and signed locally without any interaction with the server.  The signed transaction bytes are then sent to the server for broadcast.  Since these bytes will appear in the blockchain for all to see, it doesn't really make any sense to add the overhead of https.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:19:24 am
I think I've things set, but I do not know any of the possible currency codes.  Thousand thanks to ScripterRon for taking the time to build this.
The currency codes are listed on the Monetary System tab in the NRS UI.  For example, go to http://scripterron.dyndns.biz:7876 and login to the UI.  Then select the Monetary System tab on the left.  I've been mining EGOLD while testing out NxtMint.  Note that each minting transaction will cost you 1 NXT, so you need some NXT in your account before you can start minting.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 01:25:55 am
WHat are the result in term of speed?

Modern cpu can do 1-2Mh/s on keccak with the default minter.
How many this one do with cpu and gpu?
Here is an excerpt from the NxtMint log.  Workers 0-3 are using the CPU and worker 4 is using the GPU (NVIDIA GT 720).  If you have an AMD graphics card, you should get even better hash rates.  The GPU intensity determines how heavily the card is used (I have it set to 15 at the moment).  I have gotten rates as high as 16 MHash/s on my NVIDIA card but the video display becomes too sluggish for me to use it for anything else.  15 seems to be a good compromise but even then I get resource failures if I open a graphics-intensive application such as a browser.
Code: [Select]
08:03:06 INFO Main.main: Java Nxt Mint Version 1.0.0
08:03:06 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
08:03:06 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
08:03:06 INFO Main.main: Minting 25.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 4 CPU threads, 15 GPU intensity
08:03:06 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
08:03:07 FINE MintWorker.run: Worker 4 starting on counter 166
08:03:07 FINE MintWorker.run: Worker 1 starting on counter 166
08:03:07 FINE MintWorker.run: Worker 0 starting on counter 166
08:03:07 FINE MintWorker.run: Worker 3 starting on counter 166
08:03:07 FINE MintWorker.run: Worker 2 starting on counter 166
08:04:07 FINE MintWorker.run: Worker 1 hash rate 1100 KH/s
08:04:07 FINE MintWorker.run: Worker 4 hash rate 12551 KH/s
08:04:07 FINE MintWorker.run: Worker 3 hash rate 1140 KH/s
08:04:07 FINE MintWorker.run: Worker 0 hash rate 1125 KH/s
08:04:07 FINE MintWorker.run: Worker 2 hash rate 1120 KH/s
08:05:07 FINE MintWorker.run: Worker 3 hash rate 1144 KH/s
08:05:07 FINE MintWorker.run: Worker 1 hash rate 1108 KH/s
08:05:07 FINE MintWorker.run: Worker 0 hash rate 1131 KH/s
08:05:07 FINE MintWorker.run: Worker 4 hash rate 12614 KH/s
08:05:07 FINE MintWorker.run: Worker 2 hash rate 1130 KH/s
08:06:07 FINE MintWorker.run: Worker 0 hash rate 1142 KH/s
08:06:07 FINE MintWorker.run: Worker 4 hash rate 12734 KH/s
08:06:07 FINE MintWorker.run: Worker 1 hash rate 1118 KH/s
08:06:07 FINE MintWorker.run: Worker 3 hash rate 1151 KH/s
08:06:07 FINE MintWorker.run: Worker 2 hash rate 1141 KH/s
08:07:07 FINE MintWorker.run: Worker 1 hash rate 1116 KH/s
08:07:07 FINE MintWorker.run: Worker 4 hash rate 12720 KH/s
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 02:13:29 am
why not wait with this until tomorrow when we are all awake in europe?
 ;)
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 02:16:13 am
I got an error as following. Seems that I need to compile it myself  ???

Code: [Select]
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/ScripterR
on/NxtMint/Main : Unsupported major.minor version 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 02:39:43 am
I got an error as following. Seems that I need to compile it myself  ???
What Java runtime is installed?  You must have Java 8 since I use language features that are not available in earlier versions.  You won't be able to recompile it on an earlier JDK since that compiler won't recognize the new language constructs.

I'll update the README to make the requirement more prominent. 
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 02:41:20 am
Thank YOU!! been waiting for this!  :)
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 02:48:36 am
I got an error as following. Seems that I need to compile it myself  ???
What Java runtime is installed?  You must have Java 8 since I use language features that are not available in earlier versions.  You won't be able to recompile it on an earlier JDK since that compiler won't recognize the new language constructs.

I'll update the README to make the requirement more prominent.

Thanks for the quick response. I installed Java 8. Could you please write a detailed guide for us to compile or install the program?
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 02:58:31 am
I think we need a easy mint.bat to help us computer dumbs.
I have no clue how to run .jar extension  ;D

I better go grab those dusty miners out of my closet and connect them up!
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:00:04 am
Thanks for the quick response. I installed Java 8. Could you please write a detailed guide for us to compile or install the program?
I updated the header post with the steps needed to install and run the program.  Let me know if there are any steps missing or unclear.

The README has the build steps.  I use Maven which automates everything, including downloading any required dependencies.  The only manual step is obtaining Aparapi since it is not in the Maven central repository.  If you want to build NxtMint, you will need to install the aparapi.jar file in your local Maven repository.  This is done using the mvn install:install-file target.  I'll add the complete command syntax to the README.
Title: Re: NxtMint Java minter
Post by: colin012 on January 17, 2015, 03:01:43 am
I think we need a easy mint.bat to help us computer dumbs.
I have no clue how to run .jar extension  ;D

We can package a run.bat and run.sh file like NXT does so you just have to double click something and it will run for you. (NXT used to run out of a jar too if I am remembering right).
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:03:24 am
I think we need a easy mint.bat to help us computer dumbs.
I have no clue how to run .jar extension  ;D
You should be able to just double-click the jar file.  If that doesn't work, use a text editor to create mint.bat and enter the following command:
    java -Xmx256m -jar NxtMint-1.0.0.jar

I'll add mint.bat and mint.sh files for the next release.
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 03:18:00 am

I just installed JDK 1.8, and got a new error.

Code: [Select]
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'

has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:19:23 am
Got a real-time test of the minting queuing (NRS took 25 minutes to find a block from 9:06 to 9:31).  Had me worried because I thought NxtMint was dropping transactions, but the backlog cleared once NRS started confirming transactions again.

Code: [Select]
9:06:52 INFO MintWorker.run: Worker 0 found solution for counter 169
09:06:52 FINE Mint.mint: Solution for counter 169 added to pending queue
09:06:53 INFO Mint.mint: Solution for counter 169 submitted
09:17:09 INFO MintWorker.run: Worker 4 found solution for counter 170
09:17:09 FINE Mint.mint: Solution for counter 170 added to pending queue
09:23:06 INFO MintWorker.run: Worker 4 found solution for counter 171
09:23:11 FINE Mint.mint: Solution for counter 171 added to pending queue
09:31:13 INFO Mint.mint: Solution for counter 170 submitted
09:45:47 INFO Mint.mint: Solution for counter 171 submitted
09:57:05 FINE Mint.mint: Solution for counter 172 added to pending queue
09:57:05 INFO Mint.mint: Solution for counter 172 submitted
Title: Re: NxtMint Java minter
Post by: Djinou94 on January 17, 2015, 03:20:13 am
Minting with this minter is better? faster?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:25:27 am

I just installed JDK 1.8, and got a new error.

Code: [Select]
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'

has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
What were you doing when you got that error?  NxtMint requires 1.8, so that shouldn't be the source of the error.  What is displayed for the command:  java -version
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 03:30:18 am
java -Xmx256m -jar Nxt-1.0.0.jar
Error: Unable to access jarfile Nxt-1.0.0.jar
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 03:37:50 am

I just installed JDK 1.8, and got a new error.

Code: [Select]
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'

has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
What were you doing when you got that error?  NxtMint requires 1.8, so that shouldn't be the source of the error.  What is displayed for the command:  java -version

Done.

'java -version' reported the same error.

I installed JDK 1.8 when Nxt is running. So I think I need to reboot computer and reinstall JDK 1.8. After that and reinstall, everything goes well.

Thanks.
Title: Re: NxtMint Java minter
Post by: colin012 on January 17, 2015, 03:45:53 am
java -Xmx256m -jar Nxt-1.0.0.jar
Error: Unable to access jarfile Nxt-1.0.0.jar

I think he meant NxtMint-1.0.0.jar rather than Nxt-1.0.0.jar. Try that instead.
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 04:16:45 am
edit: I forgot to copy to application data.

SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException:Secret phrase not specified
at org.ScripterRon.NxtMint.Main.main<Main.java:186>

I did provide the secret phrase. and I did copy and rename to NxtMint.conf
currency=EGOLD
units=100
cpuThreads=1
gpuIntensity=0
enableGUI=true
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:26:10 am
Done.

'java -version' reported the same error.

I installed JDK 1.8 when Nxt is running. So I think I need to reboot computer and reinstall JDK 1.8. After that and reinstall, everything goes well.

Thanks.
That makes sense.  The java.dll would have been in use and the installer couldn't replace it with the new version.  Thus the mismatch error.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:28:38 am
I think he meant NxtMint-1.0.0.jar rather than Nxt-1.0.0.jar. Try that instead.
Whoops - NxtMint-1.0.0.jar is right.  I'll modify the post.
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 04:31:30 am
one last problem and i'll graduate from running the java minter!  ;D

the program is running now but I can't tell if its doing any calculations/mhs
the log box is just empty.

is this normal? im using gpu and I have aparapi in the nxtmint directory.
Title: Re: NxtMint Java minter
Post by: jasemoney on January 17, 2015, 04:36:46 am
edit: I forgot to copy to application data.

SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException:Secret phrase not specified
at org.ScripterRon.NxtMint.Main.main<Main.java:186>

I did provide the secret phrase. and I did copy and rename to NxtMint.conf
currency=EGOLD
units=100
cpuThreads=1
gpuIntensity=0
enableGUI=true

ahh which data directory?? same trouble.  all my nxt is in a folder on my desktop. copied everything aparapi and nxtminet there. changed logger and conf, and copied them into conf.. still actin weird

*edit ya didnt realize it made a folder nxtmint in %appdata%
not on to next bit, figuring out the PATH
Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 04:43:28 am
one last problem and i'll graduate from running the java minter!  ;D

the program is running now but I can't tell if its doing any calculations/mhs
the log box is just empty.

is this normal? im using gpu and I have aparapi in the nxtmint directory.
my computer is heating up and fan running louder, it should be running but all I see is blank box.
(http://oi61.tinypic.com/5aq6ub.jpg)

ahh which data directory?? same trouble.  all my nxt is in a folder on my desktop. copied everything aparapi and nxtminet there. changed logger and conf, and copied them into conf.. still actin weird

found this in readme.md
- Linux: user-home/.NxtMint      
      - Mac: user-home/Library/Application Support/NxtMint   
      
- Windows: user-home\AppData\Roaming\NxtMint
Title: Re: NxtMint Java minter
Post by: Admiral Ackbar on January 17, 2015, 04:43:38 am
I am on Linux 64bit. CPU hashing works. Now I am trying to get the AMD started. Got the AMD SDK and aparapi. But I get this:

11:36:01 SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load aparapi native library aparapi_x86_64 or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD_LIBRARY_PATH (linux).

Seems something is not in the right folder. Can you give a hint which file needs to be where?
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 04:50:02 am
one last problem and i'll graduate from running the java minter!  ;D

the program is running now but I can't tell if its doing any calculations/mhs
the log box is just empty.

is this normal? im using gpu and I have aparapi in the nxtmint directory.

I think you may need to download https://github.com/ScripterRon/NxtMint/blob/master/sample.logging.properties

and
Code: [Select]
Copy sample.logging.properties to the application data directory and rename it to logging.properties.

BTW, could the log show how many hashes have been calculated as that in the original CPU mint.exe ?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:51:10 am
edit: I forgot to copy to application data.

SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException:Secret phrase not specified
at org.ScripterRon.NxtMint.Main.main<Main.java:186>

I did provide the secret phrase. and I did copy and rename to NxtMint.conf
currency=EGOLD
units=100
cpuThreads=1
gpuIntensity=0
enableGUI=true

ahh which data directory?? same trouble.  all my nxt is in a folder on my desktop. copied everything aparapi and nxtminet there. changed logger and conf, and copied them into conf.. still actin weird
The default application data directory on Windows is C:\Users\user-name\AppData\Roaming\NxtMint (this is a Microsoft convention since they want to separate shared program data and user-specific data).  However, you can put everything into the same directory by specifying -Dnxt.datadir=directory-path on the Java command line where directory-path is the directory where you installed NxtMint.

I generally prefer the separation of programs and data since that allows me to install new versions of a program in a separate directory and still have access to the program data without copying files back and forth between versions.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:55:46 am
one last problem and i'll graduate from running the java minter!  ;D

the program is running now but I can't tell if its doing any calculations/mhs
the log box is just empty.

is this normal? im using gpu and I have aparapi in the nxtmint directory.
Did you create logging.properties in the application data directory?  The default logging.properties does not log debug (FINE) messages.

I forgot to include a sample in the release archive.  I posted the sample in an earlier post or you can get it from GitHub (http://github.com/ScripterRon/NxtMint) and look for sample.logging.properties.  Paste it into a text editor and save it as logging.properties.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 05:04:17 am
I am on Linux 64bit. CPU hashing works. Now I am trying to get the AMD started. Got the AMD SDK and aparapi. But I get this:

11:36:01 SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load aparapi native library aparapi_x86_64 or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD_LIBRARY_PATH (linux).

Seems something is not in the right folder. Can you give a hint which file needs to be where?
Are the files in one of the directories specified by the LD_LIBRARY_PATH environment variable?  I don't have a Linux desktop system to try this out on.  You could also try setting the Java library path to point to the directory containing the aparapi and opencl library files.  This is done by specifying -Djava.library.path=<library-directory> on the Java command line when you start NxtMint.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 05:08:54 am
BTW, could the log show how many hashes have been calculated as that in the original CPU mint.exe ?
Sure - the worker hash count since the last solution is what is used to compute the hash rate, so I can easily add that to the log line.  In addition, the GUI display contains the total number of hashes performed by the worker that found the solution.
Title: Re: NxtMint Java minter
Post by: jasemoney on January 17, 2015, 05:10:59 am
path stuff isnt going so well for me, i put aparapi files, opencl.dll, and opencl64.dll like in a bunch of spots. and changed my PATH user variable to the nextmint folder where everything is.
I even changed the run.bat to this:
Quote
java -Xmx256m -jar NxtMint-1.0.0.jar
-Djava.library.path=C:\nxtminter
pause
i suck at this!

Title: Re: NxtMint Java minter
Post by: qqNxt on January 17, 2015, 05:18:12 am
all working now! thanks!

@jasemoney I put aparapi files all in the nxtmint directory. like NxtMint-1.0.0\aparapi_x86.dll
and this for the mint.bat
java -Xmx256m -jar NxtMint-1.0.0.jar

these here
\AppData\Roaming\NxtMint\NxtMint.conf
\AppData\Roaming\NxtMint\logging.properties

hope this helps.

Title: Re: NxtMint Java minter
Post by: Admiral Ackbar on January 17, 2015, 05:22:32 am
I am on Linux 64bit. CPU hashing works. Now I am trying to get the AMD started. Got the AMD SDK and aparapi. But I get this:

11:36:01 SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load aparapi native library aparapi_x86_64 or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD_LIBRARY_PATH (linux).

Seems something is not in the right folder. Can you give a hint which file needs to be where?
Are the files in one of the directories specified by the LD_LIBRARY_PATH environment variable?  I don't have a Linux desktop system to try this out on.  You could also try setting the Java library path to point to the directory containing the aparapi and opencl library files.  This is done by specifying -Djava.library.path=<library-directory> on the Java command line when you start NxtMint.


Yes, I tried them all in one folder and also copied them around like the other cell mates here. No luck.
Can you name the specific files it is looking for? For example I do not have a opencl.so. They are named differently

/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libamdhsasc64.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libamdocl64.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libGLEW.a
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libGLEW.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libglut.a
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libglut.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libOpenCL.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libOpenCL.so.1
Title: Re: NxtMint Java minter
Post by: jasemoney on January 17, 2015, 05:55:43 am
ok so I updated to JDK 8 latest version from Java, workes great  now and now asking for silly .dlls anymore ;)
Title: Re: NxtMint Java minter
Post by: manrus on January 17, 2015, 10:21:50 am
Works fine. Thanks ;)
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 10:42:32 am
if my gpu usage is 99%, my GPU is succesfully calculating hashes, right?

Just wondering because i set units=1 for EGOLD for testing, and I only minted 2 EGOLD in like 10 mintes...

edit: Only 217MH in 8 mintes.
Title: Re: NxtMint Java minter
Post by: manrus on January 17, 2015, 10:46:23 am
if my gpu usage is 99%, my GPU is succesfully calculating hashes, right?

Just wondering because i set units=1 for EGOLD for testing, and I only minted 2 EGOLD in like 10 mintes...

My gpu 70-80% load. In last 45 min found 20 units egold. [GPU - Intel Iris Pro 5200]

first 10 units found at 4763 MH
second 10 units at 12110 MH
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 11:03:12 am
if my gpu usage is 99%, my GPU is succesfully calculating hashes, right?

Just wondering because i set units=1 for EGOLD for testing, and I only minted 2 EGOLD in like 10 mintes...

My gpu 70-80% load. In last 45 min found 20 units egold. [GPU - Intel Iris Pro 5200]

first 10 units found at 4763 MH
second 10 units at 12110 MH

Hmm something looks not right with my minter. You have ca. 6 MH/s, while I'm at 0,45 MH/s
With an AMD 8870M

Although I get no error, GUI comes up and I occasionally mint something
Title: Re: NxtMint Java minter
Post by: manrus on January 17, 2015, 11:13:45 am
Hmm something looks not right with my minter. You have ca. 6 MH/s, while I'm at 0,45 MH/s
With an AMD 8870M

Although I get no error, GUI comes up and I occasionally mint something

Set intensity lower. Big value make more errors.
Title: Re: NxtMint Java minter
Post by: crimi on January 17, 2015, 01:06:51 pm
Nice work. Much fun.

With r290x it is cutting trough EGOLD like butter. 35-40 MH/s with a little tweaking and cpu mining aswell around 60  MH/s :D Intensity 14 is limit for me... further bluescreen ^^

Sat Jan 17 14:32:23 CET 2015 Units: 20.0 Hashes: 1110 MH
Sat Jan 17 14:32:29 CET 2015 Units: 20.0 Hashes: 227 MH
Sat Jan 17 14:39:05 CET 2015 Units: 20.0 Hashes: 15952 MH
Sat Jan 17 14:41:13 CET 2015 Units: 20.0 Hashes: 5160 MH
Sat Jan 17 14:45:08 CET 2015 Units: 20.0 Hashes: 9473 MH
Sat Jan 17 14:45:33 CET 2015 Units: 20.0 Hashes: 1029 MH
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 02:48:03 pm
path stuff isnt going so well for me, i put aparapi files, opencl.dll, and opencl64.dll like in a bunch of spots. and changed my PATH user variable to the nextmint folder where everything is.
I even changed the run.bat to this:
Quote
java -Xmx256m -jar NxtMint-1.0.0.jar
-Djava.library.path=C:\nxtminter
pause
i suck at this!
All options must be specified before -jar since anything after that is treated as program arguments.  Try:
    java -Xmx256m -Djava.library.path=C:\nxtminter -jar NxtMint-1.0.0.jar

However, since you are on Windows, it should work if you place runtime libraries in C:\nxtminter and make sure that is the current directory when you start NxtMint (Windows looks in the current directory before searching the PATH).
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 02:55:02 pm
I am on Linux 64bit. CPU hashing works. Now I am trying to get the AMD started. Got the AMD SDK and aparapi. But I get this:

11:36:01 SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load aparapi native library aparapi_x86_64 or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD_LIBRARY_PATH (linux).

Seems something is not in the right folder. Can you give a hint which file needs to be where?
Are the files in one of the directories specified by the LD_LIBRARY_PATH environment variable?  I don't have a Linux desktop system to try this out on.  You could also try setting the Java library path to point to the directory containing the aparapi and opencl library files.  This is done by specifying -Djava.library.path=<library-directory> on the Java command line when you start NxtMint.


Yes, I tried them all in one folder and also copied them around like the other cell mates here. No luck.
Can you name the specific files it is looking for? For example I do not have a opencl.so. They are named differently

/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libamdhsasc64.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libamdocl64.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libGLEW.a
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libGLEW.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libglut.a
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libglut.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libOpenCL.so
/opt/AMDAPPSDK-3.0-0-Beta/lib/x86_64/libOpenCL.so.1
I'm guessing it wants libOpenCL.so, but you should copy all the files in lib/x86_64.  Did you try setting the Java library path?
    java -Xmx256m -Djava.library.path="/opt/AMDAPPSDK-3.0-0-Beta/lib/X86_64:<directory containing libaparapi_x86_64.so> -jar NxtMint-1.0.0.jar

I don't have a Linux system to test this on.
Title: Re: NxtMint Java minter
Post by: Admiral Ackbar on January 17, 2015, 02:55:58 pm
I am on Linux 64bit. CPU hashing works. Now I am trying to get the AMD started. Got the AMD SDK and aparapi. But I get this:

11:36:01 SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load aparapi native library aparapi_x86_64 or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD_LIBRARY_PATH (linux).

Seems something is not in the right folder. Can you give a hint which file needs to be where?
Are the files in one of the directories specified by the LD_LIBRARY_PATH environment variable?  I don't have a Linux desktop system to try this out on.  You could also try setting the Java library path to point to the directory containing the aparapi and opencl library files.  This is done by specifying -Djava.library.path=<library-directory> on the Java command line when you start NxtMint.


I got it to work somehow by pushing every possible file into every possible folder.
It starts now without error message for the GPU but I don't think it works correctly. It appears to still run on CPU (which is set to 0 threads). The CPU usage is high. No speed improvement visible.
In a mixed mode (CPU and GPU) the worker with the highest number (presumably the GPU) gets less and less hashes the more CPU cores I activate.
Any idea how to check the GPU is crunching?


edit: oops, our posts just criss crossed

2nd edit: I threw everything in the OpenCl installation and started it successfully with java -Xmx256m -Djava.library.path=/blablabla.../AMDAPPSDK-3.0-0-Beta/lib -jar NxtMint-1.0.0.jar
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 02:59:02 pm
if my gpu usage is 99%, my GPU is succesfully calculating hashes, right?

Just wondering because i set units=1 for EGOLD for testing, and I only minted 2 EGOLD in like 10 mintes...

edit: Only 217MH in 8 mintes.
The hash count for a solution is just the number of hashes done by the worker that found the solution.  The log file displays the hash rate for each worker every minute (make sure you created logging.properties in the application data directory so the debug messages are logged).
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:02:48 pm
Nice work. Much fun.

With r290x it is cutting trough EGOLD like butter. 35-40 MH/s with a little tweaking and cpu mining aswell around 60  MH/s :D Intensity 14 is limit for me... further bluescreen ^^

Sat Jan 17 14:32:23 CET 2015 Units: 20.0 Hashes: 1110 MH
Sat Jan 17 14:32:29 CET 2015 Units: 20.0 Hashes: 227 MH
Sat Jan 17 14:39:05 CET 2015 Units: 20.0 Hashes: 15952 MH
Sat Jan 17 14:41:13 CET 2015 Units: 20.0 Hashes: 5160 MH
Sat Jan 17 14:45:08 CET 2015 Units: 20.0 Hashes: 9473 MH
Sat Jan 17 14:45:33 CET 2015 Units: 20.0 Hashes: 1029 MH
Great!  Guess I need to work on a GPU version for Scrypt coins since you are going to corner the EGOLD market :)
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 03:04:01 pm
if my gpu usage is 99%, my GPU is succesfully calculating hashes, right?

Just wondering because i set units=1 for EGOLD for testing, and I only minted 2 EGOLD in like 10 mintes...

edit: Only 217MH in 8 mintes.
The rate is MH/sec and is the average since the last successful minting transaction.  However, 217 MH/s is pretty low.  What graphics card do you have?  NVIDIA is usually slower than AMD for integer operations and the older NVIDIA cards are even slower (4-digit series are older than 3-digit series, which is kind of confusing).

217 MH/s for egold would be pretty nice ;)
it's all good now, I'm crunching along with 18 MH/s, probably set the intensity too high before.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:12:54 pm
I got it to work somehow by pushing every possible file into every possible folder.
It starts now without error message for the GPU but I don't think it works correctly. It appears to still run on CPU (which is set to 0 threads). The CPU usage is high. No speed improvement visible.
In a mixed mode (CPU and GPU) the worker with the highest number (presumably the GPU) gets less and less hashes the more CPU cores I activate.
Any idea how to check the GPU is crunching?


edit: oops, our posts just criss crossed

2nd edit: I threw everything in the OpenCl installation and started it successfully with java -Xmx256m -Djava.library.path=/blablabla.../AMDAPPSDK-3.0-0-Beta/lib -jar NxtMint-1.0.0.jar
Aparapi and OpenCL need CPU resources to move data to/from GPU memory and to initiate each kernel instance.  So pushing the CPU load up will actually reduce the GPU throughput since OpenCL needs to wait for time on the CPU.  The best method is to start with cpuThreads=0 and then adjust gpuIntensity to get the best GPU rate without errors (GPU throughput will actually decline at some point as the cores become saturated, eventually failling due to lack of resources).  Once you have done this, you can then start to add CPU threads until you notice a degradation in GPU throughput.

As far as the GPU not being used at all, look at the log file.  The GPU worker will fallback to CPU hashing if the GPU fails.  This happens if the OpenCL environment cannot be initialized, GPU resources are not available or become unavailable during hashing (for example, a graphics-intensive program is started while NxtMint is running).  The CPU workers are started first, then the GPU worker is started.  So, if cpuThreads=4, then workers 0-3 are CPU and worker 4 is GPU.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 03:22:35 pm
217 MH/s for egold would be pretty nice ;)
it's all good now, I'm crunching along with 18 MH/s, probably set the intensity too high before.
Yep - I misread your append.  Out of curiousity, is that an NVIDIA or an AMD card?  I'd like to get an idea of the differences between the various cards.  Since the GPU kernel program is built just once and then reused for each kernel instance, Java vs native shouldn't be an issue for GPU hashing.  CPU hashing benefits from JIT although a native implementation would certainly be faster (but I don't know what the performance difference actually is).
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 03:27:28 pm
217 MH/s for egold would be pretty nice ;)
it's all good now, I'm crunching along with 18 MH/s, probably set the intensity too high before.
Yep - I misread your append.  Out of curiousity, is that an NVIDIA or an AMD card?  I'd like to get an idea of the differences between the various cards.  Since the GPU kernel program is built just once and then reused for each kernel instance, Java vs native shouldn't be an issue for GPU hashing.  CPU hashing benefits from JIT although a native implementation would certainly be faster (but I don't know what the performance difference actually is).

GPU is 8870m AMD, on a samsung chronos 7 notebook.
GPU does 17 MH/s on a slight overclock 900/1300
Title: Re: NxtMint Java minter
Post by: lopalcar on January 17, 2015, 04:13:43 pm
Any ways to enable more than one GPU in the same machine? I have one double core GPU from the scrypt mining times and need to heat a bit the room :)
And why the GPU core in use isn't at 100% even using 30 intensity?, I checked with 25 and 30 but this isn't increassing the usage :S

anyways, post your nxt address and will send you some EGOLD for your work! Thanks for the miner
Title: Re: NxtMint Java minter
Post by: Pfool on January 17, 2015, 04:20:10 pm
Thank you ScripterRon!

I was trying to make a GPU miner with aparapi like you but only achieve to get a 2.2 MH/s speed. I have integrated your kernel in my miner and I am now at 145 MH/s with my HD 7950 @ 950MHz. I am running your kernel with an equivalent intensity of 256.

Good job!
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 04:21:14 pm
I remote login to my computer with GPU, and then shutdown the NxtMint to change some parameters. I got the following error when I restart it again. Can I remotely start NxtMint with GPU?

Code: [Select]
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000005ee0e685, pid=2220, tid=6868
#
# JRE version: Java(TM) SE Runtime Environment (8.0_25-b18) (build 1.8.0_25-b18)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x12e685]
Title: Re: NxtMint Java minter
Post by: lopalcar on January 17, 2015, 04:23:35 pm
Any ways to enable more than one GPU in the same machine? I have one double core GPU from the scrypt mining times and need to heat a bit the room :)
And why the GPU core in use isn't at 100% even using 30 intensity?, I checked with 25 and 30 but this isn't increassing the usage :S

anyways, post your nxt address and will send you some EGOLD for your work! Thanks for the miner

Just realized that maybe the cause to not use more than 80% of GPU could be a bottleneck with the CPU cause only use one thread, and since I have 6 cores-> 12 threads one of the threads get full of work quite easy...
Do you have planed making the process which feeds the GPU with the CPU multicore? Or should I disable hyperthreathing :P
Title: Re: NxtMint Java minter
Post by: crimi on January 17, 2015, 04:40:44 pm
Thank you ScripterRon!

I was trying to make a GPU miner with aparapi like you but only achieve to get a 2.2 MH/s speed. I have integrated your kernel in my miner and I am now at 145 MH/s with my HD 7950 @ 950MHz. I am running your kernel with an equivalent intensity of 256.

Good job!
Thanks for the tip with intensity of 256, long ago i did mine any coin. I was using 10-14 and got 55 MH/s now i have 245 MH/s @r290x tri oc water cooled. 512 even better 265 MH/s.

Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:41:36 pm
Any ways to enable more than one GPU in the same machine? I have one double core GPU from the scrypt mining times and need to heat a bit the room :)
And why the GPU core in use isn't at 100% even using 30 intensity?, I checked with 25 and 30 but this isn't increassing the usage :S

anyways, post your nxt address and will send you some EGOLD for your work! Thanks for the miner
I'll look into that.  I don't have the hardware, so I'll need somebody to test it for me once I get it coded.  Aparapi just added support for enumerating devices, so it should be interesting times :)

Nxt account: NXT-XM86-4ZNA-65L5-CDWUE
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 04:55:32 pm
I remote login to my computer with GPU, and then shutdown the NxtMint to change some parameters. I got the following error when I restart it again. Can I remotely start NxtMint with GPU?

Code: [Select]
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000005ee0e685, pid=2220, tid=6868
#
# JRE version: Java(TM) SE Runtime Environment (8.0_25-b18) (build 1.8.0_25-b18)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x12e685]
That is an error in the JVM itself.  The type of login really shouldn't make a difference unless it has something to do with login access permissions or stdin/stdout/stderr redirection.  I don't know if an error in the Aparapi/OpenCL JNI code would show up as a JVM error.  Since it points to jvm.dll, that doesn't seem like the problem.  If the problem is repeatable, you could try disabling GPU hashing to see if the problem goes away.
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 17, 2015, 05:00:03 pm
I remote login to my computer with GPU, and then shutdown the NxtMint to change some parameters. I got the following error when I restart it again. Can I remotely start NxtMint with GPU?

Code: [Select]
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000005ee0e685, pid=2220, tid=6868
#
# JRE version: Java(TM) SE Runtime Environment (8.0_25-b18) (build 1.8.0_25-b18)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x12e685]
That is an error in the JVM itself.  The type of login really shouldn't make a difference unless it has something to do with login access permissions or stdin/stdout/stderr redirection.  I don't know if an error in the Aparapi/OpenCL JNI code would show up as a JVM error.  Since it points to jvm.dll, that doesn't seem like the problem.  If the problem is repeatable, you could try disabling GPU hashing to see if the problem goes away.

It goes well if I disable GPU. It may be system restricted remotely access GPU, because I can't open NVIDIA control panel, which shows me it can't be shown from remote client.

Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 05:06:37 pm
Just realized that maybe the cause to not use more than 80% of GPU could be a bottleneck with the CPU cause only use one thread, and since I have 6 cores-> 12 threads one of the threads get full of work quite easy...
Do you have planed making the process which feeds the GPU with the CPU multicore? Or should I disable hyperthreathing :P
It could just be that Aparapi/OpenCL isn't fast enough to saturate your GPU.  The GPU workload is divided into groups based on the number of GPU processing units on the card.  As each group completes, Aparapi starts the next group.  Once all groups have finished, Aparapi retrieves the data from GPU memory and restarts the Java thread.  There isn't really anything that multi-threading could help with since the data is fairly small (40 bytes of input and 32 bytes of output plus some control fields).  The biggest chunk is the kernel code which needs to be loaded into GPU memory.  I don't have any control over the internal operation of Aparapi, so I can't change anything there.  Increasing gpuIntensity will increase the number of kernel executions before control returns to Java, so that is the best way to increase GPU utilization.
Title: Re: NxtMint Java minter
Post by: achim on January 17, 2015, 05:39:49 pm
217 MH/s for egold would be pretty nice ;)
it's all good now, I'm crunching along with 18 MH/s, probably set the intensity too high before.
Yep - I misread your append.  Out of curiousity, is that an NVIDIA or an AMD card?  I'd like to get an idea of the differences between the various cards.  Since the GPU kernel program is built just once and then reused for each kernel instance, Java vs native shouldn't be an issue for GPU hashing.  CPU hashing benefits from JIT although a native implementation would certainly be faster (but I don't know what the performance difference actually is).

GPU is 8870m AMD, on a samsung chronos 7 notebook.
GPU does 17 MH/s on a slight overclock 900/1300

cool, with intensity=512 I now get 29 MH/s
Title: Re: NxtMint Java minter
Post by: jasemoney on January 17, 2015, 06:57:14 pm
I just upped the intensity as it wasnt fully saturated was using like 75%, for 10 I was getting low 40Mhash/s now at 350 im getting 180Mhash/s now its over 90% utilized 73*C at 2.8k fan rpm. FYI the kernel uses very little gpu memory, about 20mb dynamic and 20 mb dedicated ;)
good luck all!

*edit, noted issue.. if solving faster than blocks are being found for nxt if a que forms it doesnt seem to recover, it will just stack addition aolutions into a que and not get around to sending them once  a block is found.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 10:18:25 pm
I just upped the intensity as it wasnt fully saturated was using like 75%, for 10 I was getting low 40Mhash/s now at 350 im getting 180Mhash/s now its over 90% utilized 73*C at 2.8k fan rpm. FYI the kernel uses very little gpu memory, about 20mb dynamic and 20 mb dedicated ;)
good luck all!

*edit, noted issue.. if solving faster than blocks are being found for nxt if a que forms it doesnt seem to recover, it will just stack addition aolutions into a que and not get around to sending them once  a block is found.
I had a queue build up last night and it cleared as blocks were found.  Only 1 transaction can be submitted per block.  Do you still have the log so you can match solution timestamps to Nxt block timestamps? 
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 17, 2015, 10:36:02 pm
Queuing appears to be working.  I mined an easy coin and built up a queue.  It cleared as blocks were found.  Note that I wait 30 seconds between polls when waiting for the next block to be generated (don't want to overload the server with nuisance API requests)
Code: [Select]
----> Block 335535 generated at 5:16 <----
05:23:15 INFO MintWorker.run: Worker 2 found solution for counter 1
05:23:15 FINE Mint.mint: Solution for counter 1 added to pending queue
05:23:15 INFO Mint.mint: Solution for counter 1 submitted
05:23:17 FINE Mint.mint: Solution for counter 2 added to pending queue
05:23:47 FINE Mint.mint: Solution for counter 3 added to pending queue
05:25:48 FINE Mint.mint: Solution for counter 4 added to pending queue
----> Block 335536 generated at 5:25 <----
05:25:48 INFO Mint.mint: Solution for counter 2 submitted
----> Block 335537 generated at 5:25 <----
05:26:18 INFO Mint.mint: Solution for counter 3 submitted
05:26:48 FINE Mint.mint: Solution for counter 5 added to pending queue
----> Block 335538 generated at 5:27 <----
05:26:49 INFO Mint.mint: Solution for counter 4 submitted
05:28:19 FINE Mint.mint: Solution for counter 6 added to pending queue
----> Block 335539 generated at 5:27 <----
05:28:19 INFO Mint.mint: Solution for counter 5 submitted
Title: Re: NxtMint Java minter
Post by: jasemoney on January 18, 2015, 01:12:12 am
Thanks for reply, sorry i didnt save it. I could make a new one by submitting for SILVR hehe. If it happens again ill post the log but I'm on EGOLD for the moment.

Side thoughts: what happens when the POW is over for these coins? minting up to 1/1000 at a time, I dont see EGOLD or SILVR lasting more than 10-20 days to run through the POW phase.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 02:19:50 am
Thanks for reply, sorry i didnt save it. I could make a new one by submitting for SILVR hehe. If it happens again ill post the log but I'm on EGOLD for the moment.

Side thoughts: what happens when the POW is over for these coins? minting up to 1/1000 at a time, I dont see EGOLD or SILVR lasting more than 10-20 days to run through the POW phase.
SILVR will go even faster shortly - I'm testing the GPU version of SHA-256 at the moment :)

I suppose coins will be created with greater difficulties.  I think we are in sandbox mode at the moment, just building sand castles to see what happens.
Title: Re: NxtMint Java minter
Post by: MAMLCOM on January 18, 2015, 02:34:53 am
Why it's say.. currency code is not valid
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 02:51:14 am
Why it's say.. currency code is not valid
What currency code is not valid?  Did you update NxtMint.conf with a valid currency?  Is NxtMint.conf in the application data directory?
Title: Re: NxtMint Java minter
Post by: MAMLCOM on January 18, 2015, 02:59:06 am
Why it's say.. currency code is not valid
What currency code is not valid?  Did you update NxtMint.conf with a valid currency?  Is NxtMint.conf in the application data directory?

SEVERE Main.main: Exception during program initialization
java.lang.illegalArgumentException:Currency code is not valid

That miner said... I did update NxtMint.conf with currency EGOLD.. and path i think it's right..
Title: Re: NxtMint Java minter
Post by: egold on January 18, 2015, 03:42:31 am
Thanks for reply, sorry i didnt save it. I could make a new one by submitting for SILVR hehe. If it happens again ill post the log but I'm on EGOLD for the moment.

Side thoughts: what happens when the POW is over for these coins? minting up to 1/1000 at a time, I dont see EGOLD or SILVR lasting more than 10-20 days to run through the POW phase.

EGOLD POW phase will last much longer, you should check EGOLD properties :)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 04:07:29 am
SEVERE Main.main: Exception during program initialization
java.lang.illegalArgumentException:Currency code is not valid

That miner said... I did update NxtMint.conf with currency EGOLD.. and path i think it's right..
It sounds like the currency code is not set in NxtMint.conf.

What operating system are you on?  What directory contains NxtMint.conf?
Title: Re: NxtMint Java minter
Post by: MAMLCOM on January 18, 2015, 04:16:57 am
I dont know.. every time i change NxtMint.conf.. It's always false, like that error..
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 04:13:18 pm
I dont know.. every time i change NxtMint.conf.. It's always false, like that error..
I need to know the operating system (Windows, Mac, Linux) and the name of the directory containing NxtMint.conf.  Also, post NxtMint.conf so I can look at it (blank out your secret phrase)
Title: Re: NxtMint Java minter
Post by: Hachoir on January 18, 2015, 05:02:34 pm
Hi I got the minter to work for CPU minting but not for GPU minting, the aparapi installation doesn't work when I type the command "java -jar arapapi.jar", I get the message "no main manifest attribute". So I found an .exe installer and proceeded to execute it. Still doesn't work when I run the minter. I obtained the Opencl.dll designed for my graphics card and copied it in the NxtMint directory. What's left ?
Title: Re: NxtMint Java minter
Post by: colin012 on January 18, 2015, 05:14:22 pm
I have talked with Ron about setting up encrypted password storage and it looks like I will be working on that feature while he focuses his efforts on the core of the minter.

Here are some things I will include:

Please note that the 2FA is the lowest priority item on the list as it is pretty much only for the hyper paranoid.

This code will be public domain and may he used for other NXT security implementations. In fact, I will even reward STNLC to anyone who can implant it for general use with NXT to pretty much eliminate use of passwords to log in all together (except for in encrypted form) and add 2FA to general NXT login. (Nxt KeyStash is a likely candidate).
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 05:43:53 pm
Hi I got the minter to work for CPU minting but not for GPU minting, the aparapi installation doesn't work when I type the command "java -jar arapapi.jar", I get the message "no main manifest attribute". So I found an .exe installer and proceeded to execute it. Still doesn't work when I run the minter. I obtained the Opencl.dll designed for my graphics card and copied it in the NxtMint directory. What's left ?
java -Xmx256m -jar NxtMint-1.0.0.jar

This assumes the Aparapi and OpenCL runtime libraries are in the system execution path (PATH environment variable) or in the current directory (Windows adds the current directory to the execution path
Title: Re: NxtMint Java minter
Post by: Hachoir on January 18, 2015, 06:07:19 pm
So I don't need to execute aparapi.jar at all, just put aparapi.dll and OpenCl.dll in the same directory in which the minter is executed ?

I get this error.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).

PATH environment variable is set with this command ?

set PATH="c:\NxtMint-1.0.0";%PATH%
Title: Re: NxtMint Java minter
Post by: ltcrstrbrt on January 18, 2015, 06:31:44 pm
I installed SDK for Amd GPU and then copied openCL.dll file( from C:\Program Files (x86)\AMD APP SDK\3.0-0-Beta\bin\x86_64)  in nxtminter folder (main folder not nxtminter\lib). I used " java -Xmx256m -jar NxtMint-1.0.0.jar "  but doesn't work, also Cpu works fine..

WARNING MintWorker.gpuHash: GPUexecution did not complete probably due to GPU resource shortage
INFO MintWorker.gpuHash: Disabling GPU hashing and reverting to CPU hashing
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 07:10:50 pm
So I don't need to execute aparapi.jar at all, just put aparapi.dll and OpenCl.dll in the same directory in which the minter is executed ?

I get this error.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).

PATH environment variable is set with this command ?

set PATH="c:\NxtMint-1.0.0";%PATH%
That put double quotes in the path.  Try this instead:
    PATH C:\NxtMint-1.0.0;%PATH%

To check that it worked, enter
    PATH

However, on Windows, it isn't necessary to update the PATH since Windows automatically looks in the current directory first.  So just copy the dll files to C:\NxtMint-1.0.0 and make it the current directory when you issue the Java command:
    cd C:\NxtMint-1.0.0
    java -Xmx256m -jar NxtMint-1.0.0.jar

What card are you using?  NVIDIA ships OpenCL.dll and OpenCL64.dll.  If you are using the 64-bit JVM on Windows, you need to copy OpenCL64.dll and rename it to OpenCL.dll.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 07:14:47 pm
I installed SDK for Amd GPU and then copied openCL.dll file( from C:\Program Files (x86)\AMD APP SDK\3.0-0-Beta\bin\x86_64)  in nxtminter folder (main folder not nxtminter\lib). I used " java -Xmx256m -jar NxtMint-1.0.0.jar "  but doesn't work, also Cpu works fine..

WARNING MintWorker.gpuHash: GPUexecution did not complete probably due to GPU resource shortage
INFO MintWorker.gpuHash: Disabling GPU hashing and reverting to CPU hashing
There should have been an error message from Aparapi before the NxtMint warning message.  This message explains why it didn't execute on the GPU (the only information returned to NxtMint is whether the request was executed on the GPU or in a Java thread pool).
Title: Re: NxtMint Java minter
Post by: Hachoir on January 18, 2015, 07:48:40 pm
So I don't need to execute aparapi.jar at all, just put aparapi.dll and OpenCl.dll in the same directory in which the minter is executed ?

I get this error.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).

PATH environment variable is set with this command ?

set PATH="c:\NxtMint-1.0.0";%PATH%
That put double quotes in the path.  Try this instead:
    PATH C:\NxtMint-1.0.0;%PATH%

To check that it worked, enter
    PATH

However, on Windows, it isn't necessary to update the PATH since Windows automatically looks in the current directory first.  So just copy the dll files to C:\NxtMint-1.0.0 and make it the current directory when you issue the Java command:
    cd C:\NxtMint-1.0.0
    j
What card are you using?  NVIDIA ships OpenCL.dll and OpenCL64.dll.  If you are using the 64-bit JVM on Windows, you need to copy OpenCL64.dll and rename it to OpenCL.dll.

I use the command java -Xmx256m -Dnxt.datadir="C:\NxtMint-1.0.0" -jar "C:\NxtMint-1.0.0\NxtMint-1.0.0.jar" because when I run ava -Xmx256m -jar NxtMint-1.0.0.jar from the current directory I get an error
Quote
08:43:09 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: Secret phrase not specified
        at org.ScripterRon.NxtMint.Main.main(Main.java:186)
Even though the secret phrase is specified in NxtMint.conf which I copied in C:\Users\AppData\NxtMint-1.0.0 (that NxtMint-1.0.0 was not created automatically) alongside logging.properties.

My graphics card is nvidia geforce 6150se. The OS isn't 64 bit so the file already is named OpenCl.dll. I did copy it in the current directory with aparapi_x86.dll.

So I still set the PATH variable and I get the same message.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 09:01:05 pm
I use the command java -Xmx256m -Dnxt.datadir="C:\NxtMint-1.0.0" -jar "C:\NxtMint-1.0.0\NxtMint-1.0.0.jar" because when I run ava -Xmx256m -jar NxtMint-1.0.0.jar from the current directory I get an error
Quote
08:43:09 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: Secret phrase not specified
        at org.ScripterRon.NxtMint.Main.main(Main.java:186)
Even though the secret phrase is specified in NxtMint.conf which I copied in C:\Users\AppData\NxtMint-1.0.0 (that NxtMint-1.0.0 was not created automatically) alongside logging.properties.

My graphics card is nvidia geforce 6150se. The OS isn't 64 bit so the file already is named OpenCl.dll. I did copy it in the current directory with aparapi_x86.dll.

So I still set the PATH variable and I get the same message.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).
The default data directory on Windows is C:\Users\your-user-name\AppData\Roaming\NxtMint

I don't know why it is failing.  What does "java -version" display?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 09:11:36 pm
NxtMint Version 1.1.0 is available.

Change log
  - Add sample.logging.properties, sample.mint.bat, sample.mint.sh
  - Add minting counter to transaction table in GUI
  - Rebuild GPU kernel following execution failure
  - Add total hash count to worker status message
  - Check for unconfirmed transactions
  - GPU support for SHA-256

I'm looking into GPU support for Scrypt but this one is a bit more difficult due to memory requirements.  Graphics cards with a decent amount of memory will probably work (Scrypt needs 128KB of memory for each execution instance to avoid recomputing previous hash digests for each hash round).  So 256 instances would require 32 MB of graphics card memory just for the data array.  Since this is temporary storage, it doesn't need to be preserved between kernel executions.

The actual algorithm is more complex as well since it uses multiple HmacSha256 hashes for each round.
Title: Re: NxtMint Java minter
Post by: crimi on January 18, 2015, 09:39:46 pm
NxtMint Version 1.1.0 is available.

Change log
  - Add sample.logging.properties, sample.mint.bat, sample.mint.sh
  - Add minting counter to transaction table in GUI
  - Rebuild GPU kernel following execution failure
  - Add total hash count to worker status message
  - Check for unconfirmed transactions
  - GPU support for SHA-256

I'm looking into GPU support for Scrypt but this one is a bit more difficult due to memory requirements.  Graphics cards with a decent amount of memory will probably work (Scrypt needs 128KB of memory for each execution instance to avoid recomputing previous hash digests for each hash round).  So 256 instances would require 32 MB of graphics card memory just for the data array.  Since this is temporary storage, it doesn't need to be preserved between kernel executions.

The actual algorithm is more complex as well since it uses multiple HmacSha256 hashes for each round.

Ty works like a charm(EGOLD), if you need someone to test multi gpu send it over to me.
Title: Re: NxtMint Java minter
Post by: Hachoir on January 18, 2015, 09:52:41 pm
I use the command java -Xmx256m -Dnxt.datadir="C:\NxtMint-1.0.0" -jar "C:\NxtMint-1.0.0\NxtMint-1.0.0.jar" because when I run ava -Xmx256m -jar NxtMint-1.0.0.jar from the current directory I get an error
Quote
08:43:09 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: Secret phrase not specified
        at org.ScripterRon.NxtMint.Main.main(Main.java:186)
Even though the secret phrase is specified in NxtMint.conf which I copied in C:\Users\AppData\NxtMint-1.0.0 (that NxtMint-1.0.0 was not created automatically) alongside logging.properties.

My graphics card is nvidia geforce 6150se. The OS isn't 64 bit so the file already is named OpenCl.dll. I did copy it in the current directory with aparapi_x86.dll.

So I still set the PATH variable and I get the same message.

Quote
SEVERE OpenCLLoader.<clinit>: Check your environment. Failed to load ap
arapi native library aparapi_x86 or possibly failed to locate opencl native libr
ary (opencl.dll/opencl.so). Ensure that both are in your PATH (windows) or in LD
_LIBRARY_PATH (linux).
The default data directory on Windows is C:\Users\your-user-name\AppData\Roaming\NxtMint

I don't know why it is failing.  What does "java -version" display?

Well it shouldn't matter since I manually changed the data directory anyway with all the needed files into it (for GPU minting I just need OpenCL.dll and aparapi_x86.dll right ? Do I need libaparapi_x86.so too ?).
java -version says :
Quote
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
Java HotSpot(TM) Client VM (build 25.25-b02, mixed mode, sharing)

I'll try with your latest release too.
Title: Re: NxtMint Java minter
Post by: Hachoir on January 18, 2015, 10:28:03 pm
Still the same with version 1.1.0. It can't find OpenCL.dll and aparapi_x86.dll while it's in the same directory ?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 18, 2015, 11:16:40 pm
Still the same with version 1.1.0. It can't find OpenCL.dll and aparapi_x86.dll while it's in the same directory ?
You don't need libaparapi.so since that is for Linux.

It sounds like Aparapi/OpenCL doesn't work on your system.  I have 64-bit Windows 8, so I can't try the 32-bit version.  It could also be that your graphics card doesn't support Aparapi.  You could try adding some Aparapi debug options to the command line, although I'm not sure it will make any difference if it is failing to load the dll.

  -Dcom.amd.aparapi.logLevel=FINE
  -Dcom.amd.aparapi.enableVerboseJNI=true
Title: Re: NxtMint Java minter
Post by: Daedelus on January 19, 2015, 01:01:26 pm
I have started a thread on MSCoin mining: https://bitcointalk.org/index.php?topic=929548

I mentioned NxtMint for GPU miners. Can you keep an eye on it to help me out with any questioning?

Thanks in advance  ;D
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 19, 2015, 03:07:27 pm
I have started a thread on MSCoin mining: https://bitcointalk.org/index.php?topic=929548

I mentioned NxtMint for GPU miners. Can you keep an eye on it to help me out with any questioning?

Thanks in advance  ;D
OK - I added it to my watch list on BitcoinTalk
Title: Re: NxtMint Java minter
Post by: Daedelus on January 19, 2015, 03:14:02 pm
Great, thanks. 84 views and not a bite. They are probably all views from the people on this forum :D

We'll see, the altcoin mining sub forum looks pretty dead (less than 1 post per hour atm) so may try something else later.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 19, 2015, 03:27:30 pm
Ty works like a charm(EGOLD), if you need someone to test multi gpu send it over to me.
Multiple GPU support is next on my list.  Since I have a single GPU, this means you will be an alpha tester :).  Device range support is something that Aparapi recently added, so you might end up debugging their code as well.

The SCRYPT support is looking promising.  I'm almost done with the HmacSha256 support which is required for Scrypt.  Once that is working, Scrypt itself should be quick since it is just a loop with multiple HmacSha256 hash requests in each loop.  The time-consuming part is testing each piece in isolation since there are no debug message while in kernel mode and there are a lot of subtle gotchas using multiple address spaces on the GPU (for global vs private data).
Title: Re: NxtMint Java minter
Post by: cryptoventurefund on January 19, 2015, 07:00:19 pm
ScripterRon i couldn't get the first version to work for some strange reason, but 1.1 did the trick.

It's amazing!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

You sir, rock!  8) 8) 8) 8) 8) 8) 8)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 19, 2015, 07:57:59 pm
SCRYPT support looks promising.  I need to go through the code and try to reduce the path length as much as possible.  Then I'll let it mint for awhile to shake out any bugs.  Note that you'll need a graphics card with a fair amount of memory since the hash data will take 130 KB per kernel group instance.  So if your card supports the maximum of 256 instances per group, that would around 32 MB of data.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 19, 2015, 11:08:54 pm
SCRYPT support looks promising.  I need to go through the code and try to reduce the path length as much as possible.  Then I'll let it mint for awhile to shake out any bugs.  Note that you'll need a graphics card with a fair amount of memory since the hash data will take 130 KB per kernel group instance.  So if your card supports the maximum of 256 instances per group, that would around 32 MB of data.
Well, SCRYPT mining is working and the NRS server accepts the minting transactions.  But it brings my NVIDIA card to its knees and isn't much faster than just using the CPU.  Looking at some comparison charts, AMD is much better than NVIDIA for SCRYPT mining.  If somebody wants to try this on their system, let me know and I'll send them the jar.

I'm not sure that I can improve performance because SCRYPT has very large hash loops (especially the salsa rounds).
Title: Re: NxtMint Java minter
Post by: KrusherPT on January 19, 2015, 11:37:11 pm
You can send it to me I can test, I'm a bit lame so anything else I need to do, or just paste on the 1.1 folder and change the exec command...
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 20, 2015, 02:45:41 am
I was getting a JVM crash attempting to use local memory on the graphics card.  So I updated my NVIDIA driver to see if that would fix the problem.  Nope - just made it worse since now I can't use private memory either.  The only thing that works is global memory.  Reverting to the old NVIDIA driver would get me running again but I don't want to tell people they have to downlevel their systems to get NxtMint to work.  So I'm going to stay with the current NVIDIA driver (the Keccak25 and SHA-256 GPU code still works since they use just global memory).

This all started as I tried to fix the SCRYPT performance problem.  The problem was caused by using private memory for the huge digest array.  Changing that to global memory gave a 10x performance boost.  But global memory is shared by all kernel instances, so that isn't a solution to instance-dependent data unless you have a small number of instances.

The answer is probably to access the GPU from native C/C++ code instead of using Aparapi.  But that leads to platform dependencies when building and testing the code.  I'll look around the web and see if anything is available.
Title: Re: NxtMint Java minter
Post by: Wakasaki808 on January 20, 2015, 06:24:03 am
Not sure if anybody else has had a problem with this...

But I can't get the NxtMint to actually use my Nvidia GPU...using my laptop it always goes to my Intel HD Graphics and not my Nvidia GPU. (It shows a 'GPU' is being used in the cmd prompt but just not the correct GPU) I can't load it as a program because its not an .exe file and when I set .jar to run using the dedicated card through control settings it doesn't do anything...

Guarantee its because of my 'Nvidia Control Panel' and the way Nvidia specifies what programs to use what GPU. But still haven't been able to get the NxtMint to actually use the Nvidia after playing with settings for a few hours. There is likely a way to fix this, can't figure it out though.

 :-[
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 20, 2015, 06:29:19 am
But I can't get the NxtMint to actually use my Nvidia GPU...using my laptop it always goes to my Intel HD Graphics and not my Nvidia 860. (It shows a 'GPU' is being used in the cmd prompt but just not the correct GPU) I can't load it as a program because its not an .exe file and when I set .jar to run using the dedicated card through control settings it doesn't do anything...
Aparapi uses the first GPU that it finds.  I'm going to see if I can let you specify which GPU to use.  If that is successful, then I should also be able to execute an OpenCL kernel on more than one GPU.
Title: Re: NxtMint Java minter
Post by: lopalcar on January 20, 2015, 08:16:52 am
Not sure if anybody else has had a problem with this...

But I can't get the NxtMint to actually use my Nvidia GPU...using my laptop it always goes to my Intel HD Graphics and not my Nvidia GPU. (It shows a 'GPU' is being used in the cmd prompt but just not the correct GPU) I can't load it as a program because its not an .exe file and when I set .jar to run using the dedicated card through control settings it doesn't do anything...

Guarantee its because of my 'Nvidia Control Panel' and the way Nvidia specifies what programs to use what GPU. But still haven't been able to get the NxtMint to actually use the Nvidia after playing with settings for a few hours. There is likely a way to fix this, can't figure it out though.

 :-[
Try to disable the integrated GPU from the BIOS
Title: Re: NxtMint Java minter
Post by: 794259332 on January 20, 2015, 03:21:36 pm
only one gpu can mining?  how about setting for multi gpu cards
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 20, 2015, 04:42:26 pm
I got local memory working on my NVidia GT 720 and moved the Scrypt salsa array from global memory to local memory.  This gave a 5x performance improvement.  If you want to try a pre-release, you can download an updated NxtMint-1.1.0.jar from https://drive.google.com/open?id=0B1312_6UqRHPQmhXWWdSdzNzWUk&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPQmhXWWdSdzNzWUk&authuser=0).
Title: Re: NxtMint Java minter
Post by: KrusherPT on January 20, 2015, 05:32:46 pm
I'm getting 0.0038 ~ 0.0045 MH/s on a AMD 7770 at I=125 and GPU 99%, desktop lags alot.
And 1 core from my amd fx 6300 its 0.0021, so still slow.
But good job anyway, you are a hero for doing the miner :D
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 20, 2015, 06:34:05 pm
I'm getting 0.0038 ~ 0.0045 MH/s on a AMD 7770 at I=125 and GPU 99%, desktop lags alot.
And 1 core from my amd fx 6300 its 0.0021, so still slow.
But good job anyway, you are a hero for doing the miner :D
Scrypt has a very long instruction path length compared to other algorithms (you can see this by comparing the CPU hash rates for the various algorithms).  This leads to the sluggish desktop problem because the GPU is busy for an extended period for each kernel execution. 

I'm sure the bottleneck is the salsa permutations (which consist of a bunch of shifts, xor and swaps).  I get around 0.0080 MH/s on an NVIDIA GT 720, which still isn't very good.

By the way, Aparapi provides a little 'info' utility in their samples.  You can run it to display your device configuration by running 'info.bat' or 'info.sh'

My configuration:

Machine contains 1 OpenCL platforms
Platform 0{
   Name    : "NVIDIA CUDA"
   Vendor  : "NVIDIA Corporation"
   Version : "OpenCL 1.1 CUDA 7.0.18"
   Platform contains 1 OpenCL devices
   Device 0{
       Type                  : GPU
       GlobalMemSize         : 1073741824
       LocalMemSize          : 49151
       MaxComputeUnits       : 2
       MaxWorkGroupSizes     : 1024
       MaxWorkItemDimensions : 3
   }
}
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 20, 2015, 07:42:26 pm
Scrypt is getting better.  Up to 0.0095 MH/s (Worker 4 is my GPU worker).  The desktop is more responsive (I can actually enter data while the minter is running now).  New test version out on Google Drive.
Code: [Select]
02:36:49 INFO Main.main: Java Nxt Mint Version 1.1.0
02:36:49 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:36:49 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:36:49 INFO Main.main: Minting 5.000000 units of ELEMS for account NXT-XM86-4ZNA-65L5-CD
WUE: 4 CPU threads, 10 GPU intensity
02:36:49 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:36:51 FINE GpuScrypt.<init>: SCRYPT GPU local size 256, group size 512
02:36:51 FINE MintWorker.run: Worker 2 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 1 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 0 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 3 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 4 starting on counter 10
02:37:51 FINE MintWorker.run: Worker 2: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 0: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 3: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 1: 0.15 MHash, 0.0025 MHash/s
02:37:52 FINE MintWorker.run: Worker 4: 0.57 MHash, 0.0096 MHash/s
Title: Re: NxtMint Java minter
Post by: Wakasaki808 on January 20, 2015, 07:44:07 pm
Scrypt is getting better.  Up to 0.95 MH/s (Worker 4 is my GPU worker).  The desktop is more responsive (I can actually enter data while the minter is running now).  New version out on Google Drive.
Code: [Select]
02:36:49 INFO Main.main: Java Nxt Mint Version 1.1.0
02:36:49 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:36:49 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:36:49 INFO Main.main: Minting 5.000000 units of ELEMS for account NXT-XM86-4ZNA-65L5-CD
WUE: 4 CPU threads, 10 GPU intensity
02:36:49 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:36:51 FINE GpuScrypt.<init>: SCRYPT GPU local size 256, group size 512
02:36:51 FINE MintWorker.run: Worker 2 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 1 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 0 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 3 starting on counter 10
02:36:51 FINE MintWorker.run: Worker 4 starting on counter 10
02:37:51 FINE MintWorker.run: Worker 2: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 0: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 3: 0.15 MHash, 0.0025 MHash/s
02:37:51 FINE MintWorker.run: Worker 1: 0.15 MHash, 0.0025 MHash/s
02:37:52 FINE MintWorker.run: Worker 4: 0.57 MHash, 0.0096 MHash/s

Nice to see this progressing :)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 01:45:42 am
A new test version of NxtMint is available at https://drive.google.com/open?id=0B1312_6UqRHPQmhXWWdSdzNzWUk&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPQmhXWWdSdzNzWUk&authuser=0). 

I have added support for specifying one or more GPU devices to be used for minting.  Since I have just one graphics card, I'm unable to test this.  OpenCL does not provide a method to tie an OpenCL device to a physical adapter (each card maker has its own OpenCL plugins but these are not available to my Java program).  Even the OpenCL device identifier changes each time you start your program.  So you will have to identify the adapters to be used based on the enumeration order (first adapter listed is 0, second adapter is 1, and so forth).  To help you identify what is available. NxtMint will list all available GPU devices when it is started with a non-zero value for gpuIntensity.  Hopefully the order will remain the same unless you add/remove cards from your system.

The gpuDevice configuration parameter specifies the device to be used and can be repeated multiple times to use more than one adapter.
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 21, 2015, 01:58:44 am
I'm getting the following results on my GTX 580 Nvidia GPU with ScryptGPUV1 and ScryptGPUV2(the latest version):

Code: [Select]
cpuThreads = 0
GPU local size 256, group size 1024
ScryptGPUV1 = 0.0035 Mhash/s

Code: [Select]
cpuThreads = 0
GPU local size 256, group size 512
ScryptGPUV2 = 0.0027 Mhash/s

Code: [Select]
cpuThreads = 4
GPU local size 256, group size 512
CPUWorker = 0.0014 Mhash/s for each CPU worker
ScryptGPUV1 = 0.0027 Mhash/s
totalHashRate ~ 0.0083 MH/s

Code: [Select]
cpuThreads = 4
GPU local size 256, group size 512
CPUWorker = 0.0014 Mhash/s for each CPU worker
ScryptGPUV2 = 0.0027 Mhash/s
totalHashRate ~ 0.0083 MH/s

Code: [Select]
cpuThreads = 6
GPU = 0
CPUWorker = 0.0014 Mhash/s for each CPU worker
totalHashRate ~ 0.0084 MH/s


Note that GPU temperature is only ~66 dc for all the above cases with GPULoad =99%, however, it is more than 70 dc when mining EGOLD. I have two processors with total 8 threads in my machine.




Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 04:36:38 am
I'm getting the following results on my GTX 580 Nvidia GPU with ScryptGPUV1 and ScryptGPUV2(the latest version):

Note that GPU temperature is only ~66 dc for all the above cases with GPULoad =99%, however, it is more than 70 dc when mining EGOLD. I have two processors with total 8 threads in my machine.
It looks like your GPU has more than 2 compute units since the hash rate went down when I reduced the group count from 4 to 2 (1024 global instances to 512 global instances with 256 instances per compute unit).  The code I just uploaded to Google Drive will display GPU information during NxtMint initialization, so you can see how many compute units are available on your card.  Each compute unit has multiple cores and its own local memory.  For example, my card has 384 CUDA cores and 2 compute units, which means that each compute unit has 192 cores.

I'll change the code to dynamically allocate the global size based on the number of compute units (right now it is a fixed initialization).  Still, I wonder why you are only getting 0.0027MH/s.  Perhaps your local memory is too small (that will also be displayed when NxtMint starts up).  I need 128 bytes of local memory for each instance or 32KB for 256 instances (my card has 48KB of local memory per compute unit).  So I might need to adjust the local size as well if enough memory isn't available.

Aparapi has an upper limit of 256 instances in a work group.  So if a compute unit has more than 256 cores, the extra cores won't be used.
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 21, 2015, 09:22:51 am
I'm getting the following results on my GTX 580 Nvidia GPU with ScryptGPUV1 and ScryptGPUV2(the latest version):

Note that GPU temperature is only ~66 dc for all the above cases with GPULoad =99%, however, it is more than 70 dc when mining EGOLD. I have two processors with total 8 threads in my machine.
It looks like your GPU has more than 2 compute units since the hash rate went down when I reduced the group count from 4 to 2 (1024 global instances to 512 global instances with 256 instances per compute unit).  The code I just uploaded to Google Drive will display GPU information during NxtMint initialization, so you can see how many compute units are available on your card.  Each compute unit has multiple cores and its own local memory.  For example, my card has 384 CUDA cores and 2 compute units, which means that each compute unit has 192 cores.

I'll change the code to dynamically allocate the global size based on the number of compute units (right now it is a fixed initialization).  Still, I wonder why you are only getting 0.0027MH/s.  Perhaps your local memory is too small (that will also be displayed when NxtMint starts up).  I need 128 bytes of local memory for each instance or 32KB for 256 instances (my card has 48KB of local memory per compute unit).  So I might need to adjust the local size as well if enough memory isn't available.

Aparapi has an upper limit of 256 instances in a work group.  So if a compute unit has more than 256 cores, the extra cores won't be used.

I have 16 compute units as following.  BTW, it seems that the latest version has poor performance as minting EGOLD compared with the public released 1.1.0 version.

Code: [Select]
05:17:34 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, 3072MB global memory
, 48KB local memory, 16 compute units
Title: Re: NxtMint Java minter
Post by: 794259332 on January 21, 2015, 10:08:34 am
how  to set up for 2 gpu cards
Title: Re: NxtMint Java minter
Post by: z38630610 on January 21, 2015, 11:27:22 am
how  to set up for 2 gpu cards
-d 0,1
Title: Re: NxtMint Java minter
Post by: lopalcar on January 21, 2015, 11:41:37 am
how  to set up for 2 gpu cards
Using the latest NxtMint-1.1.0.jar hosted in google drive, edit NxtMint.conf adding:
gpuDevice=X

where X is a number betwen 0 and (NumberOfGPUs-1)
You need to write that line as many times as devices you want to run specifying the X for each GPU
Title: Re: NxtMint Java minter
Post by: lopalcar on January 21, 2015, 11:44:40 am

I have 16 compute units as following.  BTW, it seems that the latest version has poor performance as minting EGOLD compared with the public released 1.1.0 version.

Code: [Select]
05:17:34 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, 3072MB global memory
, 48KB local memory, 16 compute units
I also have poor performance, in a 6990, each GPU now gives me 45mhash and before it was giving me 100mhash, so I don't gain anything using the whole card
Each GPU has 1536 cores and 24 compute units
Title: Re: NxtMint Java minter
Post by: crimi on January 21, 2015, 02:55:03 pm
Got 2 cards running now works fine so far.
(http://i.imgur.com/QeYUwxR.png)

So if minting is like a big sudoku looking for a solution, would it make sense just to stop the puzzle and start a new one if you think it going to take to long.
Sometimes i need 1 mio hashes sometimes only 30k hashes atm to find 200 units egold.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 03:09:59 pm
I have 16 compute units as following.  BTW, it seems that the latest version has poor performance as minting EGOLD compared with the public released 1.1.0 version.

Code: [Select]
05:17:34 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, 3072MB global memory
, 48KB local memory, 16 compute units
Hmm - I didn't change the Keccak25 or Sha256 code.  I'll rerun some Keccak25 and Sha256 minting and see how it looks.

16 compute units is outstanding (wish I had one :)).  So even the old code which used 4 compute units wasn't stressing your card.  The change to configure dynamically should take care of that problem.  However, you will probably have to increase the Java heap since each instance requires 128KB of global memory (which is mapped to Java memory).  Each compute unit would run 256 instances, so 16*256*128KB=512MB.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 03:11:40 pm
how  to set up for 2 gpu cards
Add a gpuDevice parameter to NxtMint.conf.  The default is gpuDevice=0 if it isn't specified (that is, use the first GPU found)

For example, to use the first two GPU devices, add:
  gpuDevice=0
  gpuDevice=1
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 03:18:11 pm
I also have poor performance, in a 6990, each GPU now gives me 45mhash and before it was giving me 100mhash, so I don't gain anything using the whole card
Each GPU has 1536 cores and 24 compute units
OK - I'm guessing it isn't using all cores in a compute unit.  That could be a result of the changes for Scrypt.  I'll look into it.

24 compute units will be even worse then 16 as far as Java memory is concerned.  I wish I could find out how many cores are available but Aparapi doesn't return that information.  So I have to assume it is 256 per compute unit but in your case it would be 64 (1536/24).  I guess I can add it as a configuration parameter and assume 256 if it is not specified.  That should improve performance further and reduce memory requirements (both in Java and on the graphics card).

Title: Re: NxtMint Java minter
Post by: lopalcar on January 21, 2015, 03:45:53 pm
I also have poor performance, in a 6990, each GPU now gives me 45mhash and before it was giving me 100mhash, so I don't gain anything using the whole card
Each GPU has 1536 cores and 24 compute units
OK - I'm guessing it isn't using all cores in a compute unit.  That could be a result of the changes for Scrypt.  I'll look into it.

24 compute units will be even worse then 16 as far as Java memory is concerned.  I wish I could find out how many cores are available but Aparapi doesn't return that information.  So I have to assume it is 256 per compute unit but in your case it would be 64 (1536/24).  I guess I can add it as a configuration parameter and assume 256 if it is not specified.  That should improve performance further and reduce memory requirements (both in Java and on the graphics card).
Ok thank you :)
I don't know what memory are you refearing to... I ran the jar file with -Xmx1024m, either the RAM memory nor the GPU memory are stressed... I also know that the GPU is at 99% of use, but makes less noise than before, so I suppose isn't using all the available cores... "I don't really have idea how the GPU usage is measured then :S "
The GPU memory load is 346MB, same as IDLE, and the RAM from the jar file 184MB
Hope this info helps you in something
Ah, I'm mining EGOLD also, so I don't understand how the scrypt changes are influencing here
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 21, 2015, 04:05:23 pm

I think GTX 580 has 16 compute units with total 512 cores, 32 cores for each unit, right?
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 21, 2015, 04:06:15 pm
I guess I can add it as a configuration parameter and assume 256 if it is not specified.  That should improve performance further and reduce memory requirements (both in Java and on the graphics card).

It will be great.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 05:07:30 pm
Ok thank you :)
I don't know what memory are you refearing to... I ran the jar file with -Xmx1024m, either the RAM memory nor the GPU memory are stressed... I also know that the GPU is at 99% of use, but makes less noise than before, so I suppose isn't using all the available cores... "I don't really have idea how the GPU usage is measured then :S "
The GPU memory load is 346MB, same as IDLE, and the RAM from the jar file 184MB
Hope this info helps you in something
Ah, I'm mining EGOLD also, so I don't understand how the scrypt changes are influencing here
I was referring to the local memory on the card.  Each compute unit has its own high-speed local memory.  But you have plenty, so that isn't a problem.

I changed the mint worker to calculate the workgroup range before executing the kernel.  This is done for all algorithms, so it would affect Keccak25 and Sha256.  I think the range call is causing the Aparapi kernel code to reset cached data.  I'll change this to calculate the range during initialization and save the result.  That should get us back to where we were before the Scrypt changes.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 05:12:00 pm

I think GTX 580 has 16 compute units with total 512 cores, 32 cores for each unit, right?
The spec sheet says 512 but you should check the device information for your card since card manufacturers can improve the base specs from NVIDIA (overclocking, extra compute units, etc).  For example, the spec sheet for the GT 720 has 192 cores.  But the card manufacturer placed two compute units on the card, giving me 384 cores and 2 compute units.

On Windows, the NVIDIA Control Panel will show the number of cores in the System Information section.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 07:54:37 pm
OK - new test version on Google Drive.  Hopefully, Keccak25 and Sha256 hash rates will be back to where they were.

The gpuDevice configuration parameter now has 2 fields - the first one is the device number (0, 1, etc) and the second one is the total number of processing cores on the graphics card.  For example, if GPU 0 has 384 cores, you would specify
  gpuDevice=0,384

For Scrypt, the memory allocation is approximately 128KB per processing core.  So a system with 512 cores will require 64MB of Java heap and 64MB of adapter memory.  If you run out of Java heap memory, increase the value for the -Xmx parameter on the Java command line.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 21, 2015, 08:56:37 pm
I did some testing and performance is actually better if you don't specify the number of kernel instances per compute unit.  I think this happens because OpenCL will execute all of the requested kernel instances before returning control to Aparapi, which is faster than having Aparapi initiate additional executions.

So, just specify 'gpuDevice=n' and NxtMint will use all of the compute units on the card with 256 kernel instances per compute unit.  If this causes a resource shortage on the card, then you can reduce the number of kernel instances per compute unit by specifying the number of processor cores as 'gpuDevice=n,cores'.  The kernel instances per compute unit will then be calculated as (the number of processing cores) / (number of compute units).

Note that SCRYPT requires 128KB per kernel instance.  The total number of instances is (instances per compute unit) x (number of compute units).  So 24 compute units with 256 instances per compute unit would require 24 * 256 * 128KB or 768MB, in both the Java heap and adapter memory.
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 22, 2015, 02:44:45 am

The latest version is so great. 10X speed up compared with last versio!

I confirmed my GPU has 512 cores.

The following results show that the number of instances affect the performance a lot. The hash rate is so low if each core runs only 1 instances, however it is ~ 8X speed up if each core runs the default 8 instances ( 32 cores a unit, total default 32*8=256 instances a unit, that is total 16*32*8=4096 instances). On the other hand, it doesn't support "gpuDevice = 0, 8192" when I tried to set 16 instances for each core. BTW, what does "gpuIntensity" mean if gpuDevice parameter is used?


Code: [Select]
gupDevice=0,512
HR = 0.0025MH/s

Code: [Select]
#gupDevice=0,512
HR = 0.019MH/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 04:02:10 am

The latest version is so great. 10X speed up compared with last versio!

I confirmed my GPU has 512 cores.

The following results show that the number of instances affect the performance a lot. The hash rate is so low if each core runs only 1 instances, however it is ~ 8X speed up if each core runs the default 8 instances ( 32 cores a unit, total default 32*8=256 instances a unit, that is total 16*32*8=4096 instances). On the other hand, it doesn't support "gpuDevice = 0, 8192" when I tried to set 16 instances for each core. BTW, what does "gpuIntensity" mean if gpuDevice parameter is used?


Code: [Select]
gupDevice=0,512
HR = 0.0025MH/s

Code: [Select]
#gupDevice=0,512
HR = 0.019MH/s
The device reports maximum sizes to Aparapi, which verifies the requested execution range is valid.  I'll add the maximum item size and maximum group size to the GPU information that NxtMint displays when it starts up.

gpuIntensity determines the number of kernel executions before control is returned to Java.  As you increase the intensity, the card is busier but display performance will begin to suffer since display updates get queued behind the minting kernel executions.

I think we both arrived at the same conclusion on number of work items per work group.  My performance increased if I had 8 or 16 work items per work group.  The performance decreased if the number went below 4 or above 16.  I think the problem results from memory cache contention.  Scrypt maintains 128 bytes of state information for each instance and this data is read/written continuously during the hashing.

Try the NxtMint-1.1.0.jar that I just placed on Google Drive.  It sets the local size (number of work items) to 8 and sets the global size (number of work groups per execution) to 256 x (number of compute units).  See if that gives you better performance.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 04:04:47 am
Here is the current hash rate on my GT 720 (384 cores, 2 compute units).  This is minting ELEMS and worker 4 is the GPU worker.
Code: [Select]
10:59:35 FINE MintWorker.run: Worker 4: 21.65 MHash, 0.0104 MHash/s
10:59:56 FINE MintWorker.run: Worker 1: 5.40 MHash, 0.0026 MHash/s
10:59:56 FINE MintWorker.run: Worker 2: 5.39 MHash, 0.0026 MHash/s
10:59:56 FINE MintWorker.run: Worker 3: 5.32 MHash, 0.0025 MHash/s
10:59:56 FINE MintWorker.run: Worker 0: 5.39 MHash, 0.0026 MHash/s
11:00:04 INFO MintWorker.run: Worker 4 found solution for counter 26
11:00:04 FINE Mint.mint: Solution for counter 26 added to pending queue
11:00:04 FINE MintWorker.run: Worker 1 abandoning counter 26
11:00:04 FINE MintWorker.run: Worker 2 abandoning counter 26
11:00:04 FINE MintWorker.run: Worker 3 abandoning counter 26
11:00:04 FINE MintWorker.run: Worker 2 starting on counter 27
11:00:04 FINE MintWorker.run: Worker 3 starting on counter 27
11:00:04 FINE MintWorker.run: Worker 4 starting on counter 27
11:00:04 FINE MintWorker.run: Worker 0 abandoning counter 26
11:00:04 FINE MintWorker.run: Worker 1 starting on counter 27
11:00:04 FINE MintWorker.run: Worker 0 starting on counter 27
11:00:04 INFO Mint.mint: Solution for counter 26 submitted
Title: Re: NxtMint Java minter
Post by: Jimmy2011 on January 22, 2015, 04:14:52 am

Try the NxtMint-1.1.0.jar that I just placed on Google Drive. It sets the local size (number of work items) to 8 and sets the global size (number of work groups per execution) to 256 x (number of compute units).  See if that gives you better performance.

Is the above default setting?

How to set the number of work groups per execution? It seems that the GPU here can support max 1024 work groups.

Code: [Select]
12:26:38 INFO Main.lambda$null$2: GPU device 0: NVIDIA CUDA
  3072MB global memory, 48KB local memory, 16 compute units, Max work group size
 1024

Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 04:33:38 am
Is the above default setting? What is "number of work groups per execution" ?
Scrypt now hardcodes the work group size to 8.  Specifying the number of cores will not change this value (it will still affect the other algorithms).

The way Aparapi works is as follows:
OpenCL handles scheduling and dispatching work groups.  Each work group contains one or more work items (instances of the kernel program).  OpenCL terminates when all of the work groups have been processed.  The gpuIntensity value determines the number of work groups to be scheduled.  So, the higher the intensity, the longer OpenCL runs before completing.

Multiple work groups can be dispatched concurrently, so Scrypt should still keep the adapter busy as long as the work group size divides evenly into the number of cores on the compute unit.  I chose 8 instead of 16 to handle cases like 48 cores.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 04:40:08 am
How to set the number of work groups per execution? It seems that the GPU here can support max 1024 work groups.
Code: [Select]
12:26:38 INFO Main.lambda$null$2: GPU device 0: NVIDIA CUDA
  3072MB global memory, 48KB local memory, 16 compute units, Max work group size
 1024
No, it means a work group can have a maximum of 1024 work items.  I don't think there is a limit on the number of work groups other than limits imposed by the operating system or device driver (I know the NVIDIA device driver will fail and restart if the OpenCL program runs too long -- had that happen many a time when the code I wrote went into a loop or hung on recursive calls -- at least things are much better than 10 years ago when you would get a blue screen of death).
Title: Re: NxtMint Java minter
Post by: 794259332 on January 22, 2015, 08:35:08 am
error:

exception in thread "main" java.lang.OutOfMemoryError: Java heap space


how to set up?


i have used -Xmx1024m
Title: Re: NxtMint Java minter
Post by: coretechs on January 22, 2015, 01:50:44 pm
error:

exception in thread "main" java.lang.OutOfMemoryError: Java heap space


how to set up?


i have used -Xmx1024m

Is this with scrypt hashing?  I tried minting some ELEMS on an r290x and had the same error with 2048m.  If I increase it to 4096m it is able to start hashing, but it crashes within a few seconds every time.  I think the card may have been overclocked at the time and I haven't had a chance to tinker with it any further yet so YMMV.
Title: Re: NxtMint Java minter
Post by: 794259332 on January 22, 2015, 02:19:07 pm
error:

exception in thread "main" java.lang.OutOfMemoryError: Java heap space


how to set up?


i have used -Xmx1024m

Is this with scrypt hashing?  I tried minting some ELEMS on an r290x and had the same error with 2048m.  If I increase it to 4096m it is able to start hashing, but it crashes within a few seconds every time.  I think the card may have been overclocked at the time and I haven't had a chance to tinker with it any further yet so YMMV.

yes,ELEMS, i use two r280x cards
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 03:16:59 pm
error:

exception in thread "main" java.lang.OutOfMemoryError: Java heap space


how to set up?


i have used -Xmx1024m
Please post the exception stack trace so I can see where it happened.  Also post the startup messages which show information about the graphics card and the calculated local and global sizes.

A 1GB heap should be plenty.  Did you specify -Xmx1024m before -jar?
Title: Re: NxtMint Java minter
Post by: coretechs on January 22, 2015, 05:08:29 pm
I spent some time trying to get the r290x working with scrypt, but the display driver crashes every time with no java error thrown.  I tried stock settings as well as lower cpu/memory clocks, intensity 0-XXX, but it always crashes after about 10-20 seconds of hashing.  KNV25 is hashing fine even with overclocking (310Mh/s !) so I don't think its an issue with the card.  For ref. this is on Windows 7 x64 and the card is reporting 4096m global, 32k local, 44 compute units.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 05:22:14 pm
I spent some time trying to get the r290x working with scrypt, but the display driver crashes every time with no java error thrown.  I tried stock settings as well as lower cpu/memory clocks, intensity 0-XXX, but it always crashes after about 10-20 seconds of hashing.  KNV25 is hashing fine even with overclocking (310Mh/s !) so I don't think its an issue with the card.  For ref. this is on Windows 7 x64 and the card is reporting 4096m global, 32k local, 44 compute units.
I just put Version 1.2.0 out on github.  Give it a try and set the work group size to 8 (gpuDevice=0,8).
The problem might be the 32K of local memory since the default work group size of 256 will require 32K of local memory, leaving nothing for other uses.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 05:26:16 pm
I put Version 1.2.0 out on github https://github.com/ScripterRon/NxtMint/releases (https://github.com/ScripterRon/NxtMint/releases).

The gpuDevice configuration parameter has changed from the test version of NxtMint.  The second parameter now specifies the work group size instead of the number of cores on the card.  You can vary the work group size to reduce local memory contention.  I got the best Scrypt results on my card with a work group size of 8.  For Keccak25 and Sha256, I would suggest setting the work group size to the number of cores in a compute unit (cores on the card divided by the number of compute units)
Title: Re: NxtMint Java minter
Post by: cbw on January 22, 2015, 06:51:52 pm
Video cards - 3xr9270x. On version 1.2.0 also tried start with 3gpuDevice (out of memory) and with only 1gpuDevice. With only 1gpuDevice tried set "gpuDevice=0", "gpuDevice=0,8", "gpuDevice=0,4", "gpuDevice=0,2" and "gpuDevice=0,1" - not working, videodriver fails.
Title: Re: NxtMint Java minter
Post by: coretechs on January 22, 2015, 07:23:01 pm
Same result here, tried with gpuDevice=0,8 / 0,4 / 0,1 and intensity 1,10, video driver crashes.  This is only with the AMD, I tested an Nvidia card and it hashes with no problems.

Code: [Select]
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000002a94a2b, pid=2620, tid=404
#
# JRE version: Java(TM) SE Runtime Environment (8.0_31-b13) (build 1.8.0_31-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.31-b07 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# J 1238 C1 java.util.ArrayList.toArray([Ljava/lang/Object;)[Ljava/lang/Object; (60 bytes) @ 0x0000000002a94a2b [0x0000000002a945e0+0x44b]
...
Title: Re: NxtMint Java minter
Post by: crimi on January 22, 2015, 07:45:40 pm
I spent some time trying to get the r290x working with scrypt, but the display driver crashes every time with no java error thrown.  I tried stock settings as well as lower cpu/memory clocks, intensity 0-XXX, but it always crashes after about 10-20 seconds of hashing.  KNV25 is hashing fine even with overclocking (310Mh/s !) so I don't think its an issue with the card.  For ref. this is on Windows 7 x64 and the card is reporting 4096m global, 32k local, 44 compute units.
No problems here 2 x 290x, intensity 512. But seems a little bit one of the workers is a lot slower.
(http://i.imgur.com/EkDvKxC.png)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 08:14:45 pm
Same result here, tried with gpuDevice=0,8 / 0,4 / 0,1 and intensity 1,10, video driver crashes.  This is only with the AMD, I tested an Nvidia card and it hashes with no problems.

Code: [Select]
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000002a94a2b, pid=2620, tid=404
#
# JRE version: Java(TM) SE Runtime Environment (8.0_31-b13) (build 1.8.0_31-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.31-b07 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# J 1238 C1 java.util.ArrayList.toArray([Ljava/lang/Object;)[Ljava/lang/Object; (60 bytes) @ 0x0000000002a94a2b [0x0000000002a945e0+0x44b]
...
That looks like an error in the Aparapi runtime library.  I've seen that kind of crash when there is a problem accessing adapter local memory.  SCRYPT is the only algorithm that uses local memory, KECCAK25 and SHA256 use just global memory.

Have you checked your device driver and OpenCL levels?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 08:16:22 pm
Video cards - 3xr9270x. On version 1.2.0 also tried start with 3gpuDevice (out of memory) and with only 1gpuDevice. With only 1gpuDevice tried set "gpuDevice=0", "gpuDevice=0,8", "gpuDevice=0,4", "gpuDevice=0,2" and "gpuDevice=0,1" - not working, videodriver fails.
What is the GPU information displayed by NxtMint when it starts?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 08:19:19 pm
I spent some time trying to get the r290x working with scrypt, but the display driver crashes every time with no java error thrown.  I tried stock settings as well as lower cpu/memory clocks, intensity 0-XXX, but it always crashes after about 10-20 seconds of hashing.  KNV25 is hashing fine even with overclocking (310Mh/s !) so I don't think its an issue with the card.  For ref. this is on Windows 7 x64 and the card is reporting 4096m global, 32k local, 44 compute units.
No problems here 2 x 290x, intensity 512. But seems a little bit one of the workers is a lot slower.
(http://i.imgur.com/EkDvKxC.png)
Try reducing the work group size: gpuDevice=0,8 for example.  This improved performance for me because it reduces the local memory contention.
Title: Re: NxtMint Java minter
Post by: cbw on January 22, 2015, 09:17:37 pm
Video cards - 3xr9270x. On version 1.2.0 also tried start with 3gpuDevice (out of memory) and with only 1gpuDevice. With only 1gpuDevice tried set "gpuDevice=0", "gpuDevice=0,8", "gpuDevice=0,4", "gpuDevice=0,2" and "gpuDevice=0,1" - not working, videodriver fails.
What is the GPU information displayed by NxtMint when it starts?
11:16:47 INFO Main.lambda$null$2: GPU device 0: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256
11:16:47 INFO Main.lambda$null$2: GPU device 1: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256
11:16:47 INFO Main.lambda$null$2: GPU device 2: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256

If starts with gpuDevice=0,8 gpuDevice=1,8 gpuDevice=2,8
Quote
11:19:40 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:40 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:40 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:19:41 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:41 INFO MintWorker.run: GPU worker 1 starting on GPU 1
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at org.ScripterRon.NxtMint.GpuScrypt.<init>(GpuScrypt.java:207)
        at org.ScripterRon.NxtMint.GpuFunction.factory(GpuFunction.java:59)
        at org.ScripterRon.NxtMint.MintWorker.<init>(MintWorker.java:86)
        at org.ScripterRon.NxtMint.Mint.mint(Mint.java:93)
        at org.ScripterRon.NxtMint.Main.main(Main.java:306)

If starts with gpuDevice=0,8 gpuDevice=1,8
Quote
11:21:32 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:21:32 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:21:32 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:21:33 INFO MintWorker.run: GPU worker 1 starting on GPU 1
11:21:33 FINE MintWorker.run: Worker 1 starting on counter 1
11:21:33 FINE MintWorker.run: Worker 0 starting on counter 1
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006c6e7957, pid=6980, tid=5196
#
# JRE version: Java(TM) SE Runtime Environment (8.0_40-b21) (build 1.8.0_40-ea-b21)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b24 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x187957]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\nxtmint\hs_err_pid6980.log
Logfile: pastebin.com/sfWAfa7U

If starts with gpuDevice=0,8 - for 15-20 seconds I see load of my 1 GPU and after 15-20 seconds I got system message, video driver crashed. GPU load 0%. But in NxtMnt cmd window no errors:
Quote
11:28:26 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:28:26 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:28:26 FINE MintWorker.run: Worker 0 starting on counter 1

Changes in gpuIntensity given nothing, try set 1 and 10.

Start command:
java -Djava.library.path=C:\nxtmint -Xmx2048m -Dnxt.datadir=C:\nxtmint -jar C:\nxtmint\NxtMint-1.2.0.jar
In c:\nxtmint I'm copy all files and folders from aparapi archive and all files and folders from AMD APP SDK x64 - C:\Program Files (x86)\AMD APP SDK\3.0-0-Beta\bin\x86_64 (in previous I'm copy only OpenCL.dll from AMD APP SDK folder). Drivers - AMD Catalyst Omega 14.12.
Title: Re: NxtMint Java minter
Post by: cbw on January 22, 2015, 10:33:42 pm
No problems here 2 x 290x, intensity 512. But seems a little bit one of the workers is a lot slower.
(http://i.imgur.com/EkDvKxC.png)
4 CPU threads, 0 GPU intensity
12:23:25 INFO Nxt.init: API node=localhost, API port=7876
12:23:27 INFO MintWorker.run: CPU worker 0 starting
12:23:27 INFO MintWorker.run: CPU worker 1 starting
12:23:27 INFO MintWorker.run: CPU worker 2 starting
12:23:27 INFO MintWorker.run: CPU worker 3 starting
12:24:38 FINE MintWorker.run: Worker 0: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 3: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 2: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 1: 0,11 MHash, 0,0018 MHash/s

Also tried to set gpuDevice=0,512 and gpuIntensity=512 - not working.
My Athlon X4 750k (weak CPU) doing 0,0072MHash/s and you 2x 290x doing around 0,0088MHash/s at SCRYPT. You say "no problems", really?
Title: Re: NxtMint Java minter
Post by: crimi on January 22, 2015, 11:00:07 pm
No problems here 2 x 290x, intensity 512. But seems a little bit one of the workers is a lot slower.
(http://i.imgur.com/EkDvKxC.png)
4 CPU threads, 0 GPU intensity
12:23:25 INFO Nxt.init: API node=localhost, API port=7876
12:23:27 INFO MintWorker.run: CPU worker 0 starting
12:23:27 INFO MintWorker.run: CPU worker 1 starting
12:23:27 INFO MintWorker.run: CPU worker 2 starting
12:23:27 INFO MintWorker.run: CPU worker 3 starting
12:24:38 FINE MintWorker.run: Worker 0: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 3: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 2: 0,11 MHash, 0,0018 MHash/s
12:24:38 FINE MintWorker.run: Worker 1: 0,11 MHash, 0,0018 MHash/s

Also tried to set gpuDevice=0,512 and gpuIntensity=512 - not working.
My Athlon X4 750k (weak CPU) doing 0,0072MHash/s and you 2x 290x doing around 0,0088MHash/s at SCRYPT. You say "no problems", really?

Good point this is really slow. But i dont have any errors like you and did not say it is fast either. Both gpus are loaded 99%.

@ScripterRon

gpuDevice=0,8 etc doesnt even start the minting process, always get out of memory(current java memory usage 2,7 gb). local size: 256, global size 11264 hmm,
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 11:44:52 pm
11:16:47 INFO Main.lambda$null$2: GPU device 0: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256
11:16:47 INFO Main.lambda$null$2: GPU device 1: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256
11:16:47 INFO Main.lambda$null$2: GPU device 2: AMD Accelerated Parallel Processing 2048MB global memory, 32KB local memory, 20 compute units, Max work group size 256

If starts with gpuDevice=0,8 gpuDevice=1,8 gpuDevice=2,8
Quote
11:19:40 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:40 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:40 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:19:41 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:19:41 INFO MintWorker.run: GPU worker 1 starting on GPU 1
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at org.ScripterRon.NxtMint.GpuScrypt.<init>(GpuScrypt.java:207)
        at org.ScripterRon.NxtMint.GpuFunction.factory(GpuFunction.java:59)
        at org.ScripterRon.NxtMint.MintWorker.<init>(MintWorker.java:86)
        at org.ScripterRon.NxtMint.Mint.mint(Mint.java:93)
        at org.ScripterRon.NxtMint.Main.main(Main.java:306)

If starts with gpuDevice=0,8 gpuDevice=1,8
Quote
11:21:32 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:21:32 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:21:32 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:21:33 INFO MintWorker.run: GPU worker 1 starting on GPU 1
11:21:33 FINE MintWorker.run: Worker 1 starting on counter 1
11:21:33 FINE MintWorker.run: Worker 0 starting on counter 1
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006c6e7957, pid=6980, tid=5196
#
# JRE version: Java(TM) SE Runtime Environment (8.0_40-b21) (build 1.8.0_40-ea-b21)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b24 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x187957]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\nxtmint\hs_err_pid6980.log
Logfile: pastebin.com/sfWAfa7U

If starts with gpuDevice=0,8 - for 15-20 seconds I see load of my 1 GPU and after 15-20 seconds I got system message, video driver crashed. GPU load 0%. But in NxtMnt cmd window no errors:
Quote
11:28:26 FINE GpuScrypt.<init>: GPU local size 8, global size 5120
11:28:26 INFO MintWorker.run: GPU worker 0 starting on GPU 0
11:28:26 FINE MintWorker.run: Worker 0 starting on counter 1

Changes in gpuIntensity given nothing, try set 1 and 10.

Start command:
java -Djava.library.path=C:\nxtmint -Xmx2048m -Dnxt.datadir=C:\nxtmint -jar C:\nxtmint\NxtMint-1.2.0.jar
In c:\nxtmint I'm copy all files and folders from aparapi archive and all files and folders from AMD APP SDK x64 - C:\Program Files (x86)\AMD APP SDK\3.0-0-Beta\bin\x86_64 (in previous I'm copy only OpenCL.dll from AMD APP SDK folder). Drivers - AMD Catalyst Omega 14.12.
Each work item takes 128KB.  With 5120 work items (256*20), that is 660MB.  If you start three cards, that means you need a Java heap size of 3*660MB or 1920MB.  I can change the global size to be (number of compute units) x (local size) instead of always using 256.  This would reduce the storage requirement in your example to (8*20) work items or 20MB.  Running 3 cards would then require just 60MB.

The JVM crash might be related to the large data allocation as well.  So the above change might fix that problem.

The drawback is that the hash rate will decrease since you won't be keeping all of the cores busy if you set the local size less than the number of cores per compute unit.  So it is a trade-off between local memory contention and huge data allocations.  I think we need another parameter on gpuDevice to specify the global size so you can vary the both local and global sizes.  That way, if you have 32 cores per compute unit and 20 compute units, you could specify gpuDevice=0,8,640.  You Java heap size would be just 80MB and all of the cores would be busy.

I'll put up a test version once I have made the change.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 22, 2015, 11:48:40 pm
gpuDevice=0,8 etc doesnt even start the minting process, always get out of memory(current java memory usage 2,7 gb). local size: 256, global size 11264 hmm,
Yep - I'm going to have to change that.  Multiplying the compute unit number by 256 leads to outrageous group sizes and global storage requirements.  I'm going to change gpuDevice to have 3 parameters: device number, local size, global size.
Title: Re: NxtMint Java minter
Post by: cbw on January 23, 2015, 12:01:47 am
Each work item takes 128KB.  With 5120 work items (256*20), that is 660MB.  If you start three cards, that means you need a Java heap size of 3*660MB or 1920MB.  I can change the global size to be (number of compute units) x (local size) instead of always using 256.  This would reduce the storage requirement in your example to (8*20) work items or 20MB.  Running 3 cards would then require just 60MB.
If I understand correctly - it have setted up 2048MB of RAM in config and each GPU have 2048MB - 2048MB>1920MB, it couldn't be a problem.

The JVM crash might be related to the large data allocation as well.  So the above change might fix that problem.
OK, waiting for fix and test again.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 23, 2015, 12:58:32 am
If I understand correctly - it have setted up 2048MB of RAM in config and each GPU have 2048MB - 2048MB>1920MB, it couldn't be a problem.
Java needs heap space for itself as well.   Try 1920+192=-2122MB or greater.  But that is still a lot of storage to allocate and might be causing PCI-E bus problems.  The fact that you get a JVM crash for a small allocation size indicates there is still a problem.

I'll post a test version of NxtMint which will allow you to set the global size.  I'm also going to look into directly running native OpenCL programs.  This would eliminate the Java heap usage since storage will be allocated only on the adapter.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 23, 2015, 02:21:53 am
Test version at https://drive.google.com/open?id=0B1312_6UqRHPWUVoZjUxR1ZvazA&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPWUVoZjUxR1ZvazA&authuser=0)

gpuDevice now has three parameters: device number, work group size, work group count.

If you specify just the device number (ie, gpuDevice=0), the work group size will be 256 and the work group count will be determined by gpuIntensity.

For my GT 720, I got the best Scrypt results with gpuDevice=0,16,64.  Larger work group sizes reduced the hash rate and larger work group counts didn't increase the hash rate.

Code: [Select]
09:19:12 INFO Main.main: Java Nxt Mint Version 1.2.0
09:19:12 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
09:19:12 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
09:19:12 INFO Main.main: Minting 5.000000 units of ELEMS for account NXT-XM86-4ZNA-65L5-CDWUE: 1 CPU threads, 30 GPU intensity
09:19:12 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
09:19:13 INFO Main.lambda$null$2: GPU device 0: NVIDIA CUDA
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
09:19:14 INFO MintWorker.run: CPU worker 0 starting
09:19:14 FINE GpuScrypt.<init>: GPU local size 16, global size 1024
09:19:14 INFO MintWorker.run: GPU worker 1 starting on GPU 0
09:19:14 FINE MintWorker.run: Worker 1 starting on counter 33
09:19:14 FINE MintWorker.run: Worker 0 starting on counter 33
09:20:14 FINE MintWorker.run: Worker 0: 0.20 MHash, 0.0033 MHash/s
09:20:16 FINE MintWorker.run: Worker 1: 0.68 MHash, 0.0111 MHash/s
09:21:14 FINE MintWorker.run: Worker 0: 0.40 MHash, 0.0033 MHash/s
09:21:17 FINE MintWorker.run: Worker 1: 1.35 MHash, 0.0110 MHash/s
Title: Re: NxtMint Java minter
Post by: 794259332 on January 23, 2015, 05:58:55 am
(http://chuantu.biz/t/62/1421992713x1822611390.jpg)
Title: Re: NxtMint Java minter
Post by: cbw on January 23, 2015, 06:37:44 am
Java needs heap space for itself as well.   Try 1920+192=-2122MB or greater.  But that is still a lot of storage to allocate and might be causing PCI-E bus problems.  The fact that you get a JVM crash for a small allocation size indicates there is still a problem.
I'm set 2500MB (can't set 3000MB, free mem around 2,7GB) - no changes. And I never see, that process use over 1GB of mem.
Title: Re: NxtMint Java minter
Post by: cbw on January 23, 2015, 06:46:47 am
Test version at drive.google.com/open?id=0B1312_6UqRHPWUVoZjUxR1ZvazA&authuser=0
Tried gpuDevice=0,16,64, gpuDevice=0,8,32, gpuDevice=0,4,16, gpuDevice=0,2,8... And tried starts with one or two or three video cards. Results: 1) video driver crashes, 2) see fatal error in console.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 23, 2015, 12:37:46 pm
(http://chuantu.biz/t/62/1421992713x1822611390.jpg)
Try the test version on Google Drive.  It changes gpuDevice to specify device number, work group size and work group count.  See my append right before yours.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 23, 2015, 12:42:15 pm
Tried gpuDevice=0,16,64, gpuDevice=0,8,32, gpuDevice=0,4,16, gpuDevice=0,2,8... And tried starts with one or two or three video cards. Results: 1) video driver crashes, 2) see fatal error in console.
I don't know what else to try.  The failures are in the runtime libraries or the device driver and I'm not able to debug them.

I'm looking into writing native C routines to do CPU hashing.  That might result in improve CPU hash performance.  The GPU Scrypt support isn't much faster than the current CPU support, so that might be the way to go.

Another possibility is a native OpenCL Scrypt implementation based on something like CGMiner.  But I don't think that is something I want to do (at least not now).  If somebody wants to tackle it, I'm willing to include it (JOCL will let me invoke the OpenCL program from Java).  The catch is the digest generated by the native program must be identical to the digest generated by the NRS server code.  Otherwise, the mint transaction will fail when it is submitted to the server.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 23, 2015, 09:42:58 pm
I did some testing using native C versus Java for the Keccak25 hash algorithm.
Code: [Select]
Ronald@Hoffman-Desktop /c/temp
$ java JniTest
Running on 64-bit JVM
Performing 16,777,216 hashes
Native hash: Elapsed time 6.75 sec, Rate 2,485.51 KH/sec
Java hash: Elapsed time 9.83 sec, Rate 1,706.74 KH/sec
Hash digests are equal
This is a 45% improvement.  So I'm going to modify NxtMint to use native routines for CPU hashing.  Since I'm on Windows 8.1, I can provide native routines for Windows (32-bit and 64-bit).  If this is desired for other platforms, somebody else will need to build and test the code on those platforms since I don't have Mac or Linux systems.
Title: Re: NxtMint Java minter
Post by: crimi on January 24, 2015, 12:05:47 pm
This is a 45% improvement.

Waiting for this  :D
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 24, 2015, 01:36:22 pm
Waiting for this  :D
I've finished the Keccak25 support.  I was getting 1.3MH/s using the Java hash routine, so this is a 45% improvement.  This is on Windows 8.1 64-bit.  The 32-bit library should work but I don't have a 32-bit system to test it on.  Note that the Java library path now specifies both the Aparapi and NxtMint runtime libraries (both directories will be packaged in the NxtMint installation archive).

I'll work on Scrypt next.  Sha-256 and Sha-3 don't need a native hash method since they are implemented in the Java runtine where native routines are used already.

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\aparapi;\GitHub\NxtMint\target\jni" -jar "\GitHub\NxtMint\target\NxtMint-1.2.0.jar"
08:25:10 INFO Main.main: Java Nxt Mint Version 1.2.0
08:25:10 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
08:25:10 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
08:25:10 INFO Main.main: Minting 5.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 4 CPU threads, 0 GPU intensity
08:25:10 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
08:25:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native hash routines
08:25:11 INFO MintWorker.run: CPU worker 2 starting
08:25:11 INFO MintWorker.run: CPU worker 1 starting
08:25:11 INFO MintWorker.run: CPU worker 3 starting
08:25:11 INFO MintWorker.run: CPU worker 0 starting
08:25:11 FINE MintWorker.run: Worker 2 starting on counter 222
08:25:11 FINE MintWorker.run: Worker 1 starting on counter 222
08:25:11 FINE MintWorker.run: Worker 0 starting on counter 222
08:25:11 FINE MintWorker.run: Worker 3 starting on counter 222
08:26:11 FINE MintWorker.run: Worker 1: 114.82 MHash, 1.9137 MHash/s
08:26:11 FINE MintWorker.run: Worker 3: 113.25 MHash, 1.8874 MHash/s
08:26:11 FINE MintWorker.run: Worker 2: 113.77 MHash, 1.8962 MHash/s
08:26:11 FINE MintWorker.run: Worker 0: 117.44 MHash, 1.9573 MHash/s
08:27:11 FINE MintWorker.run: Worker 0: 231.21 MHash, 1.9268 MHash/s
08:27:11 FINE MintWorker.run: Worker 1: 229.64 MHash, 1.9137 MHash/s
08:27:11 FINE MintWorker.run: Worker 3: 226.49 MHash, 1.8874 MHash/s
08:27:12 FINE MintWorker.run: Worker 2: 229.11 MHash, 1.9093 MHash/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 25, 2015, 02:25:47 am
A test version of NxtMint is available at https://drive.google.com/open?id=0B1312_6UqRHPX2p3RWZDM0VpaGs&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPX2p3RWZDM0VpaGs&authuser=0).  It has Windows support for native Keccak25 and Scrypt hashing.  The package contains the Aparapi runtime and the NxtMint native library.  You can use the sample .bat or .sh to launch NxtMint.  If you have your own start script, you need to add
    -Djava.library.path="aparapi;jni"
before the -jar option to use the native support.  If you don't want to use the native support on Windows, remove the 'jni' directory from the library path.
Title: Re: NxtMint Java minter
Post by: crimi on January 25, 2015, 01:05:44 pm
A test version of NxtMint is available at https://drive.google.com/open?id=0B1312_6UqRHPX2p3RWZDM0VpaGs&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPX2p3RWZDM0VpaGs&authuser=0).  It has Windows support for native Keccak25 and Scrypt hashing.  The package contains the Aparapi runtime and the NxtMint native library.  You can use the sample .bat or .sh to launch NxtMint.  If you have your own start script, you need to add
    -Djava.library.path="aparapi;jni"
before the -jar option to use the native support.  If you don't want to use the native support on Windows, remove the 'jni' directory from the library path.
Nice.

(http://i.imgur.com/lZifg7g.png)

Both cards have a increase(EGOLD) 1 x 40MH/s & 1 x 10MH/s dont know if that settings are optimal.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 25, 2015, 03:02:27 pm
Nice.

(http://i.imgur.com/lZifg7g.png)

Both cards have a increase(EGOLD) 1 x 40MH/s & 1 x 10MH/s dont know if that settings are optimal.
The native routines are for CPU hashing (that is, the hash algorithm is implemented in C instead of Java).  If somebody has 32-bit Windows, I'd like to hear if it works for them since I'm compiling on Windows 64-bit and using 32-bit link libraries.  But there could be execution-time problems since I have the 64-bit JDK.

GPU hashing is implemented in OpenCL and the program runs on the graphics card.  There isn't much more that I can do there if I continue to use Aparapi.  Aparapi translates Java code to OpenCL code, which means you don't have access to OpenCL mechanisms that aren't embodied in Java (such as register shuffle, vectorization, etc).  I'm going to look at writing a native OpenCL program and passing it directly to the adapter for execution (Aparapi would no longer be used).
Title: Re: NxtMint Java minter
Post by: Hachoir on January 25, 2015, 03:51:29 pm
Tried GPU minting again with version 1.2.0, I get this message now :

Quote
04:46:33 INFO Nxt.init: API node=localhost, API port=7876
04:46:33 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: GPU device 0 is not available
        at org.ScripterRon.NxtMint.Main.main(Main.java:282)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 25, 2015, 07:29:04 pm
Tried GPU minting again with version 1.2.0, I get this message now :

Quote
04:46:33 INFO Nxt.init: API node=localhost, API port=7876
04:46:33 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: GPU device 0 is not available
        at org.ScripterRon.NxtMint.Main.main(Main.java:282)
NxtMint didn't find any GPU devices and gpuIntensity is not 0.  Aparapi detects GPU devices based on the information returned by OpenCL.  It lists the available GPU devices during initialization and they would appear after the Nxt.init message.

Did something change in your system setup?  Or did you have gpuIntensity=0 before?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 25, 2015, 07:38:43 pm
I used VirtualBox to set up 64-bit Debian Linux on my Windows 8 system.  So I'll look into generating native libaries for Linux as well as Windows.

Code: [Select]
rwh@debian:~/NxtMint$ Starting NxtMint
02:20:34 INFO Main.main: Java Nxt Mint Version 1.2.0
02:20:34 INFO Main.main: Application data path: /home/rwh/.NxtMint
02:20:34 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:20:34 INFO Main.main: Minting 5.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 2 CPU threads, 0 GPU intensity
02:20:34 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:20:38 INFO MintWorker.run: CPU worker 0 starting
02:20:38 INFO MintWorker.run: CPU worker 1 starting
02:20:38 FINE MintWorker.run: Worker 0 starting on counter 229
02:20:38 FINE MintWorker.run: Worker 1 starting on counter 229
02:21:38 FINE MintWorker.run: Worker 0: 94.37 MHash, 1.5729 MHash/s
02:21:39 FINE MintWorker.run: Worker 1: 94.37 MHash, 1.5729 MHash/s
02:22:38 FINE MintWorker.run: Worker 0: 188.74 MHash, 1.5729 MHash/s
02:22:39 FINE MintWorker.run: Worker 1: 188.74 MHash, 1.5599 MHash/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 25, 2015, 09:29:19 pm
NxtMint native support is working on Debian 64-bit.  The Keccak25 hash rate improved from 1.5MH/s to 2.2MH/s (46%).  This is similar to the improvement under Windows.

Code: [Select]
rwh@debian:~/NxtMint$ Starting NxtMint
04:25:10 INFO Main.main: Java Nxt Mint Version 1.2.0
04:25:10 INFO Main.main: Application data path: /home/rwh/.NxtMint
04:25:10 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
04:25:10 INFO Main.main: Minting 5.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 2 CPU threads, 0 GPU intensity
04:25:10 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
04:25:12 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native hash routines
04:25:12 INFO MintWorker.run: CPU worker 0 starting
04:25:12 INFO MintWorker.run: CPU worker 1 starting
04:25:12 FINE MintWorker.run: Worker 0 starting on counter 229
04:25:12 FINE MintWorker.run: Worker 1 starting on counter 229
04:26:12 FINE MintWorker.run: Worker 0: 132.12 MHash, 2.2020 MHash/s
04:26:12 FINE MintWorker.run: Worker 1: 132.12 MHash, 2.2020 MHash/s
Title: Re: NxtMint Java minter
Post by: qwep4ik on January 26, 2015, 07:28:33 am
but you can run around the line for miner GPU
Title: Re: NxtMint Java minter
Post by: Ziploc on January 26, 2015, 12:09:15 pm
Hi,

any suggestions for settings and intensity for r9 290 ?

Thx
Title: Re: NxtMint Java minter
Post by: Tempest on January 26, 2015, 03:31:13 pm
Hi,

CPU minting with this Java minter is fine, however,  I have an issue when I enable GPU minting.

I am constantly presented with this Java error, can anybody help?
(http://i.gyazo.com/14715a08d993c64d5bdb17133b9e6833.png)

Thanks :)
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 26, 2015, 04:25:31 pm
Hi,

CPU minting with this Java minter is fine, however,  I have an issue when I enable GPU minting.

I am constantly presented with this Java error, can anybody help?
(http://i.gyazo.com/14715a08d993c64d5bdb17133b9e6833.png)

Thanks :)
That's a bug.  For now, specify gpuDevice with at least 2 parameters.  For example, gpuDevice=0,256
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 27, 2015, 11:46:01 am
Started mining with this - wow, has it been a while since I've done Java...
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 27, 2015, 12:07:13 pm
Started mining with this - wow, has it been a while since I've done Java...
It has become a mix of Java, C and OpenCL.  I'm in the process of replacing Aparapi and writing the hash routines in native OpenCL.  This will let me access the GPU vector facilities which I can't do with Aparapi.

As for performance, modern Java is nearly equal to C++ and I much prefer it for the language and the extensive support routines that are bundled with the runtime.  For CPU-intensive work, C is better (and assembler is even better).
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 27, 2015, 12:14:29 pm
Started mining with this - wow, has it been a while since I've done Java...
It has become a mix of Java, C and OpenCL.  I'm in the process of replacing Aparapi and writing the hash routines in native OpenCL.  This will let me access the GPU vector facilities which I can't do with Aparapi.

As for performance, modern Java is nearly equal to C++ and I much prefer it for the language and the extensive support routines that are bundled with the runtime.  For CPU-intensive work, C is better (and assembler is even better).

Aparapi is TERRIBLE at getting Java into OpenCL; I'm working on the same thing.

But first, I'm going to be lazy and see what I can do with this Java.
Title: Re: NxtMint Java minter
Post by: 794259332 on January 28, 2015, 03:15:27 am
1.2.0 ver,

error:secret phrase not specified!


but i have specified the phrase in the nxtmint.conf file
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 28, 2015, 03:46:51 am
1.2.0 ver,

error:secret phrase not specified!


but i have specified the phrase in the nxtmint.conf file
What directory did you use for NxtMint.conf?  For Windows, it goes in
    \Users\<your-user-name>\AppData\Roaming\NxtMint\NxtMint.conf
Title: Re: NxtMint Java minter
Post by: Taxidermista on January 28, 2015, 03:00:24 pm
I can't mint with gpus, only with cpu. This is the error I get:

(http://fotos.subefotos.com/c10f151510cc53c6ad9129f0a1b26c76o.png)

This is my conf file:

(http://fotos.subefotos.com/1c5c510c266e4e867780b5b37bc0063do.png)

Some help, please.

Title: Re: NxtMint Java minter
Post by: qwep4ik on January 28, 2015, 03:04:35 pm
I can't mint with gpus, only with cpu. This is the error I get:
gpuDevice=0,8
Title: Re: NxtMint Java minter
Post by: Taxidermista on January 28, 2015, 03:12:00 pm
I can't mint with gpus, only with cpu. This is the error I get:
gpuDevice=0,8

Sorry, I've just seen previous ScripterRon message about this bug. Thank you for your answer.
Title: Re: NxtMint Java minter
Post by: qwep4ik on January 28, 2015, 04:09:13 pm
(http://fotos.subefotos.com/256747eeec60202b5301ac81ea002bdbo.jpg) Help me
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 28, 2015, 09:36:02 pm
(http://fotos.subefotos.com/256747eeec60202b5301ac81ea002bdbo.jpg) Help me
Scrypt requires 128KB per work item.  So 13312 work items (your global size) requires 13312*128KB or 1664MB in the Java heap.  Aparapi requires all buffers to be allocated in the Java heap even if a particular buffer is an adapter work area which is never accessed by the host.

The requirement will go away once I finish rewriting everything to use native OpenCL.  Until then, set your work group count (third parameter for gpuDevice) to a smaller value.  For example, if you want to use a Java Heap of 512MB (-Xmx512) with a local size of 8, then set your group count to 512MB/(8*128KB) = 512.  So gpuDevice=0,8,512.

Note that if you use multiple GPUs, the total Java heap requirement will be the sum of the heap requirement for each adapter.
Title: Re: NxtMint Java minter
Post by: qwep4ik on January 28, 2015, 10:30:02 pm
Quote from: ScripterRon

The requirement will go away once I finish rewriting everything to use native OpenCL.  Until then, set your work group count (third parameter for gpuDevice) to a smaller value.  For example, if you want to use a Java Heap of 512MB (-Xmx512) with a local size of 8, then set your group count to 512MB/(8*128KB) = 512.  So gpuDevice=0,8,512.
So gpuDevice=0,8,512.and less to do and no results no, not worked
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 29, 2015, 12:56:54 am
So gpuDevice=0,8,512.and less to do and no results no, not worked
What error did you get?  Did you set the Java heap size?  The example I gave requires a 512MB heap.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 29, 2015, 05:41:32 am
I finished writing C99 OpenCL routines for the GPU hash algorithms (SHA-256, Keccak25 and Scrypt).  NxtMint no longer uses Aparapi and instead uses JOCL for the OpenCL Java bindings.  The performance is pretty much unchanged, which is to be expected since the bulk of the work is being done on the graphics card and my initial pass at the OpenCL routines just ported the C code used for CPU hashing (which is almost identical to the C99 code generated by Aparapi).

I then reworked part of the Scrypt algorithm to use the vector facility to do 16 concurrent XOR and ADD operations.  The Scrypt performance for my GT 720 went from 0.0114 MH/s to 0.0275 MH/s.

I'll need to look for more places where concurrent vector operations can be done, since that is really the strength of the graphics card (the scalar performance of a single processing unit is generally worse than a CPU).
Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.3.0.jar"
12:25:23 INFO Main.main: Java Nxt Mint Version 1.3.0
12:25:23 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:25:23 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:25:23 INFO Main.main: Minting 5.000000 units of ELEMS for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 10 GPU int
ensity
12:25:23 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:25:24 INFO Main.buildGpuList: GPU device 0: GeForce GT 720
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:25:25 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:25:25 INFO GpuScrypt.<init>: GPU 0: Preferred work group size multiple is 32
12:25:25 FINE GpuScrypt.<init>: GPU 0: Local size 16, Global size 2048, Passes 5
12:25:25 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:25:25 FINE MintWorker.run: Worker 0 starting on counter 54
12:26:26 FINE MintWorker.run: Worker 0: 1.34 MHash, 0.0224 MHash/s
12:27:26 FINE MintWorker.run: Worker 0: 2.68 MHash, 0.0224 MHash/s
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 29, 2015, 06:41:48 am
I finished writing C99 OpenCL routines for the GPU hash algorithms (SHA-256, Keccak25 and Scrypt).  NxtMint no longer uses Aparapi and instead uses JOCL for the OpenCL Java bindings.  The performance is pretty much unchanged, which is to be expected since the bulk of the work is being done on the graphics card and my initial pass at the OpenCL routines just ported the C code used for CPU hashing (which is almost identical to the C99 code generated by Aparapi).

I wouldn't bother with Keccak - the only one that matters to me. Also, protip: GCN (7xxx and up) do NOT have hardware vectors.
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 29, 2015, 08:44:47 pm
ScripterRon - is the code for the JOCL version on github?
Title: Re: NxtMint Java minter
Post by: KL0nLutiy on January 29, 2015, 09:25:53 pm
Hello, what the best settings for GTX 750 ti?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 29, 2015, 09:42:15 pm
ScripterRon - is the code for the JOCL version on github?
Yes, but it isn't stable yet.
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 29, 2015, 09:47:04 pm
ScripterRon - is the code for the JOCL version on github?
Yes, but it isn't stable yet.

Got a link? I'd like to take a look at it.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 01:13:56 am
Got a link? I'd like to take a look at it.
https://github.com/ScripterRon/NxtMint (https://github.com/ScripterRon/NxtMint)
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 30, 2015, 02:01:43 am
Thanks, checking it out now.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 07:00:51 pm
I've placed a test version of NxtMint 1.4.0 on Google Drive: https://drive.google.com/open?id=0B1312_6UqRHPSnlnLVdnWTMtTDg&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPSnlnLVdnWTMtTDg&authuser=0)

This version uses OpenCL programs written in C99 and does not use Aparapi.  You should delete the 'aparapi' directory and update the Java library path to include just the 'jni' directory:

    -Djava.library.path=jni

Start with small values for work group size and work group count (for example, gpuDevice=0,32,32) and then increase until performance no longer increases, your display becomes sluggish or your card begins to overheat.  You will get a device driver allocation failure if a requested allocation is too large (this should only be a problem for Scrypt minting because it uses a large pad cache array).
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 07:33:35 pm
Keccak dropped from 260MH per card to 210 per card with same settings.

Still can't get scrypt to work - driver crash on each card as soon as it starts. Tried intensity 1 and 0,1 but still does it.
Title: Re: NxtMint Java minter
Post by: qwep4ik on January 30, 2015, 07:34:54 pm
Keccak dropped from 260MH per card to 210 per card with same settings.

Still can't get scrypt to work - driver crash on each card as soon as it starts. Tried intensity 1 and 0,1 but still does it.
driver crash
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 08:41:51 pm
Keccak dropped from 260MH per card to 210 per card with same settings.

Still can't get scrypt to work - driver crash on each card as soon as it starts. Tried intensity 1 and 0,1 but still does it.
What are the values for gpuDevice?  This is what can cause a driver crash.
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 08:44:32 pm
I tried:

0,1
0,4
0,8
0,8,8
0,16,8
0,16,16
0,32
0,32,32

All crashed

Even tried underclocking my cards but still the same.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 08:47:22 pm
Keccak dropped from 260MH per card to 210 per card with same settings.
Try increasing the values for gpuIntensity and gpuDevice.  I tried to be more conservative in the calculations since so many people were experiencing driver crashes.
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 08:49:36 pm
Keccak dropped from 260MH per card to 210 per card with same settings.
Try increasing the values for gpuIntensity and gpuDevice.  I tried to be more conservative in the calculations since so many people were experiencing driver crashes.

With your 1.3 version I am using gpuDevice=0,256,131072 with gpuIntesity=512 and am getting 260MH

Same settings as I tried with version 1.4 that got me 210MH.

Can I go any higher?
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 08:51:01 pm
I tried:

0,1
0,4
0,8
0,8,8
0,16,8
0,16,16
0,32
0,32,32

All crashed

Even tried underclocking my cards but still the same.
Was this a driver crash or an OpenCL compile failure?  If it was a compile failure, get the next NxtMint-1.4.0.jar from Google Drive and see if that fixes the problem.

If it wasn't a compile failure, what is displayed in the NxtMint command window.  Is it a JVM failure?
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 09:00:50 pm
It looks to be a driver crash as the screen flashes and a message pops up in the bottom right corner advising that the AMD driver has recovered itself.

There is no message in the nxtmint window, just sits there i.e. Worker 0 starting on counter....
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 09:02:31 pm
With your 1.3 version I am using gpuDevice=0,256,131072 with gpuIntesity=512 and am getting 260MH

Same settings as I tried with version 1.4 that got me 210MH.

Can I go any higher?
The gpuIntensity can go up to 1024.  But this just controls the total number of hashes that are done before control is returned to the mint worker.  At some point, increasing gpuIntensity doesn't increase performance since the Java execution time becomes negligible compared to the total OpenCL execution time.

The work group count determines how many work items are executed by OpenCL (work group size * work group count is the global size displayed by NxtMint).  I don't think there is a limit on the global size other than it is an integer value in NxtMint (so approximately 2 billion).  For my NVIDIA card, the performance doesn't increase after the card is saturated, so increasing the work group count doesn't accomplish anything other than creating a backlog on the card.
Title: Re: NxtMint Java minter
Post by: colin012 on January 30, 2015, 09:08:54 pm
Just so everyone knows. I have too many projects to work on and so my contributions (which haven't started yet) to NxtMint will take a back seat for a while. I will be focusing on things related to node hardening as I think that is most important.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 09:11:04 pm
It looks to be a driver crash as the screen flashes and a message pops up in the bottom right corner advising that the AMD driver has recovered itself.

There is no message in the nxtmint window, just sits there i.e. Worker 0 starting on counter....
Then I don't know what to do.  How much memory does your card have?  You need 128KB per Scrypt work item.  Although that shouldn't be a problem for gpuDevice=0,16,16.  16*16*128KB is just 32MB.  It could be NxtMint is using a function not supported by your card, but OpenCL should flag that when it builds the program.

The only thing significantly different between Keccak25 and Scrypt is Scrypt uses a large pad cache in global memory.  Is this an AMD or NVIDIA card?
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 09:13:18 pm
AMD:
Gigabyte 280x Windforce OC
Sapphire HD 7970

Both crash
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 09:19:43 pm
AMD:
Gigabyte 280x Windforce OC
Sapphire HD 7970

Both crash
The problem might be the Windows Timeout Detection and Recovery (TDR).  Windows will reset the graphics card if it thinks an operation is taking to long.  What happens with gpuIntensity=1 and gpuDevice=0,1,1?
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 09:32:37 pm
That works but at 0.0001MH/s

0,2,1 gets 0.0002
0,3,1 gets 0.0003
0,4,1 and above crashes
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 09:40:33 pm
Disabled TDR in the registry and it still crashes at 0,4,1
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 10:31:27 pm
I think the issue might have been using Teamviewer to control my other PC with the cards. I manaaged to get it going with gpudevide=0,4,4 and was going at 0.0004MH/s but gave the following:

(http://s13.postimg.org/mu052z7tz/Untitled.jpg)

After a few mins I got a blue screen and windows restarted.
Title: Re: NxtMint Java minter
Post by: davethetrousers on January 30, 2015, 10:41:17 pm
@bbr: That's likely the problem. Most graphical remote access services - with the exception of VNC to some extent - will break unhindered OpenCL access to your GPUs.
Title: Re: NxtMint Java minter
Post by: ScripterRon on January 30, 2015, 11:10:04 pm
I think the issue might have been using Teamviewer to control my other PC with the cards. I manaaged to get it going with gpudevide=0,4,4 and was going at 0.0004MH/s but gave the following:

(http://s13.postimg.org/mu052z7tz/Untitled.jpg)

After a few mins I got a blue screen and windows restarted.
It also appears the memory on your card is getting corrupted during kernel execution (the 'hash doesn't meet target' error).  Scrypt consists of 3 kernels that run in sequence with intermediate results stored in OpenCL global memory.
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 30, 2015, 11:25:16 pm
Anyone try Keccak25 on 290X? Hashrate?
Title: Re: NxtMint Java minter
Post by: bbr on January 30, 2015, 11:31:41 pm
Anyone try Keccak25 on 290X? Hashrate?

I believe this is with 2 x 290x:

https://nxtforum.org/index.php?topic=7723.msg155274#msg155274
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 30, 2015, 11:43:57 pm
Anyone try Keccak25 on 290X? Hashrate?

I believe this is with 2 x 290x:

https://nxtforum.org/index.php?topic=7723.msg155274#msg155274

Thanks! I have three, wanted to compare.
Title: Re: NxtMint Java minter
Post by: crimi on January 30, 2015, 11:48:48 pm
Anyone try Keccak25 on 290X? Hashrate?

What you have MH/s? Need to compare too  :D
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 12:01:45 am
Anyone try Keccak25 on 290X? Hashrate?

What you have MH/s? Need to compare too  :D

I'd check the link, because comparing with me won't help you.  :P

EDIT: I just noticed you ARE the person quoted. Oops.
Title: Re: NxtMint Java minter
Post by: coretechs on January 31, 2015, 04:13:25 am
Anyone try Keccak25 on 290X? Hashrate?

What you have MH/s? Need to compare too  :D

My R290X doing 311 MH/s @ 1150mhz.
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 04:18:35 am
Finally got to work on this thing, 430 - 440MH/s on 290X at 1150 core.
Title: Re: NxtMint Java minter
Post by: crimi on January 31, 2015, 10:06:08 am
EDIT: I just noticed you ARE the person quoted. Oops.

 ;)

My R290X doing 311 MH/s @ 1150mhz.

Similar as mine.

Finally got to work on this thing, 430 - 440MH/s on 290X at 1150 core.

settings?
Title: Re: NxtMint Java minter
Post by: bbr on January 31, 2015, 10:09:13 am
He will have mde his own tweaks to the code to get that
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 02:40:02 pm
EDIT: I just noticed you ARE the person quoted. Oops.

 ;)

My R290X doing 311 MH/s @ 1150mhz.

Similar as mine.

Finally got to work on this thing, 430 - 440MH/s on 290X at 1150 core.

settings?

Rewrote the OpenCL pretty much entirely, then modified the Java to fit and changed a few things, like the way intensity is interpreted.
Title: Re: NxtMint Java minter
Post by: bbr on January 31, 2015, 02:51:53 pm
EDIT: I just noticed you ARE the person quoted. Oops.

 ;)

My R290X doing 311 MH/s @ 1150mhz.

Similar as mine.

Finally got to work on this thing, 430 - 440MH/s on 290X at 1150 core.

settings?

Rewrote the OpenCL pretty much entirely, then modified the Java to fit and changed a few things, like the way intensity is interpreted.

You managed to get scrypt working on your 290x?
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 03:11:37 pm
EDIT: I just noticed you ARE the person quoted. Oops.

 ;)

My R290X doing 311 MH/s @ 1150mhz.

Similar as mine.

Finally got to work on this thing, 430 - 440MH/s on 290X at 1150 core.

settings?

Rewrote the OpenCL pretty much entirely, then modified the Java to fit and changed a few things, like the way intensity is interpreted.

You managed to get scrypt working on your 290x?

Keccak25, I don't care about scrypt.
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 10:06:14 pm
I'm hoping someone can help me. I must REALLLYY be missing something here.... I could not get any Minters to work, including the one that came with my NXT server. So I'm starting over.... Is there a no0b friendly guide on how to get this minter working? I'm using NXTMint 1.4.0 by ScripterRon and the instructions at the beginning of this thread are unclear.

What application directory do I copy the .conf files into?

Is there supposed to be a GUI for this Minter?

Does the minter need to be in the same directory as my NXT server?

Someone please help this guy. I rarely ask for help because I believe in my literacy... but I'm running out of options here.
Title: Re: NxtMint Java minter
Post by: davethetrousers on January 31, 2015, 10:19:10 pm
@jshatlee and others

The Elements team did a pretty decent minting guide (https://docs.google.com/document/d/1_QdcrY1q6_n9J3NOcyoczGqELIeCy6S6zNG2Cj22bj8/edit?pli=1) for new NXTers.
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 10:31:00 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 10:45:38 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL

You put it in the file - the .NxtMint/NxtMint.conf one - after secretPhrase=
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 10:49:37 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL

You put it in the file - the .NxtMint/NxtMint.conf one - after secretPhrase=
Ah, so I did do that already. I modified the .conf file to the specifications necessary.
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase= (ACTUAL PASSPHRASE HERE)

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=1

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,32

# Enable/Disable the GUI (the default is true)
enableGUI=true
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 10:54:10 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL

You put it in the file - the .NxtMint/NxtMint.conf one - after secretPhrase=
Ah, so I did do that already. I modified the .conf file to the specifications necessary.
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase= (ACTUAL PASSPHRASE HERE)

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=1

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,32

# Enable/Disable the GUI (the default is true)
enableGUI=true

Looksa all right - it's telling you it's not specified? Maybe that conf file is in the wrong place.
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 10:56:20 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL

You put it in the file - the .NxtMint/NxtMint.conf one - after secretPhrase=
Ah, so I did do that already. I modified the .conf file to the specifications necessary.
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase= (ACTUAL PASSPHRASE HERE)

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=1

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,32

# Enable/Disable the GUI (the default is true)
enableGUI=true

Looksa all right - it's telling you it's not specified? Maybe that conf file is in the wrong place.
Lol maybe? I'm really not quite sure what to do at this point, where should it be? I mean i've extracted this minter into different directories for trial and error. I'm a windows user.
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 11:15:37 pm
@jshatlee and others

The Elements team did a  for new NXTers.

Thanks I will read over it now, right now when i run NxtMint from scripter ron, it's telling me my secret passphrase isn't specified. WTH is going on? LOL

You put it in the file - the .NxtMint/NxtMint.conf one - after secretPhrase=
Ah, so I did do that already. I modified the .conf file to the specifications necessary.
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase= (ACTUAL PASSPHRASE HERE)

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=1

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,32

# Enable/Disable the GUI (the default is true)
enableGUI=true

Looksa all right - it's telling you it's not specified? Maybe that conf file is in the wrong place.
Lol maybe? I'm really not quite sure what to do at this point, where should it be? I mean i've extracted this minter into different directories for trial and error. I'm a windows user.

Doesn't matter where the minter is - it's about where the conf file is. I don't use Windows, but I believe it should be in %APPDATA%/.NxtMint - open an Explorer window and type %APPDATA% into the bar (literally) and hit enter, should open the folder.
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 11:17:50 pm
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 11:31:40 pm
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?

Yep - your intensity is insane low. I'd use 1024 with this minter.
Title: Re: NxtMint Java minter
Post by: jshatlee on January 31, 2015, 11:36:50 pm
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?

Yep - your intensity is insane low. I'd use 1024 with this minter.

Ok sweet, that stepped it up... I'm at about 90 MHs/s now.... is that about right?
Title: Re: NxtMint Java minter
Post by: Wolf0 on January 31, 2015, 11:53:23 pm
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?

Yep - your intensity is insane low. I'd use 1024 with this minter.

Ok sweet, that stepped it up... I'm at about 90 MHs/s now.... is that about right?

No. Use gpudevice=0,256,352
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 12:01:24 am
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?

Yep - your intensity is insane low. I'd use 1024 with this minter.

Ok sweet, that stepped it up... I'm at about 90 MHs/s now.... is that about right?

No. Use gpudevice=0,256,352

That didn't do anything, but i set it to 0,256,2048 and I get about 135 MHs/s
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 12:05:26 am
OK WOAH! I got it to work, didn't realize i needed the conf file in my AppData\ROAMING directory... now I need to figure out why I'm only getting 22MHs/s on an R9 280X GPU.... says the worker is getting it done... but that rate is really low... anything in my conf file that i should modify to step this up?

Yep - your intensity is insane low. I'd use 1024 with this minter.

Ok sweet, that stepped it up... I'm at about 90 MHs/s now.... is that about right?

No. Use gpudevice=0,256,352

That didn't do anything, but i set it to 0,256,2048 and I get about 135 MHs/s

I'd make it a multiple of 44.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 01:57:43 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 02:04:15 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?

I'm not sure what you should hit with it, probably 250MH/s or so, maybe a little more. I've noticed this minter to be slightly... tempermental. Not sure if it's my personal edits to it or not, but I've had my 290X suddenly lose 100MH/s or 200MH/s on reboot for apparently no reason.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 02:55:08 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?

I'm not sure what you should hit with it, probably 250MH/s or so, maybe a little more. I've noticed this minter to be slightly... tempermental. Not sure if it's my personal edits to it or not, but I've had my 290X suddenly lose 100MH/s or 200MH/s on reboot for apparently no reason.

Nice so I'm running at about half speed, nothing I do seems to fix the issue. Think I'll restart maybe mess with the voltage settings on the GPU in catalyst
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 03:01:09 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?

I'm not sure what you should hit with it, probably 250MH/s or so, maybe a little more. I've noticed this minter to be slightly... tempermental. Not sure if it's my personal edits to it or not, but I've had my 290X suddenly lose 100MH/s or 200MH/s on reboot for apparently no reason.

Nice so I'm running at about half speed, nothing I do seems to fix the issue. Think I'll restart maybe mess with the voltage settings on the GPU in catalyst

Won't help unless you up the clocks. Voltage does nothing for speed - it only makes overclocks more stable, at the cost of more heat and power usage.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 03:23:43 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?

I'm not sure what you should hit with it, probably 250MH/s or so, maybe a little more. I've noticed this minter to be slightly... tempermental. Not sure if it's my personal edits to it or not, but I've had my 290X suddenly lose 100MH/s or 200MH/s on reboot for apparently no reason.

Nice so I'm running at about half speed, nothing I do seems to fix the issue. Think I'll restart maybe mess with the voltage settings on the GPU in catalyst

Won't help unless you up the clocks. Voltage does nothing for speed - it only makes overclocks more stable, at the cost of more heat and power usage.

Ah heard I shouldn't overclock this GPU anyway... I'm out of ideas, what do you suggest. I can't seem to get past 140
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 04:05:42 am
Ok I will mess with some of the settings. What hash rate should I be hitting with this kind of GPU? It's a pretty high performance card. If none of these settings work, what else could be the issue?

I'm not sure what you should hit with it, probably 250MH/s or so, maybe a little more. I've noticed this minter to be slightly... tempermental. Not sure if it's my personal edits to it or not, but I've had my 290X suddenly lose 100MH/s or 200MH/s on reboot for apparently no reason.

Nice so I'm running at about half speed, nothing I do seems to fix the issue. Think I'll restart maybe mess with the voltage settings on the GPU in catalyst

Won't help unless you up the clocks. Voltage does nothing for speed - it only makes overclocks more stable, at the cost of more heat and power usage.

Ah heard I shouldn't overclock this GPU anyway... I'm out of ideas, what do you suggest. I can't seem to get past 140

Like I said, I haven't used that minter much - you may want to look through this thread, though - I've seen others posting their settings.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 05:08:27 am
500MH/s on a 290X is hard to get, but I'm fast approaching it.

(My server is down, so odd link) Screenshot (NSFW): http://i.imgbox.com/A5W6ctYN.png
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 06:11:56 am
500MH/s on a 290X is hard to get, but I'm fast approaching it.

(My server is down, so odd link) Screenshot (NSFW): http://i.imgbox.com/A5W6ctYN.png
You've been such a great help. I owe you for sure for all your help. Do you know of a more stable or better performing minter for windows users that do keccac?
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 06:28:47 am
500MH/s on a 290X is hard to get, but I'm fast approaching it.

(My server is down, so odd link) Screenshot (NSFW): http://i.imgbox.com/A5W6ctYN.png
You've been such a great help. I owe you for sure for all your help. Do you know of a more stable or better performing minter for windows users that do keccac?

Not really - I've heavily edited this one to get my results.
Title: Re: NxtMint Java minter
Post by: julian071 on February 01, 2015, 06:23:34 pm

Doesn't matter where the minter is - it's about where the conf file is. I don't use Windows, but I believe it should be in %APPDATA%/.NxtMint - open an Explorer window and type %APPDATA% into the bar (literally) and hit enter, should open the folder.

To be precise, it's not in %appdata%, but in %user%\appdata. I have my appdata redirected to a ramdrive (K:\appdata) and found the config file not to work when I placed it there. Had to place in C:\users\username\appdata for it to work.....
Title: Re: NxtMint Java minter
Post by: julian071 on February 01, 2015, 06:36:47 pm

Do you know of a more stable or better performing minter for windows users that do keccac?


There is no other minter for GPU afaik.

The settings I use to get 215 MH on a HD 7970 are:

gpuIntensity=512 (If I set it to 750 I get 220 MH, but GPU usage goes from 97% to 98%, and that's the difference between being able to watch flash videos in a browser without crashing, and with my display driver crashing)
gpuDevice=0,256

I overclock my card heavily. That's a whole other subject you had better google yourself. If you have a high quality card and good airflow in your machine you can increase your hashing power by about 25%, but expect lots of noise, heat (= more electricity), and of course lots of crashes and tinkering before you get it right. But that's the sport =)
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 09:20:57 pm

Do you know of a more stable or better performing minter for windows users that do keccac?


There is no other minter for GPU afaik.

The settings I use to get 215 MH on a HD 7970 are:

gpuIntensity=512 (If I set it to 750 I get 220 MH, but GPU usage goes from 97% to 98%, and that's the difference between being able to watch flash videos in a browser without crashing, and with my display driver crashing)
gpuDevice=0,256

I overclock my card heavily. That's a whole other subject you had better google yourself. If you have a high quality card and good airflow in your machine you can increase your hashing power by about 25%, but expect lots of noise, heat (= more electricity), and of course lots of crashes and tinkering before you get it right. But that's the sport =)

Well here are my settings right now.
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase= my pass

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=100

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=1024

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,1760
# Enable/Disable the GUI (the default is true)
enableGUI=true

I have also tried GPU intensity at 512| WGS at 128, 256 , 512 , 1024 | MANY different WGC in multiples of 44 | I've overclocked my card successfully from 1000 to 1150 Mhz and minting doesn't crash...

However these settings only allow me to fluccuate between 135 - 160 MHs/s

I also modified the mint.bat file
Code: [Select]
@REM Start NxtMint

@REM ###################################################
@REM # Rename to mint.bat and make any desired changes #
@REM ###################################################

@echo Starting NxtMint
java -Xmx1024m -Djava.library.path="jni" -jar NxtMint-1.4.0.jar

I modified java -Xmx256m to 512 and 1024 as well... i read about this on a different thread. None the less, same results. My driver has only crashed once when I didn't adjust the voltage high enough to support the overclock in GPU. Stable now but same speeds...
Title: Re: NxtMint Java minter
Post by: julian071 on February 01, 2015, 09:34:50 pm
Make sure you have the latest Catalyst drivers, upgrading from 13 to 14 made my hashrate go from 150 to 220. Update OpenCL for good measure (made no difference for me but don't know which version you are on).

Also, I use version 1.3.0, not 1.4.0 like you do.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 09:45:13 pm
Make sure you have the latest Catalyst drivers, upgrading from 13 to 14 made my hashrate go from 150 to 220. Update OpenCL for good measure (made no difference for me but don't know which version you are on).

Also, I use version 1.3.0, not 1.4.0 like you do.
Great insight, I don't know why my instincts didn't tell me to try an older version of the minter. Great suggestions!!!!!!! As well as upgrade driver... sometimes I have driver conflicts, but I realized later that I found the reason and fixed it (I was getting atimpag.sys BSODs and had to delete every trace of it).

I am going to try all this now one by one see what goes on... I also have the newest OpenCL and SDK as far as I know... I will reinstall however. I will update ATI first, then open CL and try an older minter... I'm sure the link to 1.3.0 is available somewhere in this thread?

Some times you just need a second pair of eyes! Thanks for your input!
Title: Re: NxtMint Java minter
Post by: julian071 on February 01, 2015, 09:47:22 pm
YW and GL minting!
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 10:02:32 pm
YW and GL minting!

OK Wow... That worked... All I did was update Catalyst and I'm getting a steady 200MHs/s. I'll reinstall OpenCL then do a restart... see if that does anything... If not, maybe try and find an older version of the minter.

Thanks again! Waiting on my NXT to come so trying to dial in my system beforehand. Can't really start minting till friday or saturday probably.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 11:19:14 pm
Then for no reason at all I lost 100 MHs/s back down to about 120 MHs/s
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 01, 2015, 11:20:07 pm
Then for no reason at all I lost 100 MHs/s back down to about 120 MHs/s

Told you - tempermental.
Title: Re: NxtMint Java minter
Post by: jshatlee on February 01, 2015, 11:24:39 pm
Then for no reason at all I lost 100 MHs/s back down to about 120 MHs/s

Told you - tempermental.
Lol, after 3 restarts... nothing... Same speeds |Facepalm|
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 02, 2015, 10:40:16 am
HI,

I use a Radeon HD6990 but only hit about 90MH/s (43MH/s per GPU Unit) with 1.3
With 1.4 same settings only 2/3 MH/S
Running Ubuntu 12.04 .

Settings :

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase=****************

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=40

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity.
gpuDevice=0,256,44000
gpuDevice=1,256,44000
# Enable/Disable the GUI (the default is true)
enableGUI=false
Title: Re: NxtMint Java minter
Post by: ptah on February 02, 2015, 11:23:48 am
HI,

I use a Radeon HD6990 but only hit about 90MH/s (43MH/s per GPU Unit) with 1.3
With 1.4 same settings only 2/3 MH/S
......



Same here
5970 2x30+ MH/sm 1.3
6970 46 MH/s with 1.3
It looks like not optimized for old cards with VLIW architecture.
7770 36 MH/s

Title: Re: NxtMint Java minter
Post by: dubmannnn on February 02, 2015, 11:51:16 am
HI,

I use a Radeon HD6990 but only hit about 90MH/s (43MH/s per GPU Unit) with 1.3
With 1.4 same settings only 2/3 MH/S
......


Note to developper??


Same here
5970 2x30+ MH/s
6970 40+ MH/s with 1.2
It looks like not optimized for old cards with VLIW architecture.
Title: Re: NxtMint Java minter
Post by: mnporter2001 on February 02, 2015, 11:56:45 am
HI,

I use a Radeon HD6990 but only hit about 90MH/s (43MH/s per GPU Unit) with 1.3
With 1.4 same settings only 2/3 MH/S
Running Ubuntu 12.04 .

Settings :

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase=****************

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=40

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity.
gpuDevice=0,256,44000
gpuDevice=1,256,44000
# Enable/Disable the GUI (the default is true)
enableGUI=false

I have a few questions.
I'm using a windows computer and I don't see those settings ?

I see these :

nxt.mint.serverAddress=localhost
nxt.mint.currencyCode=URANM
nxt.mint.secretPhrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
nxt.mint.unitsPerMint=50             
nxt.mint.threadPoolSize=1
nxt.mint.initialNonce=0
nxt.mint.isSubmitted=true


Can I add a line like this : nxt.mint.gpuIntensity=10   ?

Also how or where do I look to see what speed I'm hashing at ?

Thanks
Mark
Title: Re: NxtMint Java minter
Post by: bbr on February 02, 2015, 01:31:08 pm
HI,

I use a Radeon HD6990 but only hit about 90MH/s (43MH/s per GPU Unit) with 1.3
With 1.4 same settings only 2/3 MH/S
Running Ubuntu 12.04 .

Settings :

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase=****************

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=40

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=1

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=10

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity.
gpuDevice=0,256,44000
gpuDevice=1,256,44000
# Enable/Disable the GUI (the default is true)
enableGUI=false

I have a few questions.
I'm using a windows computer and I don't see those settings ?

I see these :

nxt.mint.serverAddress=localhost
nxt.mint.currencyCode=URANM
nxt.mint.secretPhrase=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
nxt.mint.unitsPerMint=50             
nxt.mint.threadPoolSize=1
nxt.mint.initialNonce=0
nxt.mint.isSubmitted=true


Can I add a line like this : nxt.mint.gpuIntensity=10   ?

Also how or where do I look to see what speed I'm hashing at ?

Thanks
Mark

You need the GPU minter: https://github.com/ScripterRon/NxtMint/releases (https://github.com/ScripterRon/NxtMint/releases)
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 02, 2015, 03:33:38 pm
Note to developper??


Same here
5970 2x30+ MH/s
6970 40+ MH/s with 1.2
It looks like not optimized for old cards with VLIW architecture.
The OpenCL code isn't optimized for any particular GPU.  If anybody has optimized OpenCL programs for either Scrypt or Keccak25, I'll take a look at incorporating the changes into NxtMint.  I have a single card (NVIDIA 720), so I'm not able to test different configurations myself.  Note that the generated hash must match the hash generated by the NRS reference code in order for the NRS server to accept the currency mint transaction.

The third parameter in gpuDevice defaults to 32 in 1.4.0 instead of 0 as in 1.3.0.  If you want the group count to be based on gpuIntensity, then explicitly specify 0 for the third parameter (for example, gpuDevice=0,256,0).  I'll change it to default to 0 once more in the next release.

I'm also going to add a check for a non-zero account balance when NxtMint starts.  This should catch situations where the passphrase is incorrect since it is unlikely that the resulting account will be funded.
Title: Re: NxtMint Java minter
Post by: findyou on February 02, 2015, 04:24:01 pm
I have a Problem.
I minting, and all its okey but i become an error, called...

Error 4 returned for broadcastTransaction request: Double spenden or insufficient Balance.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 02, 2015, 04:28:10 pm
I have a Problem.
I minting, and all its okey but i become an error, called...

Error 4 returned for broadcastTransaction request: Double spenden or insufficient Balance.
That's an error returned by the NRS server for the currency mint transaction.  Most likely cause is the account has 0 Nxt (the transaction fee is 1 Nxt for each currency transaction).

When NxtMint starts, it displays your account number.  Is it the correct one?  Mistyping the secret phrase will result in a different account number.
Title: Re: NxtMint Java minter
Post by: findyou on February 02, 2015, 04:39:54 pm
Yes, its the right account number and i have nxt Balance in my wallet, but only 0.6 nxt, is that okey?
Title: Re: NxtMint Java minter
Post by: Daedelus on February 02, 2015, 05:13:39 pm
Yes, its the right account number and i have nxt Balance in my wallet, but only 0.6 nxt, is that okey?

It isn't enough, you need 1 NXT per mint.
Title: Re: NxtMint Java minter
Post by: findyou on February 02, 2015, 07:39:17 pm
Okey thx , know it goes :)

but another question , what is the best to minting , i mintet URANM , but now i have no NXT coins in my wallet , all it goes for the fee and nothing is incoming ?

i heard EGOLD is good to minting , but what is the best number of units to generate ?

i have a ati radeon r9 270 and i minting with 80 MH/s , is that okey ?

thanks for your help , NXT to the moon :)
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 02, 2015, 08:09:03 pm
but another question , what is the best to minting , i mintet URANM , but now i have no NXT coins in my wallet , all it goes for the fee and nothing is incoming ?
Minting does not create Nxt, it creates coins for whatever currency you specify.  In order to exchange the coins for Nxt, you need to find a buy offer on the Monetary System exchange for that currency.

Each minting transaction will cost you 1 Nxt.  And each buy request that is satisfied will cost you 1 Nxt.  So your goal is to set the number of units to mint high enough to make a profit.  Taking EGOLD as an example, it is currently selling for around 0.05 Nxt.  So you need to sell at least 40 EGOLD to make a profit of 1 Nxt (40*0.05=2 Nxt minus 1 Nxt transaction fee).  However, it also costs 1 Nxt for each minting transaction, so you need to mint 60 EGOLD at a time (60*0.05=3 Nxt minus 2 Nxt transaction fees) to make a 1 Nxt profit.  The more units you mint at once, the greater your profit.  However, if you set the units too high, you might not mint anything (the difficulty increases as you increase the number of units).
Title: Re: NxtMint Java minter
Post by: nite138 on February 02, 2015, 09:06:58 pm
ScripterRon,

Thanks for the minter!

I have been running into this error a few times today and I am hoping you might have some feedback.  You made comment about a similar issue, however this is with EGOLD and I can't figure out what is the cause (too much intensity, more mv+ on the gpu, etc).  The below issue happened on v1.3 and with VNC open at the time

12:53:05 SEVERE Nxt.issueRequest: Error 4 returned for broadcastTransaction requ
est: nxt.NxtException$NotCurrentlyValidException: Hash doesn't meet target {"cur
rency":"5775213290661997199","units":5000000,"counter":181,"version.CurrencyMint
ing":1,"nonce":-9191694230504894365}
12:53:05 SEVERE Mint.mint: Server rejected 'currencyMint' transaction - discardi
ng

Also, I'm noticing with 1.4, that instead of 270+mh on r9290 card, I get like 15 to 20mh
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 02, 2015, 09:22:52 pm
I have been running into this error a few times today and I am hoping you might have some feedback.  You made comment about a similar issue, however this is with EGOLD and I can't figure out what is the cause (too much intensity, more mv+ on the gpu, etc).  The below issue happened on v1.3 and with VNC open at the time

12:53:05 SEVERE Nxt.issueRequest: Error 4 returned for broadcastTransaction requ
est: nxt.NxtException$NotCurrentlyValidException: Hash doesn't meet target {"cur
rency":"5775213290661997199","units":5000000,"counter":181,"version.CurrencyMint
ing":1,"nonce":-9191694230504894365}
12:53:05 SEVERE Mint.mint: Server rejected 'currencyMint' transaction - discardi
ng

Also, I'm noticing with 1.4, that instead of 270+mh on r9290 card, I get like 15 to 20mh
I haven't changed the algorithms in 1.4.  Keccak25 isn't memory-intensive, it is a 25-pass loop consisting of a long series of XOR, AND and NOT operations.  What did you specify for gpuDevice?  Note that the group count defaults to 32 in 1.4, so that could be the cause of the drop if you didn't specify it.  Specify 0 to get the 1.3 behavior (ex, gpuDevice=0,256,0).  It will default to 0 once more in 1.5 (I was trying to work around some Scrypt problems and didn't think about the effect for Keccak25).

To see if it is a GPU load problem, try minting with a single GPU work item (gpuDevice=0,1,1).  Use a small units value (such as units=0.0001) so you get a fairly quick result.  If that works, then I think the problem is with your card since there is a single Keccak25 kernel which is executed multiple times based on the local and global sizes.

The algorithm is the same for CPU and GPU.  So you can also try minting using just the CPU and see if the transaction is accepted by the server. 

Depending on how many registers are available on your card, some of the register data could be spilling over to global memory.  This could introduce memory latency problems which could cause corrupted data in some edge cases.  I'd like to reduce the register usage, but Keccak25 requires a 5x5 state matrix, which is accessed and modified for each pass.
Title: Re: NxtMint Java minter
Post by: nite138 on February 02, 2015, 09:38:33 pm
Thanks for the quick reply.

Yes, I'm using gpudevice=0,256

I'm thinking that the problem is with either overclocking the card and not enough mv+ or perhaps I just needed to reboot my machine.  LOL

I'll give gpudevice=0,256,0 a shot with 1.4
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 03, 2015, 10:40:51 am
For some reason 1.4 only yields about 2 MH/s.
I tried 0,256,0 with 1024 intensity on 1.4 vs 0,256,44000 intensity 10 on 1.3
Note the different GPU devicename.

11:29:23 INFO Main.buildGpuList: GPU device 0: Cayman, Driver 1573.4 (VM)
  1904MB global memory, 32KB local memory, 24 compute units, Max work group size 256
11:29:23 INFO Main.buildGpuList: GPU device 1: Cayman, Driver 1573.4 (VM)
  1953MB global memory, 32KB local memory, 24 compute units, Max work group size 256
11:29:23 INFO HashFunction.<init>: JNI library NxtMint_x86 loaded - using native CPU hash routines
11:29:23 INFO MintWorker.run: CPU worker 0 starting
11:29:23 FINE GpuKnv25.<init>: GPU 0: Local size 256, Global size 1048576, Passes 1
11:29:23 INFO MintWorker.run: GPU worker 1 starting on GPU 0
11:29:23 FINE GpuKnv25.<init>: GPU 1: Local size 256, Global size 1048576, Passes 1
11:29:23 INFO MintWorker.run: GPU worker 2 starting on GPU 1
11:29:23 FINE MintWorker.run: Worker 0 starting on counter 20
11:29:23 FINE MintWorker.run: Worker 1 starting on counter 20
11:29:23 FINE MintWorker.run: Worker 2 starting on counter 20
11:30:23 FINE MintWorker.run: Worker 2: 154.14 MHash, 2.5690 MHash/s
11:30:23 FINE MintWorker.run: Worker 1: 154.14 MHash, 2.5690 MHash/s
11:30:26 FINE MintWorker.run: Worker 0: 23.07 MHash, 0.3721 MHash/s
11:31:23 FINE MintWorker.run: Worker 2: 308.28 MHash, 2.5690 MHash/s
11:31:24 FINE MintWorker.run: Worker 1: 308.28 MHash, 2.5690 MHash/s
11:31:28 FINE MintWorker.run: Worker 0: 46.14 MHash, 0.3691 MHash/s
11:32:23 FINE MintWorker.run: Worker 2: 462.42 MHash, 2.5690 MHash/s
11:32:24 FINE MintWorker.run: Worker 1: 462.42 MHash, 2.5690 MHash/s
11:32:31 FINE MintWorker.run: Worker 0: 69.21 MHash, 0.3701 MHash/s

1.3 Gives 43MH/S


11:33:09 INFO Main.lambda$null$2: GPU device 0: AMD Accelerated Parallel Processing
  1904MB global memory, 32KB local memory, 24 compute units, Max work group size 256
11:33:09 INFO Main.lambda$null$2: GPU device 1: AMD Accelerated Parallel Processing
  1953MB global memory, 32KB local memory, 24 compute units, Max work group size 256
11:33:09 INFO HashFunction.<init>: JNI library NxtMint_x86 loaded - using native hash routines
11:33:09 INFO MintWorker.run: CPU worker 0 starting
11:33:09 FINE GpuKnv25.<init>: GPU local size 256, global size 11264000
11:33:09 FINE GpuKnv25.<init>: GPU local size 256, global size 11264000
11:33:09 INFO MintWorker.run: GPU worker 1 starting on GPU 0
11:33:09 INFO MintWorker.run: GPU worker 2 starting on GPU 1
11:33:09 FINE MintWorker.run: Worker 1 starting on counter 20
11:33:09 FINE MintWorker.run: Worker 2 starting on counter 20
11:33:09 FINE MintWorker.run: Worker 0 starting on counter 20
11:34:09 FINE MintWorker.run: Worker 1: 2,601.98 MHash, 43.3664 MHash/s
11:34:09 FINE MintWorker.run: Worker 2: 2,601.98 MHash, 43.3664 MHash/s
11:34:11 FINE MintWorker.run: Worker 0: 23.07 MHash, 0.3721 MHash/s
11:35:09 FINE MintWorker.run: Worker 1: 5,226.50 MHash, 43.5541 MHash/s
11:35:09 FINE MintWorker.run: Worker 2: 5,226.50 MHash, 43.5541 MHash/s
11:35:14 FINE MintWorker.run: Worker 0: 46.14 MHash, 0.3691 MHash/s
11:36:09 FINE MintWorker.run: Worker 1: 7,851.01 MHash, 43.6167 MHash/s
11:36:09 FINE MintWorker.run: Worker 2: 7,851.01 MHash, 43.6167 MHash/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 03:31:43 pm
For some reason 1.4 only yields about 2 MH/s.
I tried 0,256,0 with 1024 intensity on 1.4 vs 0,256,44000 intensity 10 on 1.3
Note the different GPU devicename.

11:29:23 FINE GpuKnv25.<init>: GPU 0: Local size 256, Global size 1048576, Passes 1
11:29:23 FINE GpuKnv25.<init>: GPU 1: Local size 256, Global size 1048576, Passes 1

1.3 Gives 43MH/S

11:33:09 FINE GpuKnv25.<init>: GPU local size 256, global size 11264000
11:33:09 FINE GpuKnv25.<init>: GPU local size 256, global size 11264000
The global size is the number of work items executed in a single pass.  You have 1/10 the number of executions for the 1.4 test.    I didn't know that people were specifying such large intensity values.  I'll change NxtMint to allow intensity to go up to 1024*1024 (1,048,576).  The global size field is a 32-bit integer, so there is an upper limit on the size.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 03, 2015, 04:17:09 pm
Well I am increasing the intesity up the the level where there is no increase in hashrate.
So I am not setting these high values on purpose.

To be honest I still have no idea what the values represent, and how to apply the specs of my cars on the values.
e.g gpuspeed, memory, shaders etc.

All I know is that the 6990 matches the 290x when scryptmining  in cgminer.

If you need any specifications please let me know and i am happy to beta your code.

Grts.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 04:37:29 pm
A test version of NxtMint is available on Google Driver https://drive.google.com/open?id=0B1312_6UqRHPS3JZQUFDQUNTSEU&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPS3JZQUFDQUNTSEU&authuser=0).  You can now set gpuIntensity up to 1 million.

I updated the README to try and explain gpuIntensity and gpuDevice.  A suggestion is to start with gpuDevice=0,256,0 and then keep increasing gpuIntensity until the hash rate stops improving or your display becomes too sluggish.  It is possible that hash rate might improve if the work group size is equal to the number of cores in a compute unit.  NxtMint will display the number of compute units for your adapter but has no way to get the number of cores.  Often the device driver information displayed by the system device manager will contain the number of cores.  Or you can check the technical specifications for your card (note that AMD and NVIDIA might license the card to another manufacturer who can tweak the specifications by adding additional compute units to the card).

Scrypt is a special case since it requires a large memory allocation for each work item.  This places an upper limit on the global size that can be supported.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 03, 2015, 04:55:42 pm
Thanks, I will test and report back.. :)
Since I run linux with no gui I can not report on graphics sluggishness.
I will hold an eye on the temperature..

And about my specs, clinfo gives :

  Device Type:                CL_DEVICE_TYPE_GPU
  Vendor ID:                1002h
  Board name:                AMD Radeon HD 6900 Series
  Device Topology:             PCI[ B#8, D#0, F#0 ]
  Max compute units:             24
  Max work items dimensions:          3
    Max work items[0]:             256
    Max work items[1]:             256
    Max work items[2]:             256
  Max work group size:             256
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 03, 2015, 05:11:48 pm
Whatever value I choose for intensity the hashrate stays at around 2.5MH/S
Seems there is a bottleneck somewhere...?
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 06:34:47 pm
Whatever value I choose for intensity the hashrate stays at around 2.5MH/S
Seems there is a bottleneck somewhere...?
What did you set gpuDevice to?  What did NxtMint display for local size, global size and passes?  The goal is to have 1 pass with as large a global size as possible (global size is the number of work items being executed).  If you set the group count to 0, NxtMint will calculate the global size based on gpuIntensity (you want the work group size to divide evenly into 1024 in this case).

The AMD HD 6900 spec says there are 1408 stream processors.  I don't know the exact number on your particular card (depends on the card manufacturer).  The Linux device configuration might have this information.  So a global size that is a multiple of 1408 might yield some improvement.  Also, all work items in the same work group execute on the same compute unit.  So picking a work group size that is a multiple of the number of processors per compute unit might also yield some improvement.  Since 1408 isn't a multiple of 24, I suspect you have more than 1408 stream processors on your card.

My NVIDIA GT 720 gets 32 MH/s for EGOLD with gpuIntensity=1024.  The card has 192 cores per compute unit but just 2 compute units.  I get slightly better performance with a work group size of 192 instead of 256.

Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\NxtMint-1.4.0.jar
01:09:53 INFO Main.main: Java Nxt Mint Version 1.4.0
01:09:53 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
01:09:53 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
01:09:53 INFO Main.main: Minting 60.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU  intensity
01:09:53 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
01:09:54 INFO Main.buildGpuList: GPU device 0: GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
01:09:55 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
01:09:55 FINE GpuKnv25.<init>: GPU 0: Local size 192, Global size 1048704, Passes 1
01:09:55 INFO MintWorker.run: GPU worker 0 starting on GPU 0
01:09:55 FINE MintWorker.run: Worker 0 starting on counter 255
01:10:55 FINE MintWorker.run: Worker 0: 1,925.42 MHash, 32.0903 MHash/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 06:48:24 pm
Hmm - I get even better performance with gpuDevice=0,128,0.  So you really need to just experiment to see what works best.  I think NVIDIA cards always prefer a work group size that is a multiple of 32.  I don't know about AMD cards.  It all depends on the internal architecture of the chips.

Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\NxtMint-1.4.0.jar
01:43:08 INFO Main.main: Java Nxt Mint Version 1.4.0
01:43:08 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
01:43:08 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
01:43:08 INFO Main.main: Minting 60.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
01:43:08 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
01:43:09 INFO Main.buildGpuList: GPU device 0: GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
01:43:10 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
01:43:10 FINE GpuKnv25.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
01:43:10 INFO MintWorker.run: GPU worker 0 starting on GPU 0
01:43:10 FINE MintWorker.run: Worker 0 starting on counter 255
01:44:10 FINE MintWorker.run: Worker 0: 2,063.60 MHash, 34.3933 MHash/s
01:45:10 FINE MintWorker.run: Worker 0: 4,126.15 MHash, 34.3846 MHash/s
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 03, 2015, 08:05:48 pm
Whatever value I choose for intensity the hashrate stays at around 2.5MH/S
Seems there is a bottleneck somewhere...?
What did you set gpuDevice to?  What did NxtMint display for local size, global size and passes?  The goal is to have 1 pass with as large a global size as possible (global size is the number of work items being executed).  If you set the group count to 0, NxtMint will calculate the global size based on gpuIntensity (you want the work group size to divide evenly into 1024 in this case).

The AMD HD 6900 spec says there are 1408 stream processors.  I don't know the exact number on your particular card (depends on the card manufacturer).  The Linux device configuration might have this information.  So a global size that is a multiple of 1408 might yield some improvement.  Also, all work items in the same work group execute on the same compute unit.  So picking a work group size that is a multiple of the number of processors per compute unit might also yield some improvement.  Since 1408 isn't a multiple of 24, I suspect you have more than 1408 stream processors on your card.

My NVIDIA GT 720 gets 32 MH/s for EGOLD with gpuIntensity=1024.  The card has 192 cores per compute unit but just 2 compute units.  I get slightly better performance with a work group size of 192 instead of 256.

Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\NxtMint-1.4.0.jar
01:09:53 INFO Main.main: Java Nxt Mint Version 1.4.0
01:09:53 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
01:09:53 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
01:09:53 INFO Main.main: Minting 60.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU  intensity
01:09:53 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
01:09:54 INFO Main.buildGpuList: GPU device 0: GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
01:09:55 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
01:09:55 FINE GpuKnv25.<init>: GPU 0: Local size 192, Global size 1048704, Passes 1
01:09:55 INFO MintWorker.run: GPU worker 0 starting on GPU 0
01:09:55 FINE MintWorker.run: Worker 0 starting on counter 255
01:10:55 FINE MintWorker.run: Worker 0: 1,925.42 MHash, 32.0903 MHash/s

The minter's gonna kinda suck for 6xxx cards - VLIW4 have hardware vectors, and the OpenCL compiler SUCKS with ulong, especially for them.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 08:35:52 pm
The minter's gonna kinda suck for 6xxx cards - VLIW4 have hardware vectors, and the OpenCL compiler SUCKS with ulong, especially for them.

What do you suggest?  Switching to uint didn't make a noticeable difference for my NVIDIA card, but I can do that if it will help AMD cards.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 03, 2015, 08:44:33 pm
The minter's gonna kinda suck for 6xxx cards - VLIW4 have hardware vectors, and the OpenCL compiler SUCKS with ulong, especially for them.

What do you suggest?  Switching to uint didn't make a noticeable difference for my NVIDIA card, but I can do that if it will help AMD cards.

Vectorization will help 6xxx. But hardly anyone uses pre-GCN cards anymore, anyway.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 03, 2015, 10:09:24 pm
I have tried:

gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0

Gives 2.5MH/S





Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 10:38:45 pm
I have tried:

gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0

Gives 2.5MH/S
Are you using the test version that I posted today?  Increase gpuIntensity to 44000 and see if the hash rate improves.  If it doesn't, I don't know what is causing the problem since the Keccak25 algorithm didn't change between 1.3 and 1.4.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 03, 2015, 10:53:18 pm
I have tried:

gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0

Gives 2.5MH/S
I installed NxtMint 1.3.0 and I'm getting 1/2 of the hash rate that I get with 1.4.0.  I'm getting 34.3 MH/s on 1.4.0 and 17.9 MH/s on 1.3.0.  The gpuIntensity and global size are the same, so each test should be performing the same number of hashes per kernel execution.  But evidently Aparapi does something special for AMD cards that I'm not doing, but I don't know what it is.

Code: [Select]
C:\Bitcoin\NxtMint\1.3.0>java -Xmx256m -Djava.library.path="aparapi;jni" -jar NxtMint-1.3.0.jar
05:41:01 INFO Main.main: Java Nxt Mint Version 1.3.0
05:41:01 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
05:41:01 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
05:41:01 INFO Main.main: Minting 60.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU
intensity
05:41:01 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
05:41:02 INFO Main.lambda$null$2: GPU device 0: NVIDIA CUDA
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
05:41:03 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native hash routines
05:41:03 FINE GpuKnv25.<init>: GPU local size 128, global size 1048576
05:41:03 INFO MintWorker.run: GPU worker 0 starting on GPU 0
05:41:03 FINE MintWorker.run: Worker 0 starting on counter 255
05:42:03 FINE MintWorker.run: Worker 0: 1,075.84 MHash, 17.9306 MHash/s
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 03, 2015, 11:02:34 pm
I have tried:

gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0

Gives 2.5MH/S
I installed NxtMint 1.3.0 and I'm getting 1/2 of the hash rate that I get with 1.4.0.  I'm getting 34.3 MH/s on 1.4.0 and 17.9 MH/s on 1.3.0.  The gpuIntensity and global size are the same, so each test should be performing the same number of hashes per kernel execution.  But evidently Aparapi does something special for AMD cards that I'm not doing, but I don't know what it is.

Code: [Select]
C:\Bitcoin\NxtMint\1.3.0>java -Xmx256m -Djava.library.path="aparapi;jni" -jar NxtMint-1.3.0.jar
05:41:01 INFO Main.main: Java Nxt Mint Version 1.3.0
05:41:01 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
05:41:01 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
05:41:01 INFO Main.main: Minting 60.000000 units of EGOLD for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU
intensity
05:41:01 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
05:41:02 INFO Main.lambda$null$2: GPU device 0: NVIDIA CUDA
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
05:41:03 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native hash routines
05:41:03 FINE GpuKnv25.<init>: GPU local size 128, global size 1048576
05:41:03 INFO MintWorker.run: GPU worker 0 starting on GPU 0
05:41:03 FINE MintWorker.run: Worker 0 starting on counter 255
05:42:03 FINE MintWorker.run: Worker 0: 1,075.84 MHash, 17.9306 MHash/s

It probably changes the code somewhat, but it's still pretty bad.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 04, 2015, 01:04:43 am
I have tried:

gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0

Gives 2.5MH/S
I changed the test version of NxtMint on Google Drive to use scalars instead of arrays in the Keccak25 algorithm.  If you get a chance, try it out and let me know if that improves the AMD performance.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 04, 2015, 09:10:05 am
Ok ran the latest google drive version:

1.4 Latest
09: 38: 59 INFO Main. main: Java Nxt Mint Version 1.4.0
09: 38: 59 INFO Main. main: Using Nxt node at localh0st: 7876
09: 38: 59 INFO Main. main: Minting 40.000000 units of EGOLD for account NXT-Z4RD-3PZW-RA7Y-4JNUR: 1 CPU threads, 44000 GPU intensity
09: 38: 59 INFO Nxt. init: API node=localh0st, API port=7876
09: 38: 59 INFO Main. buildGpuList: GPU device 0: Cayman, Driver 1573.4 (VM)
  1904MB global memory, 32KB local memory, 24 compute units, Max work group size 256
09: 38: 59 INFO Main. buildGpuList: GPU device 1: Cayman, Driver 1573.4 (VM)
  1953MB global memory, 32KB local memory, 24 compute units, Max work group size 256
09: 39: 00 INFO HashFunction. <init>: JNI library NxtMint_x86 loaded - using native CPU hash routines
09: 39: 00 INFO MintWorker. run: CPU worker 0 starting
09: 39: 01 FINE GpuKnv25. <init>: GPU 0: Local size 256, Global size 45056000, Passes 1
09: 39: 01 INFO MintWorker. run: GPU worker 1 starting on GPU 0
09: 39: 01 FINE GpuKnv25. <init>: GPU 1: Local size 256, Global size 45056000, Passes 1
09: 39: 01 INFO MintWorker. run: GPU worker 2 starting on GPU 1
09: 39: 01 FINE MintWorker. run: Worker 0 starting on counter 36
09: 39: 01 FINE MintWorker. run: Worker 1 starting on counter 36
09: 39: 01 FINE MintWorker. run: Worker 2 starting on counter 36
09: 40: 04 FINE MintWorker. run: Worker 0: 23.07 MHash, 0.3721 MHash/s
09: 40: 11 FINE MintWorker. run: Worker 2: 180.22 MHash, 2.5746 MHash/s
09: 40: 11 FINE MintWorker. run: Worker 1: 180.22 MHash, 2.5746 MHash/s
09: 41: 06 FINE MintWorker. run: Worker 0: 46.14 MHash, 0.3691 MHash/s
09: 41: 21 FINE MintWorker. run: Worker 2: 360.45 MHash, 2.5746 MHash/s
09: 41: 21 FINE MintWorker. run: Worker 1: 360.45 MHash, 2.5746 MHash/s


1.3
[
Starting NxtMint
09: 53: 29 INFO Main. main: Java Nxt Mint Version 1.3.0
09: 53: 29 INFO Main. main: Using Nxt node at localh0st: 7876
09: 53: 29 INFO Main. main: Minting 40.000000 units of EGOLD for account NXT-Z4RD-3PZW-RA7Y-4JNUR: 0 CPU threads, 10 GPU intensity
09: 53: 29 INFO Nxt. init: API node=localh0st, API port=7876
09: 53: 30 INFO Main. lambda$null$2: GPU device 0: AMD Accelerated Parallel Processing
  1904MB global memory, 32KB local memory, 24 compute units, Max work group size 256
09: 53: 30 INFO Main. lambda$null$2: GPU device 1: AMD Accelerated Parallel Processing
  1953MB global memory, 32KB local memory, 24 compute units, Max work group size 256
09: 53: 31 INFO HashFunction. <init>: JNI library NxtMint_x86 loaded - using native hash routines
09: 53: 31 FINE GpuKnv25. <init>: GPU local size 256, global size 11264000
09: 53: 31 FINE GpuKnv25. <init>: GPU local size 256, global size 11264000
09: 53: 31 INFO MintWorker. run: GPU worker 0 starting on GPU 0
09: 53: 31 INFO MintWorker. run: GPU worker 1 starting on GPU 1
09: 53: 31 FINE MintWorker. run: Worker 1 starting on counter 36
09: 53: 31 FINE MintWorker. run: Worker 0 starting on counter 36
09: 54: 31 FINE MintWorker. run: Worker 1: 2,601.98 MHash, 43.3664 MHash/s
09: 54: 31 FINE MintWorker. run: Worker 0: 2,601.98 MHash, 43.3664 MHash/s


The thing that caught my eye is the CPU load..
xorg starts with 1.4 and consumes cpu resources, 1.3 does not shows this behaviour.

top - 10:00:23 up 2 days, 23:18,  6 users,  load average: 0.85, 0.78, 1.06
Tasks: 215 total,   2 running, 211 sleeping,   1 stopped,   1 zombie
Cpu(s): 16.6%us,  0.8%sy,  0.0%ni, 81.7%id,  0.2%wa,  0.0%hi,  0.8%si,  0.0%st
Mem:   4129320k total,  3084376k used,  1044944k free,   324060k buffers
Swap:  4190204k total,      288k used,  4189916k free,  1685748k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                             
 1300 root      20   0  530m 287m 238m R   97  7.1  27:05.59 Xorg                                                                                                                 
   38 root      20   0     0    0    0 S    4  0.0   2:55.42 kworker/0:1                                                                                                         
25218 jasper    20   0 1404m 183m  10m S    2  4.6   0:17.19 java                                                                                                                 
    1 root      20   0  3664 2072 1300 S    0  0.1   0:00.81 init
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 04, 2015, 09:18:11 am
Also 1.4 gives :

09:59:38 INFO HashFunction.<init>: JNI library NxtMint_x86 loaded - using native CPU hash routines

1.3 :

10:15:19 INFO HashFunction.<init>: JNI library NxtMint_x86 loaded - using native hash routines

Does this implies that the CPU in involved in 1.4?
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 04, 2015, 12:01:54 pm
I also found this comment on page  7 :
Want to try the 1.1.0 public released, for the sake of test.

Quote from: Jimmy2011 on January 21, 2015, 09:22:51 am

Quote
Quote from: Jimmy2011 on January 21, 2015, 09:22:51 am


    I have 16 compute units as following.  BTW, it seems that the latest version has poor performance as minting EGOLD compared with the public released 1.1.0 version.

    Code: [Select]

    05:17:34 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, 3072MB global memory
    , 48KB local memory, 16 compute units

I also have poor performance, in a 6990, each GPU now gives me 45mhash and before it was giving me 100mhash, so I don't gain anything using the whole card
Each GPU has 1536 cores and 24 compute units
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 04, 2015, 03:04:12 pm
Ok ran the latest google drive version:
Since there is a single pass, the CPU time is in OpenCL as it schedules additional kernel executions.  Java is involved when it is necessary to schedule multiple passes.  There comes a point where increasing the global size does not increase the hash rate.

I don't know what else to do for your card.  I thought the bottleneck was memory references, but switching to scalar values didn't change that.  You should stay with 1.3 since that works best for you.  I'll keep 1.3 available for download for other users who are experiencing the same problem.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 04, 2015, 04:25:02 pm
But can you pinpoint a codechange in the post where i quote a the user also using the 6990? He experienced 1/2 drop in hashrate somewhere in the 1.1.0 releases.

i searched the git, but i could not find a full version history.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 04, 2015, 06:32:40 pm
But can you pinpoint a codechange in the post where i quote a the user also using the 6990? He experienced 1/2 drop in hashrate somewhere in the 1.1.0 releases.

i searched the git, but i could not find a full version history.
You can see the changes by looking at the commits prior to a release.

What we really need to do is profile your card to see where the time is being spent.  But I can't do that since I don't have the card.  It could be something like no hardware support for 64-bit integers resulting in software emulation.  Or maybe a problem with shifting 64-bit integers.  Or perhaps the rotate() built-in function performs poorly on your card.

I read a post in one of the AMD forums which recommended setting the global size to a multiple of the number of stream processors  times 4.  So if you have 1408 stream processors, setting global size to a multiple of 5632 might help.  I'd try gpuDevice=0,64,88 and gpuIntensity=50 and see what you get.  That would give you a global size of 64*88=5632.  You could then try increasing the work group size (64, 128, 256) and the work group count (88, 176, 352, etc).  In order to fully utilize the processors, you want the hash count to be at least as large as the global size.  The hash count for each round is gpuIntensity*1024 and is adjusted by NxtMint so that it is evenly divided by the global size.  For example, for gpuIntensity=10, the hash count is 10240.  If the global size is 5632, the adjusted hash count will be (10240+5631)/5632*5632=11264.  If the hash count is less than the global size, the global size will be reduced to match the hash count and then adjusted to be a multiple of the work group size.  When the hash count is greater than the global size, NxtMint will enqueue the kernel multiple times (the pass count).  So the goal is to keep increasing the global size until the hash rate stabilizes, keeping the hash count high enough to fully utilitize the global size.  The best work group size depends on the individual card.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 04, 2015, 06:59:40 pm
But can you pinpoint a codechange in the post where i quote a the user also using the 6990? He experienced 1/2 drop in hashrate somewhere in the 1.1.0 releases.

i searched the git, but i could not find a full version history.
I found a research paper showing performance problems on some AMD cards when an atomic operation is included in the program, even if the operation is never performed.  I updated the test version on Google Drive to remove the atomic operation (it opens a race condition but is probably not a problem unless two threads simultaneously solve the target).
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 04, 2015, 07:01:14 pm
But can you pinpoint a codechange in the post where i quote a the user also using the 6990? He experienced 1/2 drop in hashrate somewhere in the 1.1.0 releases.

i searched the git, but i could not find a full version history.
I found a research paper showing performance problems on some AMD cards when an atomic operation is included in the program, even if the operation is never performed.  I updated the test version on Google Drive to remove the atomic operation (it opens a race condition but is probably not a problem unless two threads simultaneously solve the target).

Oh, thanks. That reminds me, I removed the done thing and set the solution to zero (also seperated read-only stuff from the output) - the solution should probably be set atomically.
Title: Re: NxtMint Java minter
Post by: mnporter2001 on February 05, 2015, 10:10:24 am
Im having some issues

When i click on mint.bat the black window opens for about 2 seconds and then shuts ?

Can some one confirm I have the right files in the right place, and some advice on perhaps where i have gone wrong

Thanks
Mark

(http://mporterpainting.com/img/appdata.png)

(http://mporterpainting.com/img/nxtjav.png)
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 05, 2015, 02:31:33 pm
I was able to pinpoint the codechange and it shows a 1/2 hash droprate at version 55a99116f9db4d64c9ef92393c640140b9587519, this is where SHA256 GPU Support is added.
The previous version runs at ~100MH;S (88c131b16068e752a043e954bf3b14af0af451f6)

Code: [Select]
03:50:00 INFO Main.main: Java Nxt Mint Version 1.0.0_55a99116f9db4d64c9ef92393c640140b9587519
03:50:00 INFO Main.main: Application data path: /home/user/.NxtMint
03:50:00 INFO Main.main: Using Nxt node at localhost:7876
03:50:00 INFO Main.main: Minting 40.000000 units of EGOLD for account NXT-Z4RD-3PZW-RA7Y-4JNUR: 0 CPU threads, 1024 GPU intensity
03:50:00 INFO Nxt.init: API node=localhost, API port=7876
03:50:00 FINE MintWorker.run: Worker 0 starting on counter 40
03:51:00 FINE MintWorker.run: Worker 0: 2,537.55 MHash, 42.2926 MHash/s
03:52:00 FINE MintWorker.run: Worker 0: 5,109.71 MHash, 42.5809 MHash/s

Code: [Select]
Starting NxtMint
03:46:04 INFO Main.main: Java Nxt Mint Version 1.0.0_88
03:46:04 INFO Main.main: Application data path: /home/user/.NxtMint
03:46:04 INFO Main.main: Using Nxt node at localhost:7876
03:46:04 INFO Main.main: Minting 40.000000 units of EGOLD for account NXT-Z4RD-3PZW-RA7Y-4JNUR: 0 CPU threads, 1024 GPU intensity
03:46:04 INFO Nxt.init: API node=localhost, API port=7876
03:46:04 FINE MintWorker.run: Worker 0 starting on counter 40
03:47:04 FINE MintWorker.run: Worker 0: 5,779.75 MHash, 96.33 MHash/s
03:48:04 FINE MintWorker.run: Worker 0: 11,639.19 MHash, 96.99 MHash/s
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 03:22:35 pm
I was able to pinpoint the codechange and it shows a 1/2 hash droprate at version 55a99116f9db4d64c9ef92393c640140b9587519, this is where SHA256 GPU Support is added.
The previous version runs at ~100MH;S (88c131b16068e752a043e954bf3b14af0af451f6)

I don't see anything that would change the hash rate.  The only change to GpuKnv25 was in the intensity calculation.  It used to have a hard-coded multiplier of 1024.  This was changed to call the getScale() method, which returns a multiplier of 1024 for GpuKnv25.

If that were the problem, it would affect NVIDIA as well as AMD cards since it is not dependent on the card.  There must be something else, but I'm not seeing it.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 03:27:27 pm
Im having some issues

When i click on mint.bat the black window opens for about 2 seconds and then shuts ?

Can some one confirm I have the right files in the right place, and some advice on perhaps where i have gone wrong

Thanks
Mark

If you didn't change logging.properties, there should be a NxtMint.log file in your temporary directory (%LOCALAPPDATA%\temp)

If you can't find NxtMint.log, open a command window and run mint.bat from there so you can see the console error messages.  Or modify mint.bat and add a line after the java line:
    pause
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 04:21:47 pm
I was able to pinpoint the codechange and it shows a 1/2 hash droprate at version 55a99116f9db4d64c9ef92393c640140b9587519, this is where SHA256 GPU Support is added.
The previous version runs at ~100MH;S (88c131b16068e752a043e954bf3b14af0af451f6)

I don't see anything that would change the hash rate.  The only change to GpuKnv25 was in the intensity calculation.  It used to have a hard-coded multiplier of 1024.  This was changed to call the getScale() method, which returns a multiplier of 1024 for GpuKnv25.

If that were the problem, it would affect NVIDIA as well as AMD cards since it is not dependent on the card.  There must be something else, but I'm not seeing it.
The problem might be branch divergence.  This doesn't seem to bother NVIDIA but it is a problem for AMD.  Try the test version of Nxt-1.4.0 on Google Drive and see how it goes. 

https://drive.google.com/open?id=0B1312_6UqRHPS3JZQUFDQUNTSEU&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPS3JZQUFDQUNTSEU&authuser=0)
Title: Re: NxtMint Java minter
Post by: mnporter2001 on February 05, 2015, 04:52:23 pm
Im having some issues

When i click on mint.bat the black window opens for about 2 seconds and then shuts ?

Can some one confirm I have the right files in the right place, and some advice on perhaps where i have gone wrong

Thanks
Mark

If you didn't change logging.properties, there should be a NxtMint.log file in your temporary directory (%LOCALAPPDATA%\temp)

If you can't find NxtMint.log, open a command window and run mint.bat from there so you can see the console error messages.  Or modify mint.bat and add a line after the java line:
    pause

This is what it says


04:45:14 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: Secret phrase not specified
   at org.ScripterRon.NxtMint.Main.main(Main.java:205)


Its odd as the secret phrase is there in the NxtMint.conf inside the appdata/roaming/nxtmint folder ?

Your help is appreciated and i would really like to get this working

Thanks
Mark
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 05:04:50 pm
This is what it says


04:45:14 SEVERE Main.main: Exception during program initialization
java.lang.IllegalArgumentException: Secret phrase not specified
   at org.ScripterRon.NxtMint.Main.main(Main.java:205)


Its odd as the secret phrase is there in the NxtMint.conf inside the appdata/roaming/nxtmint folder ?

Your help is appreciated and i would really like to get this working

Thanks
Mark
I don't know.  Either the secretphrase keyword is mispelled or NxtMint isn't seeing the file.  NxtMint should have displayed the application data path when it started - make sure it is correct.

Make sure that secretPhrase is not specified multiple times and that it is all on one line:
    secretPhrase=My Very Secret Phrase

Try forcing an exception by specifying 'cpuThreads=1X'.  This will cause a number format exception while reading NxtMint.conf.  If you get the exception, then NxtMint.conf is seeing the file.

Are there special characters in your secret phrase?  NxtMint reads the configuration file using the local character set, so that shouldn't be a problem unless the Windows character set doesn't match your editor character set.

It could also be a Unix vs Windows problem.  I use Notepad++ which handles NL<->CR/LF automatically.  I took a look at sample.NxtMint.conf using Notepad and it is in Unix format (NL instead of CR/LF).  Was everything on a single line when your edited the file?  I'll add a step to the package script to ensure that Windows text files have CR/LF in the future.
Title: Re: NxtMint Java minter
Post by: mnporter2001 on February 05, 2015, 05:22:44 pm
Ive just double checked everything and it all looks as it should according to the read me file.

And my secret phrase is the 12 word nxt compiled one

My mint.bat file is this :
Code: [Select]
@REM Start NxtMint

@REM ###################################################
@REM # Rename to mint.bat and make any desired changes #
@REM ###################################################

@echo Starting NxtMint
java -Xmx256m -Djava.library.path="jni" -jar NxtMint-1.4.0.jar


Does that look correct, I'm at a loss as the secret phrase is defo there and I dont understand why its telling me it isn't

Cheers
Mark
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 05, 2015, 05:59:55 pm
HI,

This improved the hashrate of 1.4.0 a bit :

Code: [Select]
Starting NxtMint
06:56:44 INFO Main.main: Java Nxt Mint Version 1.4.0
06:56:44 INFO Main.main: Application data path: /home/user/.NxtMint
06:56:44 INFO Main.main: Using Nxt node at localhost:7876
06:56:44 INFO Main.main: Minting 40.000000 units of EGOLD for account NXT-Z4RD-3PZW-RA7Y-4JNUR: 0 CPU threads, 70 GPU intensity
06:56:44 INFO Nxt.init: API node=localhost, API port=7876
06:56:45 INFO Main.buildGpuList: GPU device 0: Cayman, Driver 1573.4 (VM)
  1904MB global memory, 32KB local memory, 24 compute units, Max work group size 256
06:56:45 INFO Main.buildGpuList: GPU device 1: Cayman, Driver 1573.4 (VM)
  1953MB global memory, 32KB local memory, 24 compute units, Max work group size 256
06:56:45 INFO HashFunction.<init>: JNI library NxtMint_x86 loaded - using native CPU hash routines
06:56:45 FINE GpuKnv25.<init>: GPU 0: Local size 128, Global size 71680, Passes 1
06:56:45 INFO MintWorker.run: GPU worker 0 starting on GPU 0
06:56:45 FINE GpuKnv25.<init>: GPU 1: Local size 128, Global size 71680, Passes 1
06:56:45 INFO MintWorker.run: GPU worker 1 starting on GPU 1
06:56:45 FINE MintWorker.run: Worker 1 starting on counter 40
06:56:45 FINE MintWorker.run: Worker 0 starting on counter 40
06:57:45 FINE MintWorker.run: Worker 0: 420.47 MHash, 7.0079 MHash/s
06:57:45 FINE MintWorker.run: Worker 1: 424.92 MHash, 7.0820 MHash/s

It maxes out with these settings:
Code: [Select]
#######################################
# NxtMint configuration               #
#                                     #
# Copy to the NxtMint data directory, #
# rename to NxtMint.conf and edit for #
# your configuration                  #
#######################################

# Set the Nxt node host as a DNS name or an IP address
connect=localhost

# Set the API port (the default is 7876)
apiPort=7876

# Set the secret phrase for the minting account (required field)
secretPhrase=

# Set the 3-5 character currency code (required field)
currency=EGOLD

# Set the number of units to generate for each hash round (the default is 1).
units=40

# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=0

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=70

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity.
gpuDevice=0,128,960
gpuDevice=1,128,960
# Enable/Disable the GUI (the default is true)
enableGUI=false
Title: Re: NxtMint Java minter
Post by: mnporter2001 on February 05, 2015, 06:27:00 pm
My bad and I feel like a right dick lol

I had my config file saved as NxtMint.conf.conf

Thanks for the help though :)

Cheers
Mark
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 06:47:19 pm
HI,

This improved the hashrate of 1.4.0 a bit :

So it went from 2.5 MH/s to 7.0 MH/s? 

That just leaves register assignments.  From what I have read, AMD has a register file (usually 16KB per compute unit) which is divided into 16-byte blocks (128 bits) for a total of 1024 register blocks.  All of the processors in a compute unit share this register file, so the more work items in a work group, the fewer registers available to a given work item.  So, if the work group size is 64, there are 1024/64=16 register blocks per work item.  Keccak25 uses 25 state variables and 14 work variables.  Each variable is 64 bits, so there are 2 variables per register block for a total of 32 registers per work item.  As you can see, this is not enough for Keccak25 and the extra variables are stored in memory (which reduces throughput drastically).  It gets even worse if you increase the work group size to 128 since there are now just 8 register blocks per work item.

This is all subject to scheduling on the card, so the actual number of reigster blocks available can be more.

I also wonder if using a built-in function on AMD causes problems.  I was able to more than double the hash rate on my NVIDIA card by using the rotate() built-in function.  This allows the compiler to take advantage of the hardware rotate instruction if it is available.  But this might cause AMD problems if there is no hardware rotate instruction (I don't know what code is generated by the compiler for the emulation).  I put together a version with the rotate() and see what it does for you.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 06:48:48 pm
My bad and I feel like a right dick lol

I had my config file saved as NxtMint.conf.conf

Thanks for the help though :)

Cheers
Mark
One of the first things I do on a new system is tell Windows to stop hiding file extensions :)
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 05, 2015, 06:57:21 pm
OK - a test version of NxtMint is on Google Drive with the rotate() built-in replaced with shifts.  If that improves performance, I can check the platform name for AMD or NVIDIA and then compile the OpenCL program with the appropriate -D option.  Not using rotate() definitely hurts on NVIDIA (hash rate dropped from 35 to 17).  Or maybe just make it a configuration option since some AMD cards might benefit from using rotate() instead of explicit shifts.
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 06, 2015, 09:17:50 am
This looks promising, first test @ 60MH/S.
I will see how I can tweak the settings.

EDIT:

Runs at a healty 70MH/S per GPU

Code: [Select]
# if gpuIntensity=0.
gpuIntensity=45

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity.
gpuDevice=0,64,960
gpuDevice=1,64,960
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 06, 2015, 02:51:12 pm
This looks promising, first test @ 60MH/S.
I will see how I can tweak the settings.

EDIT:

Runs at a healty 70MH/S per GPU
70 MH/s per GPU sounds like an improvement over the best rate you were previously getting (I think it was 43 MH/s).  So NxtMint 1.5.0 should be an improvement for everybody now.

I'll check for NVIDIA in the platform name.  If found, I'll use the built-in rotate() function.  Otherwise, I'll use shift operations to perform the rotate.
Title: Re: NxtMint Java minter
Post by: ptah on February 06, 2015, 03:05:39 pm
Great improvement for me :
5970 - 2 x 87MH/s
6970 - 92MH/s
THX
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 06, 2015, 03:17:47 pm
Which settings are you running?

Great improvement for me :
5970 - 2 x 87MH/s
6970 - 92MH/s
THX
Title: Re: NxtMint Java minter
Post by: ptah on February 06, 2015, 03:25:56 pm
Which settings are you running?

Great improvement for me :
5970 - 2 x 87MH/s
6970 - 92MH/s
THX
gpuIntensity=1024
gpuDevice=0,256,0
gpuDevice=1,256,0
gpuDevice=2,256,0
Title: Re: NxtMint Java minter
Post by: dubmannnn on February 07, 2015, 08:33:06 am
Nice it hashes at 94MH/S per GPU with your settings, which are in fact the same as 6970.
Although the values dont sound like they are finetuned?

Title: Re: NxtMint Java minter
Post by: ScripterRon on February 07, 2015, 03:08:07 pm
NxtMint 1.5.0 is available from https://github.com/ScripterRon/NxtMint/releases

Change log:
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 07, 2015, 06:46:42 pm
NxtMint 1.5.0 is available from https://github.com/ScripterRon/NxtMint/releases

Change log:
  • Set gpuDevice defaults to 0,256,0
  • Check account balance during initialization
  • Allow gpuIntensity up to 1048576
  • Improve GPU performance

The trick is not to use rotate OR shifts :D
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 07, 2015, 09:02:37 pm
Just looked at the Scrypt CPU implementation... wow. Besides the missed vectorization opportunities, there's also some strange code I'm not sure the compiler will even be able to optimize.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 08, 2015, 06:56:59 am
Just looked at the Scrypt CPU implementation... wow. Besides the missed vectorization opportunities, there's also some strange code I'm not sure the compiler will even be able to optimize.

Fixed the odd things in the main scrypt loop, and replaced the blockmix (xorSalsa2). Faster, but there's a LOT more to be done.
Title: Re: NxtMint Java minter
Post by: madmartyk on February 12, 2015, 12:04:31 am
Anyone have setting for a R9 280X.  The Java window is telling me I'm hashing at .4455 Mh/s

Right now I have:
gpuIntensity=1024
gpudevice=0,256,1760

Recommended settings?

Title: Re: NxtMint Java minter
Post by: madmartyk on February 15, 2015, 01:27:43 pm
Trying to mint ELEMS,
Hardware: r9 280x
I have tried dozens of setting and get the same results, a crash of the video card.  Thoughts? Help?
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 15, 2015, 01:36:54 pm
Trying to mint ELEMS,
Hardware: r9 280x
I have tried dozens of setting and get the same results, a crash of the video card.  Thoughts? Help?

Doesn't work, you've got to use CPU.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 16, 2015, 10:00:47 pm
I had some time today to look at SHA3-256 support.  I've written a native CPU hash routine and the CPU hash rate increased from 0.203MH/s to 1.014MH/s.

I'll talk a look at GPU support.

For those having problems with AMD cards, I don't know what is wrong.  I have an NVIDIA card and NxtMint works without problems.  Since the problem appears to occur only for Scrypt, I'm guessing the problem is related to the large global memory allocation.  You can see if this is really the problem by starting with a small work group (gpuDevice=0,1,1) and see if it works.  If it does, then increase the work group size slowly until you reach 64 (gpuDevice=0,64,1).  If it is still working, then increase the number of work groups.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 16, 2015, 10:35:23 pm
This is minting TORUM using 4 CPU threads running on Linux:

Code: [Select]
rwh@debian:~/NxtMint$ Starting NxtMint
05:31:16 INFO Main.main: Java Nxt Mint Version 1.5.0
05:31:16 INFO Main.main: Application data path: /home/rwh/.NxtMint
05:31:16 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
05:31:16 INFO Main.main: Minting 50,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 4 CPU threads, 0 GPU intensity
05:31:16 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
05:31:20 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
05:31:20 INFO MintWorker.run: CPU worker 0 starting
05:31:20 INFO MintWorker.run: CPU worker 1 starting
05:31:20 INFO MintWorker.run: CPU worker 2 starting
05:31:20 INFO MintWorker.run: CPU worker 3 starting
05:31:20 FINE MintWorker.run: Worker 0 starting on counter 4
05:31:20 FINE MintWorker.run: Worker 1 starting on counter 4
05:31:20 FINE MintWorker.run: Worker 2 starting on counter 4
05:31:20 FINE MintWorker.run: Worker 3 starting on counter 4
05:31:27 INFO MintWorker.run: Worker 2 found solution for counter 4
05:31:27 FINE Mint.mint: Solution for counter 4 added to pending queue
05:31:27 FINE MintWorker.run: Worker 2 starting on counter 5
05:31:27 INFO Mint.mint: Solution for counter 4 submitted
05:31:28 FINE MintWorker.run: Worker 1 abandoning counter 4
05:31:28 FINE MintWorker.run: Worker 1 starting on counter 5
05:31:28 FINE MintWorker.run: Worker 3 abandoning counter 4
05:31:28 FINE MintWorker.run: Worker 3 starting on counter 5
05:31:28 FINE MintWorker.run: Worker 0 abandoning counter 4
05:31:28 FINE MintWorker.run: Worker 0 starting on counter 5
05:32:28 FINE MintWorker.run: Worker 3: 81.79 MHash, 1.3631 MHash/s
05:32:28 FINE MintWorker.run: Worker 0: 79.69 MHash, 1.3282 MHash/s
05:32:28 FINE MintWorker.run: Worker 2: 81.79 MHash, 1.3408 MHash/s
05:32:29 FINE MintWorker.run: Worker 1: 83.89 MHash, 1.3752 MHash/s
05:32:36 INFO MintWorker.run: Worker 3 found solution for counter 5
05:32:36 FINE Mint.mint: Solution for counter 5 added to pending queue
05:32:36 FINE MintWorker.run: Worker 3 starting on counter 6
05:32:36 INFO Mint.mint: Solution for counter 5 submitted
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 12:39:28 am
0.03MH/s scrypt CPU on my system. Improved. I've got 0.065 - 0.066 or so, so far.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 02:19:51 am
OK - GPU support for SHA3 is working.  I'll post a test version and let people give it a try.

Code: [Select]
C:\Work>java -Xmx256m -cp \GitHub\NxtMint\target\lib\*.jar -Djava.library.path=\GitHub\NxtMint\target\jni -jar \GitHub\NxtMint\target\NxtMint-1.5.0.jar
09:14:14 INFO Main.main: Java Nxt Mint Version 1.5.0
09:14:14 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
09:14:14 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
09:14:14 INFO Main.main: Minting 500,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
09:14:14 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
09:14:15 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
09:14:16 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
09:14:16 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
09:14:16 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
09:14:16 INFO MintWorker.run: GPU worker 0 starting on GPU 0
09:14:16 FINE MintWorker.run: Worker 0 starting on counter 12
09:15:16 FINE MintWorker.run: Worker 0: 303.04 MHash, 5.0506 MHash/s
09:16:16 FINE MintWorker.run: Worker 0: 607.13 MHash, 5.0594 MHash/s
09:16:59 INFO MintWorker.run: Worker 0 found solution for counter 12
09:17:03 FINE Mint.mint: Solution for counter 12 added to pending queue
09:17:03 FINE MintWorker.run: Worker 0 starting on counter 13
09:17:03 INFO Mint.mint: Solution for counter 12 submitted
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 02:52:51 am
A test version of NxtMint-1.6.0 is available on https://drive.google.com/open?id=0B1312_6UqRHPZEJYME1rbl9BaGs&authuser=0 (https://drive.google.com/open?id=0B1312_6UqRHPZEJYME1rbl9BaGs&authuser=0). 

This adds native CPU and GPU support for SHA3-256 (Algorithm 3). I've also made some memory access changes to the GPU support for Scrypt to see if that helps with AMD cards.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 05:44:21 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s
Title: Re: NxtMint Java minter
Post by: oldambtster on February 17, 2015, 09:35:20 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Nice job! Curious to see how fast all the TORUM will be minted!  8)
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 09:43:47 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Nice job! Curious to see how fast all the TORUM will be minted!  8)

260MH/s stock. Can get up to 400MH/s with 45min and some boredom. R9 290X.
Title: Re: NxtMint Java minter
Post by: oldambtster on February 17, 2015, 09:48:14 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Nice job! Curious to see how fast all the TORUM will be minted!  8)

260MH/s stock. Can get up to 400MH/s with 45min and some boredom. R9 290X.

So you can pull 10 Million TORUM a minute, awesome!
( Next SHA3-256 MS value I will set max. diff. to 256 instead of 2  ;D )
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 09:50:11 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Nice job! Curious to see how fast all the TORUM will be minted!  8)

260MH/s stock. Can get up to 400MH/s with 45min and some boredom. R9 290X.

So you can pull 10 Million TORUM a minute, awesome!
( Next SHA3-256 MS value I will set max. diff. to 256 instead of 2  ;D )

No, I have 2x270X, 3x7950, 3x280X, 1x285, and 3x290X - I could pull a whole lot more if I wished :D
Title: Re: NxtMint Java minter
Post by: oldambtster on February 17, 2015, 09:54:07 am
Getting better.  GPU SHA3-256 hash rate up to 32 MH/s on my NVIDIA card.  I'll update the test version with the new code.

PS: I had to bump the units to 5,000,000 for TORUM to get it to run for 60 seconds without finding a solution :)

Code: [Select]
C:\Work>java -Xmx256m -Djava.library.path="\GitHub\NxtMint\target\jni;\GitHub\NxtMint\package\jni" -jar "\GitHub\NxtMint
\target\NxtMint-1.6.0.jar"
12:40:09 INFO Main.main: Java Nxt Mint Version 1.6.0
12:40:09 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
12:40:09 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
12:40:09 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
12:40:09 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
12:40:10 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
12:40:11 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
12:40:11 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
12:40:11 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
12:40:11 INFO MintWorker.run: GPU worker 0 starting on GPU 0
12:40:11 FINE MintWorker.run: Worker 0 starting on counter 18
12:41:11 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Nice job! Curious to see how fast all the TORUM will be minted!  8)

260MH/s stock. Can get up to 400MH/s with 45min and some boredom. R9 290X.

So you can pull 10 Million TORUM a minute, awesome!
( Next SHA3-256 MS value I will set max. diff. to 256 instead of 2  ;D )

No, I have 2x270X, 3x7950, 3x280X, 1x285, and 3x290X - I could pull a whole lot more if I wished :D

Jaiks...  :o

Hahaha, well go get 'em!  ;D
Title: Re: NxtMint Java minter
Post by: Hachoir on February 17, 2015, 11:30:44 am
Tried GPU minting with test version 1.6.0, got this message

Quote
12:28:45 SEVERE Main.main: Exception during program initialization
org.jocl.CLException: CL_PLATFORM_NOT_FOUND_KHR
        at org.jocl.CL.checkResult(CL.java:686)
        at org.jocl.CL.clGetPlatformIDs(CL.java:1916)
        at org.ScripterRon.NxtMint.Main.buildGpuList(Main.java:490)
        at org.ScripterRon.NxtMint.Main.main(Main.java:293)
What is this.

CPU minting is ok though
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 11:35:35 am
Tried GPU minting with test version 1.6.0, got this message

Quote
12:28:45 SEVERE Main.main: Exception during program initialization
org.jocl.CLException: CL_PLATFORM_NOT_FOUND_KHR
        at org.jocl.CL.checkResult(CL.java:686)
        at org.jocl.CL.clGetPlatformIDs(CL.java:1916)
        at org.ScripterRon.NxtMint.Main.buildGpuList(Main.java:490)
        at org.ScripterRon.NxtMint.Main.main(Main.java:293)
What is this.

CPU minting is ok though

You probably don't have GPU drivers installed - or perhaps not an AMD or Nvidia GPU (or any GPU that supports OpenCL.)
Title: Re: NxtMint Java minter
Post by: Hachoir on February 17, 2015, 11:42:53 am
I have NVIDIA GPU with drivers installed, OpenCL.dll is there in \Windows\system32, I copied in the Nxt Mint directory and still got the message.

Is it possible my GPU (NVIDIA Geforce 6150SE nForce 430) doesn't support minting ?
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 11:46:32 am
I have NVIDIA GPU with drivers installed, OpenCL.dll is there in \Windows\system32, I copied in the Nxt Mint directory and still got the message.

Is it possible my GPU (NVIDIA Geforce 6150SE nForce 430) doesn't support minting ?

Likely - a GPU like that probably doesn't have OpenCL support in its driver.
Title: Re: NxtMint Java minter
Post by: Hachoir on February 17, 2015, 11:56:24 am
Downloaded the drivers from there : http://www.geforce.com/drivers/results/57491 (http://www.geforce.com/drivers/results/57491)

Here it says OpenCL is supported

Quote
Additional Details

Installs PhysX System Software v9.12.0604. Installs HD Audio v1.3.18.0. Supports DisplayPort 1.2 for GeForce GTX 600 series GPUs. Supports multiple languages and APIs for GPU computing: CUDA C, CUDA C++, CUDA Fortran, OpenCL, DirectCompute, and Microsoft C++ AMP. Supports single GPU and NVIDIA SLI technology on DirectX 9, DirectX 10, DirectX 11, and OpenGL, including 3-way SLI, Quad SLI, and SLI support on SLI-certified Intel and AMD motherboards.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 11:58:04 am
Downloaded the drivers from there : http://www.geforce.com/drivers/results/57491 (http://www.geforce.com/drivers/results/57491)

Here it says OpenCL is supported

Quote
Additional Details

Installs PhysX System Software v9.12.0604. Installs HD Audio v1.3.18.0. Supports DisplayPort 1.2 for GeForce GTX 600 series GPUs. Supports multiple languages and APIs for GPU computing: CUDA C, CUDA C++, CUDA Fortran, OpenCL, DirectCompute, and Microsoft C++ AMP. Supports single GPU and NVIDIA SLI technology on DirectX 9, DirectX 10, DirectX 11, and OpenGL, including 3-way SLI, Quad SLI, and SLI support on SLI-certified Intel and AMD motherboards.

CL_PLATFORM_NOT_FOUND_KHR is only returned on all queries if there are no OpenCL platforms available on the system, to my knowledge, so I don't know what to tell you.
Title: Re: NxtMint Java minter
Post by: madmartyk on February 17, 2015, 12:06:13 pm
DLed the NXTMaster from GitHub.  Set my conf file to the specs and when I run the bat file it just quits.  Anything special I need to do?
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 12:10:35 pm
DLed the NXTMaster from GitHub.  Set my conf file to the specs and when I run the bat file it just quits.  Anything special I need to do?

Post your conf file. Also, did you build it first?
Title: Re: NxtMint Java minter
Post by: madmartyk on February 17, 2015, 12:39:09 pm
I didn't, have no way to on the Windows box, (God, I'm such a N00B)
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 17, 2015, 12:42:21 pm
I didn't, have no way to on the Windows box, (God, I'm such a N00B)

Github only has source code... not going to work.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 03:17:07 pm
I didn't, have no way to on the Windows box, (God, I'm such a N00B)
A compiled test version is available on Google Drive.  See my earlier post for the link.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 03:23:11 pm
I have NVIDIA GPU with drivers installed, OpenCL.dll is there in \Windows\system32, I copied in the Nxt Mint directory and still got the message.

Is it possible my GPU (NVIDIA Geforce 6150SE nForce 430) doesn't support minting ?
The NVIDIA device drivers support multiple cards.  From what I have read, OpenCL is available with GeForce 8xxx and later.  So your card doesn't support it.
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 17, 2015, 11:02:50 pm
NxtMint 1.6 is up on GitHub.  This release adds native CPU and GPU support for SHA3-256.  See the first post in this topic for download instructions.
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 04:07:44 pm
Got it working, but it seems to be somewhat slow. ( not even a MH/ps )
( But it could be that it is just an AMD E350 with a 6810 GPU build in... )

Code: [Select]
GPU device 0: AMD Accelerated Parallel Processing, Loveland, Driver 1411.4
128MB global memory, 32KB local memory, 2 compute units, Max work group size 256

Tried these settings:
Code: [Select]
# Set the CPU thread count (the default is 1).  CPU minting will not be done
# if cpuThreads=0.
cpuThreads=2

# Set the GPU intensity (the default is 0).  GPU minting will not be done
# if gpuIntensity=0.
gpuIntensity=100

# Set the GPU device number (0, 1, 2, ...), the work group size and the work group count.
# The first GPU device will be used if this parameter is omitted.  This parameter can
# be repeated to use multiple GPU devices.  The GPU devices that are available are
# listed when NxtMint is started with a non-zero value for gpuIntensity. 
gpuDevice=0,256,2

But doubt about the last one, any suggestions?
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 21, 2015, 04:33:29 pm
Finaly got NXTmint started on Ubuntu 14.04 with Oracle Java 8.

From the clCreateCommandQueue man page:
  CL_OUT_OF_HOST_MEMORY if there is a failure to allocate resources required by the OpenCL implementation on the host

I don't see how clCreateCommandQueue could require a lot of storage.  But it is the first object created, so the error probably refers to creating the OpenCL context itself and not the command queue.  But even that shouldn't require a lot of storage.

The recommended debug path is to run some of the sample applications included in the APP SDK and see if they work.  I don't have an AMD card, so I can't help you with that.  You can also try running clinfo from the SDK.

There are some posts about OpenCL being broken on Ubuntu 14.04.  But this is from early last year, so I don't know if it still applies.  You could try 'apt-get update' followed by 'apt-get upgrade' to make sure you have the latest driver level.
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 04:37:01 pm
Finaly got NXTmint started on Ubuntu 14.04 with Oracle Java 8.

From the clCreateCommandQueue man page:
  CL_OUT_OF_HOST_MEMORY if there is a failure to allocate resources required by the OpenCL implementation on the host

I don't see how clCreateCommandQueue could require a lot of storage.  But it is the first object created, so the error probably refers to creating the OpenCL context itself and not the command queue.  But even that shouldn't require a lot of storage.

The recommended debug path is to run some of the sample applications included in the APP SDK and see if they work.  I don't have an AMD card, so I can't help you with that.  You can also try running clinfo from the SDK.

There are some posts about OpenCL being broken on Ubuntu 14.04.  But this is from early last year, so I don't know if it still applies.  You could try 'apt-get update' followed by 'apt-get upgrade' to make sure you have the latest driver level.

Allready got that fixed, had to restart Ubuntu, then it worked.
But now it just seems yawning slow...
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 05:12:36 pm
Guess my system is just very slow, tried several settings stays about same value in (K)Hashes.  :-\
Is SHA3 that more hard than SHA256 for example?

Ah well, got NXTminer working, minting with CPU and GPU.  8)
Title: Re: NxtMint Java minter
Post by: ScripterRon on February 21, 2015, 07:13:29 pm
Guess my system is just very slow, tried several settings stays about same value in (K)Hashes.  :-\
Is SHA3 that more hard than SHA256 for example?

Ah well, got NXTminer working, minting with CPU and GPU.  8)
I get 32 MH/s mining Torum using an NVIDIA GT 720.  I've come to the conclusion that AMD cards need OpenCL routines that are optimized for those cards.  I can't do that since I don't have an AMD card.  If somebody familiar with AMD cards will do this, I'll include the routines in the NxtMint package.
Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\
NxtMint-1.6.0.jar
02:09:11 INFO Main.main: Java Nxt Mint Version 1.6.0
02:09:11 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:09:11 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:09:11 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
02:09:11 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:09:13 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
02:09:15 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
02:09:15 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
02:09:16 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
02:09:16 INFO MintWorker.run: GPU worker 0 starting on GPU 0
02:09:16 FINE MintWorker.run: Worker 0 starting on counter 20
02:10:16 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 07:24:05 pm
Guess my system is just very slow, tried several settings stays about same value in (K)Hashes.  :-\
Is SHA3 that more hard than SHA256 for example?

Ah well, got NXTminer working, minting with CPU and GPU.  8)
I get 32 MH/s mining Torum using an NVIDIA GT 720.  I've come to the conclusion that AMD cards need OpenCL routines that are optimized for those cards.  I can't do that since I don't have an AMD card.  If somebody familiar with AMD cards will do this, I'll include the routines in the NxtMint package.
Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\
NxtMint-1.6.0.jar
02:09:11 INFO Main.main: Java Nxt Mint Version 1.6.0
02:09:11 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:09:11 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:09:11 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
02:09:11 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:09:13 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
02:09:15 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
02:09:15 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
02:09:16 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
02:09:16 INFO MintWorker.run: GPU worker 0 starting on GPU 0
02:09:16 FINE MintWorker.run: Worker 0 starting on counter 20
02:10:16 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

That is a huge difference... Hope somebody can optimize this for AMD.
Will try some other Valuta later.

Thanks for the info.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 21, 2015, 08:01:33 pm
Guess my system is just very slow, tried several settings stays about same value in (K)Hashes.  :-\
Is SHA3 that more hard than SHA256 for example?

Ah well, got NXTminer working, minting with CPU and GPU.  8)
I get 32 MH/s mining Torum using an NVIDIA GT 720.  I've come to the conclusion that AMD cards need OpenCL routines that are optimized for those cards.  I can't do that since I don't have an AMD card.  If somebody familiar with AMD cards will do this, I'll include the routines in the NxtMint package.
Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\
NxtMint-1.6.0.jar
02:09:11 INFO Main.main: Java Nxt Mint Version 1.6.0
02:09:11 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:09:11 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:09:11 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
02:09:11 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:09:13 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
02:09:15 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
02:09:15 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
02:09:16 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
02:09:16 INFO MintWorker.run: GPU worker 0 starting on GPU 0
02:09:16 FINE MintWorker.run: Worker 0 starting on counter 20
02:10:16 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

That is a huge difference... Hope somebody can optimize this for AMD.
Will try some other Valuta later.

Thanks for the info.

SHA3? That's a VERY simple algo - in fact, I've written a 25-way parallel implementation for CUDA, at one point! Not optimal for GPUs, since you pound the hell out of LDS, though.

I'm mining pretty solidly on it - screenshot (NSFW): https://ottrbutt.com/miner/nxtmintwolf-02212015.png

GPU 0 is a 280X, GPU 1 is a 270X, GPU 2 is a 290X, and GPU 3 is a 7950.
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 08:09:55 pm
Quote
SHA3? That's a VERY simple algo - in fact, I've written a 25-way parallel implementation for CUDA, at one point! Not optimal for GPUs, since you pound the hell out of LDS, though.

I'm mining pretty solidly on it - screenshot (NSFW): https://ottrbutt.com/miner/nxtmintwolf-02212015.png

GPU 0 is a 280X, GPU 1 is a 270X, GPU 2 is a 290X, and GPU 3 is a 7950.

Yeah, seams to be the AMD OpenCL stuff that doesn't seem to be able to kickstart the GPU.
Should be at least 10 MH/s I guess. Now it seems the GPU doesn't do only about 200KH/s at the most.

Will see if I can compile the sourcecode, see if that helps.
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 21, 2015, 08:22:13 pm
Quote
SHA3? That's a VERY simple algo - in fact, I've written a 25-way parallel implementation for CUDA, at one point! Not optimal for GPUs, since you pound the hell out of LDS, though.

I'm mining pretty solidly on it - screenshot (NSFW): https://ottrbutt.com/miner/nxtmintwolf-02212015.png

GPU 0 is a 280X, GPU 1 is a 270X, GPU 2 is a 290X, and GPU 3 is a 7950.

Yeah, seams to be the AMD OpenCL stuff that doesn't seem to be able to kickstart the GPU.
Should be at least 10 MH/s I guess. Now it seems the GPU doesn't do only about 200KH/s at the most.

Will see if I can compile the sourcecode, see if that helps.

LOL, 10MH/s. Did you see my screenshot?

There's likely still some room for improvement on that, too.
Title: Re: NxtMint Java minter
Post by: oldambtster on February 21, 2015, 08:32:22 pm
Quote
SHA3? That's a VERY simple algo - in fact, I've written a 25-way parallel implementation for CUDA, at one point! Not optimal for GPUs, since you pound the hell out of LDS, though.

I'm mining pretty solidly on it - screenshot (NSFW): https://ottrbutt.com/miner/nxtmintwolf-02212015.png

GPU 0 is a 280X, GPU 1 is a 270X, GPU 2 is a 290X, and GPU 3 is a 7950.

Yeah, seams to be the AMD OpenCL stuff that doesn't seem to be able to kickstart the GPU.
Should be at least 10 MH/s I guess. Now it seems the GPU doesn't do only about 200KH/s at the most.

Will see if I can compile the sourcecode, see if that helps.

LOL, 10MH/s. Did you see my screenshot?

There's likely still some room for improvement on that, too.

Yeah, rub it in, rub it in, thank you very much, hahaha...   :P
If you consider the computer I use has a TDP of 18 Watt, 10MHps would be just fine.   :D

But when I know it should be able to manage a certain amount of hashes and it gets nowhere not even to one MHps... Serenety now, serenety now. ZEN...  8)
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 21, 2015, 09:21:33 pm
Quote
SHA3? That's a VERY simple algo - in fact, I've written a 25-way parallel implementation for CUDA, at one point! Not optimal for GPUs, since you pound the hell out of LDS, though.

I'm mining pretty solidly on it - screenshot (NSFW): https://ottrbutt.com/miner/nxtmintwolf-02212015.png

GPU 0 is a 280X, GPU 1 is a 270X, GPU 2 is a 290X, and GPU 3 is a 7950.

Yeah, seams to be the AMD OpenCL stuff that doesn't seem to be able to kickstart the GPU.
Should be at least 10 MH/s I guess. Now it seems the GPU doesn't do only about 200KH/s at the most.

Will see if I can compile the sourcecode, see if that helps.

LOL, 10MH/s. Did you see my screenshot?

There's likely still some room for improvement on that, too.

Yeah, rub it in, rub it in, thank you very much, hahaha...   :P
If you consider the computer I use has a TDP of 18 Watt, 10MHps would be just fine.   :D

But when I know it should be able to manage a certain amount of hashes and it gets nowhere not even to one MHps... Serenety now, serenety now. ZEN...  8)

You didn't specify an AMD card, so I assumed you meant AMD cards in general; my bad. What needs work is that my 280X and 290X are quite close in hashrate, and my implmentation uses almost no global memory - meaning the only real difference affecting hashrate should be raw compute power, of which the 290X should have far more.
Title: Re: NxtMint Java minter
Post by: madmartyk on February 21, 2015, 09:54:21 pm
I have a 280x minting torum, getting a decent hashrate.

(http://www.holylands.com/torum.jpg)
Title: Re: NxtMint Java minter
Post by: oldambtster on February 22, 2015, 08:25:41 am
Quote
You didn't specify an AMD card, so I assumed you meant AMD cards in general; my bad. What needs work is that my 280X and 290X are quite close in hashrate, and my implmentation uses almost no global memory - meaning the only real difference affecting hashrate should be raw compute power, of which the 290X should have far more.

It is an AMD Fusion thing, with an AMD 6810 inside the E350, and I will have to find some compare figures to see what really to expect. Guess some code change might be needed for this to NXTmint to work on my the 6810 gfx unit.

But I've accepted that this is not really hardware ment for minting.  ;)
Title: Re: NxtMint Java minter
Post by: oldambtster on February 22, 2015, 08:36:46 am
I have a 280x minting torum, getting a decent hashrate.

Looked at the specs for the 280x...  :o

Still I would expect between 7 and 12 MHs/ps for the little AMD engine that could.
Managed to get some millions overnight in minting TORUM, almost 20 million at a time, at a pace of about 4|5 hours.

So in about 250 hours I could be a billionaire in TORUM too.  :D
Title: Re: NxtMint Java minter
Post by: oldambtster on February 22, 2015, 08:47:24 am
Guess my system is just very slow, tried several settings stays about same value in (K)Hashes.  :-\
Is SHA3 that more hard than SHA256 for example?

Ah well, got NXTminer working, minting with CPU and GPU.  8)
I get 32 MH/s mining Torum using an NVIDIA GT 720.  I've come to the conclusion that AMD cards need OpenCL routines that are optimized for those cards.  I can't do that since I don't have an AMD card.  If somebody familiar with AMD cards will do this, I'll include the routines in the NxtMint package.
Code: [Select]
C:\Bitcoin\NxtMint>java.exe -Xmx256m -Djava.library.path=\Bitcoin\NxtMint\jni -jar \Bitcoin\NxtMint\
NxtMint-1.6.0.jar
02:09:11 INFO Main.main: Java Nxt Mint Version 1.6.0
02:09:11 INFO Main.main: Application data path: C:\Users\Ronald\Appdata\Roaming\NxtMint
02:09:11 INFO Main.main: Using Nxt node at scripterron.dyndns.biz:7876
02:09:11 INFO Main.main: Minting 5,000,000.000000 units of TORUM for account NXT-XM86-4ZNA-65L5-CDWUE: 0 CPU threads, 1024 GPU intensity
02:09:11 INFO Nxt.init: API node=scripterron.dyndns.biz, API port=7876
02:09:13 INFO Main.buildGpuList: GPU device 0: NVIDIA CUDA, GeForce GT 720, Driver 347.09
  1024MB global memory, 47KB local memory, 2 compute units, Max work group size 1024
02:09:15 INFO HashFunction.<init>: JNI library NxtMint_x86_64 loaded - using native CPU hash routines
02:09:15 FINE GpuFunction.<init>: GPU 0: Using rotate() built-in function
02:09:16 FINE GpuSha3.<init>: GPU 0: Local size 128, Global size 1048576, Passes 1
02:09:16 INFO MintWorker.run: GPU worker 0 starting on GPU 0
02:09:16 FINE MintWorker.run: Worker 0 starting on counter 20
02:10:16 FINE MintWorker.run: Worker 0: 1,928.33 MHash, 32.1389 MHash/s

Tried different mintable valuta, about same figures, where my 2 CPU cores even make the double speed of what the GPU does. All just under or over 1 MHs/ps. Only when the two CPU cores are helping the GPU.

Managed to mint some TORUM over night, not billions, but about 20 million at a time.

The routines seem to work great for the high end AMD R9 hardware, so I guess it can be concluded that it for the low end AMD E350 it is a bridge to far.

Anyway, I had fun trying.  ;)
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 22, 2015, 10:06:18 am
I have a 280x minting torum, getting a decent hashrate.

(http://www.holylands.com/torum.jpg)

183? Damn, I haven't doubled the speed of the code yet!
Title: Re: NxtMint Java minter
Post by: madmartyk on February 22, 2015, 12:29:56 pm
I have a 280x minting torum, getting a decent hashrate.

(http://www.holylands.com/torum.jpg)

183? Damn, I haven't doubled the speed of the code yet!

This is what I'm using for my settings

gpuIntensity=1024
gpudevice=0,256,1760
Title: Re: NxtMint Java minter
Post by: Wolf0 on February 22, 2015, 12:39:22 pm
I have a 280x minting torum, getting a decent hashrate.

(http://www.holylands.com/torum.jpg)

183? Damn, I haven't doubled the speed of the code yet!

This is what I'm using for my settings

gpuIntensity=1024
gpudevice=0,256,1760

I modified the intensity parameter to remove the annoying stuff that might cause it to not use the intensity I pick, then changed the meaning so the number of threads is 2^intensity.

Mine was set to intensity 23, which for his, would be 8192, and then the 280X was gpuDevice=0,256,256 for ~331MH/s.
Title: Re: NxtMint Java minter
Post by: Bik_z19 on March 02, 2015, 06:51:30 pm
After running mint.bat it just pops up the command screen, then quickly disappears. Have had this with a few other miners, never really found a solution :(
Title: Re: NxtMint Java minter
Post by: madmartyk on March 02, 2015, 09:07:25 pm
After running mint.bat it just pops up the command screen, then quickly disappears. Have had this with a few other miners, never really found a solution :(

Try lowering the # of coins to mint.
Title: Re: NxtMint Java minter
Post by: Bik_z19 on March 02, 2015, 09:14:29 pm
After running mint.bat it just pops up the command screen, then quickly disappears. Have had this with a few other miners, never really found a solution :(

Try lowering the # of coins to mint.
Already tried that, also tested the amount on the mint.bat inside the NRS folder. I know it can't be more than 1/10000 of the total coins. That's not a problem, as this coin has far more than 10bill coins :D
Title: Re: NxtMint Java minter
Post by: madmartyk on March 02, 2015, 09:35:03 pm
What coin are you trying to mint?
Title: Re: NxtMint Java minter
Post by: Bik_z19 on March 03, 2015, 07:14:49 am
What coin are you trying to mint?

Tried with several, but at the moment TORUM

EDIT: I am able to mint with the standard minter of NXT NRS. So it is not a fault in my PC, and I don't think it is in the parameters either.
Title: Re: NxtMint Java minter
Post by: coinTEr on March 03, 2015, 08:02:14 am
Try to start the minter out of the cmd.exe (if you're using windows).
You will see the error-message, which causes the minter to quit.


Title: Re: NxtMint Java minter
Post by: Bik_z19 on March 03, 2015, 09:01:53 am
Try to start the minter out of the cmd.exe (if you're using windows).
You will see the error-message, which causes the minter to quit.
SEVERE Main.main: Secret Phrase not specified.

That's the error output. But I'm sure as hell the phrase is present and correct.
Title: Re: NxtMint Java minter
Post by: coinTEr on March 03, 2015, 10:59:39 am
Do you have the NxtMint.conf and NxtMint.properties
in the correct folder?
That would be something like: C:\Users\*yourusername*\AppData\Roaming\NxtMint

Another common problem: if you don't see the file extensions it could be possible, that your
NxtMint.conf is named NxtMint.conf.conf

Please check that

Title: Re: NxtMint Java minter
Post by: madmartyk on March 03, 2015, 11:38:52 am
Make sure there is no extra spaces at the end or beginning of the secret phrase
Title: Re: NxtMint Java minter
Post by: Bik_z19 on March 03, 2015, 01:42:02 pm
Do you have the NxtMint.conf and NxtMint.properties
in the correct folder?
That would be something like: C:\Users\*yourusername*\AppData\Roaming\NxtMint

Another common problem: if you don't see the file extensions it could be possible, that your
NxtMint.conf is named NxtMint.conf.conf

Please check that

Thank you for the replies! the problem seems to be that the NxtMint.properties file wasn't created when I first ran the minter, everything is working now. Thank you!
elective-stereophonic
elective-stereophonic
assembly
assembly