Pages:
Author

Topic: Algorithmically placed FPGA miner: 255MH/s/chip, supports all known boards - page 2. (Read 119442 times)

donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
A new version of the signcryption software was pushed today around 13:00 PDT; it attempts to make the signcryption protocol more efficient for TML >= 1.82.

Unfortunately due to a bug in the new code the server would sometimes return data which is unparseable by older versions, causing them to disconnect and reconnect again.  This would result in poor hashing performance on large farms.  Since the bug did not actually interrupt service but only degraded performance for some users it was not detected until 19:00 PDT.  The code was immediately rolled back.

I apologize for the inconvenience.
donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
TML v1.82 has been released.


24.Mar.2013  Version 1.82
             More Makefile improvements
             Do not send the work target to the SCS, it doesn't need it
             Allow url-encoded (i.e. %NN) chars in pool url usernames/passwords
20.Mar.2013  Version 1.81
             Makefile improvements
             HTTP GetWork: Don't unroll work until after signing
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
What is the appropriate syntax to set a backup pool?

Thanks,
Dave

IIRC theres only primary pool available.

You can specify multiple pools on the command line, and the TML will use all of them.  If one goes down it will pull all work from the others.

If you want to only use pool X when pool Y is down you can't do this from the command line, but it's only two lines of Java code to do it.  I will add a command line option for this in the next release.

Ops, my bad ~ never used the feature.  
donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
TML-1.80 has been posted.

The big change with this version is that if your pool supports X-Roll-NTime the signcryption server will now signcrypt an entire "bundle" of work in one shot.  So if your pool returns a job with X-Roll-Nonce=255 the signcryption server will signcrypt 255 jobs at once.  This improves the signcryption latency for large clusters (more than 10-20 chips).  I mine at Eligius (primary) and EclipseMC (backup), both of which support X-Roll-NTime.  I stopped mining at BtcGuild because they couldn't seem to figure out how to make X-Roll-Ntime work.

This release will also retry submitting a solution up to three times in the face of network errors.  If the pool outright rejects the solution it won't be resubmitted (of course).  This results in lower reject rates when the pool or the miner are experiencing network problems (flooding, overloaded, etc).


16.Mar.2013  Version 1.80
             Add support for new work-signing command which can sign jobs with X-Roll-Nonce
             HttpWorkSource: use a single connection manager
             Add LimpWorkSource/LimpWorkServer
             Add GraphingWorkSource
             WorkRevocationFilter: fix possible memory leak
             Retry submissions if there is a network error
             Reduce default job age limit to 60s (can override with -Dmax_job_age)
             LibFtdi: better error messages


Also included are some woefully under-documented but neat features: GraphingWorkSource which produces csv-formatted hashrate data suitable for plotting with dygraph.js and LimpWorkSource/LimpWorkServer.  The LiMP protocol is an intensively bandwidth-optimized mining protocol (yes, even more efficient than stratum).  I need it because my mining cluster's is in a  remote location where the only internet access is via a very expensive cell phone data connection -- in return I get very cheap electricity.  If you don't pay "by the byte" for bandwidth you probably don't need LiMP.


The signcryption algorithm for the "m"-series bitstreams doesn't actually encrypt the register that holds the 18th word of the block header (i.e. the ntime field).  So if you stare at the code long enough, you can probably figure out how to ask the signcryption server to sign one job and then generate all the other ntime-rolled jobs yourself without using the signcryption server.  This is a major reason why the nonces are encrypted too.
donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
What is the appropriate syntax to set a backup pool?

Thanks,
Dave

IIRC theres only primary pool available.

You can specify multiple pools on the command line, and the TML will use all of them.  If one goes down it will pull all work from the others.

If you want to only use pool X when pool Y is down you can't do this from the command line, but it's only two lines of Java code to do it.  I will add a command line option for this in the next release.
hero member
Activity: 816
Merit: 1000
What is the appropriate syntax to set a backup pool?

Thanks,
Dave

IIRC theres only primary pool available.

eldentyrell, can you confirm this?

Thank you.
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
What is the appropriate syntax to set a backup pool?

Thanks,
Dave

IIRC theres only primary pool available.
hero member
Activity: 816
Merit: 1000
What is the appropriate syntax to set a backup pool?

Thanks,
Dave
donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
I'm still having a hard time grasping the concept of why the hashright is so much higher, regardless of the sampling interval.  If the software knows that the chips cannot run at that high of a hashrate, why does it reset the clocks that high? This seemed to resolve itself over time.

Yes, the TML sets the clock rate by fitting an exponential curve to the error-rate-vs-frequency data, then finding the point on the curve that gives the highest valid rate.  This is usually slightly higher than the max clock rate that gives you 0% errors -- though this depends on your individual chip.

It takes at least an hour worth of data to get a good fit.
hero member
Activity: 816
Merit: 1000
I'm still having a hard time grasping the concept of why the hashright is so much higher, regardless of the sampling interval.  If the software knows that the chips cannot run at that high of a hashrate, why does it reset the clocks that high? This seemed to resolve itself over time.

Edit: After 10h34m it's now bumped to 446 mh/s average hashrate with 3.3% rejects so 431mh/s effective hashrate after rejects.  That is about a 50mh/s bump compared to bfgminer.

Edit: After 21h14m it's now bumped to 457 mh/s average hashrate with 3.003% rejects so 443.28mh/s effective hashrate after rejects.  

Edit: After 1d20h26m it's now bumped to 462 mh/s average hashrate with 3.5% rejects so  445.83mh/s effective hashrate after rejects.
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
Hello all,

I have been playing with tml this morning and have it working on a single x6500 rev 3.

My readout is this after an hour and a half:

H:443 X:479 E:0 T:5m | H:365 E:2 A:491 R:16 T:1h39m55s

Is the "recent" history H:# the combined hashrate between the two chips? If so, why is there such a big difference between the "recent" history and the "entire" history.

The unit is running with standard north bridge heatsinks with 40mm fans attached.  Is it likely that I need better cooling to achieve a higher hashrate?

When running it on bfgminer I generally had a hashrate of 380mh/s or higher.  I am ultimately wondering if it is beneficial to be using this software vs. bfgminer.

Thanks for the software!
-Dave

Well, the H on the left is for last 5min and the H on the right for total run. Not terrible amount of errors, so yeah cooling might help (or a vmod).

hero member
Activity: 816
Merit: 1000
Hello all,

I have been playing with tml this morning and have it working on a single x6500 rev 3.

My readout is this after an hour and a half:

H:443 X:479 E:0 T:5m | H:365 E:2 A:491 R:16 T:1h39m55s

Is the "recent" history H:# the combined hashrate between the two chips? If so, why is there such a big difference between the "recent" history and the "entire" history.

The unit is running with standard north bridge heatsinks with 40mm fans attached.  Is it likely that I need better cooling to achieve a higher hashrate?

When running it on bfgminer I generally had a hashrate of 380mh/s or higher.  I am ultimately wondering if it is beneficial to be using this software vs. bfgminer.

Thanks for the software!
-Dave
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
The FTDI libraries shoudl also be the thing that would keep me from mining on OSX using the modminer FPGA?

Most probably. Try using virtual machine, works fine here.
member
Activity: 109
Merit: 10
The FTDI libraries shoudl also be the thing that would keep me from mining on OSX using the modminer FPGA?
donator
Activity: 980
Merit: 1004
felonious vagrancy, personified
root@raspberrypi

The x6500 driver requires a native-code FTDI library.  The "stock" jarfile only includes Linux-x86 and Linux-amd64 binaries for this library.

You should start by getting all of this working on a normal x86 or amd64 Linux box.  Once you have that working, *then* try to move it over to your rasberry pi.
hero member
Activity: 956
Merit: 1001
Any word on whether the java app will support stratum in the near future?  Or would I be better off just using a stratum proxy?
sr. member
Activity: 290
Merit: 250
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
sr. member
Activity: 290
Merit: 250
Hello,

I'm getting the following errors running 1.71

Exception in thread "Board thread for AH01ABH9" java.lang.ExceptionInInitializerError
        at com.triconemining.board.X6500Host.getBoard(X6500Host.java:33)
        at com.triconemining.miner.BoardWrapper.run_(BoardWrapper.java:91)
        at com.triconemining.miner.BoardWrapper.run(BoardWrapper.java:72)
        at java.lang.Thread.run(Thread.java:679)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
        at com.triconemining.ftdi.LibFtdi.(LibFtdi.java:34)
        ... 4 more
Caused by: java.lang.NullPointerException
        at com.triconemining.util.Util.copyStream(Util.java:137)
        at com.triconemining.util.Util.loadLibraryFromInputStream(Util.java:152)
        at com.triconemining.ftdi.LibFtdi.(LibFtdi.java:31)
        ... 4 more
           
Command used to start:
java -Dclock_pin=fgg484.K20 -Dclock_pin_freq=100 -jar tml-1.71.jar x6500:AH01ABH9

Serial Number of X6500:
root@raspberrypi:~/tml# dmesg |grep AH
[    5.151252] usb 1-1.3.4.3: SerialNumber: AH01ABH9

Java Version:
root@raspberrypi:~/tml# java -version
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.1) (6b27-1.12.1-1+rpi1)
OpenJDK Zero VM (build 20.0-b12, mixed mode)

Thanks,
Ric
donator
Activity: 90
Merit: 10
Anyone tried these updates with MMQs?
Pages:
Jump to: