Bitcoin Forum
March 28, 2024, 09:01:17 PM *
News: Latest Bitcoin Core release: 26.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 »
  Print  
Author Topic: New demonstration CPU miner available  (Read 386157 times)
d3m0n1q_733rz
Sr. Member
****
Offline Offline

Activity: 378
Merit: 250



View Profile WWW
June 22, 2011, 09:16:44 AM
Last edit: June 22, 2011, 09:26:45 AM by d3m0n1q_733rz
 #461

Hey, I forgot to mention that both of my computers are using Core2 processors.  So, while it might only be about 10% of an increase with the new code, it's still a significant increase.

Getting a seg fault for the sha256 cryptopp_asm32 option.

I build from the git repo, using:
./autogen.sh
CFLAGS="-O3 -Wall -msse2" ./configure
make

I run it for the btcguild (haven't tried a different pool though..) and I get this:
[2011-06-21 18:54:36] JSON option quiet invalid
[2011-06-21 18:54:37] Long-polling activated for http://uscentral.btcguild.com:8332/LP
Segmentation fault

I tried using the 4way option, and got ~700 kh/s which seems quite slow for my cpu (quad xeon @ 2.83) - I get 1200 kh/s with the cryptoapp_asm32 option in an older build.

I've just rebuilt using the default flags: -g -O2

This seems to work fine. Possibly something wrong in the usage of SSE2?

I don't have a huge amount of experience with gcc, so can't be a lot more specific.

EDIT: Compiles fine with CFLAGS="-O2 -Wall -msse2" switch to -O3 and it seg faults. I'm using gcc 4.4 btw

Do you get the same result without using longpolling?  It will help us to track down the issue.  Since it doesn't state that it's activated a core, it stands to reason that it's not in the cryptopp_asm32 code.  However, reason should only ever be taken as suspicion.  Next, what distro of Linux are you using and what architecture?  I might be able to toss you a binary.
On that note, since you're using a quad xeon anyway, why the debugger are you using cryptopp_asm32 when you should be using SSE2_64?  That 1200 you're getting could quite easily become a 2400 on the 1.0.2 code and even a 2700 if you replace the SSE2_64 with the newer atom code.

One last thing, try adding -march=native to your CFLAGS there.  It'll use what it knows your processor can handle.  Might not be necessary, but can't really hurt.

Funroll_Loops, the theoretically quicker breakfast cereal!
Check out http://www.facebook.com/JupiterICT for all of your computing needs.  If you need it, we can get it.  We have solutions for your computing conundrums.  BTC accepted!  12HWUSguWXRCQKfkPeJygVR1ex5wbg3hAq
1711659677
Hero Member
*
Offline Offline

Posts: 1711659677

View Profile Personal Message (Offline)

Ignore
1711659677
Reply with quote  #2

1711659677
Report to moderator
1711659677
Hero Member
*
Offline Offline

Posts: 1711659677

View Profile Personal Message (Offline)

Ignore
1711659677
Reply with quote  #2

1711659677
Report to moderator
Transactions must be included in a block to be properly completed. When you send a transaction, it is broadcast to miners. Miners can then optionally include it in their next blocks. Miners will be more inclined to include your transaction if it has a higher transaction fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1711659677
Hero Member
*
Offline Offline

Posts: 1711659677

View Profile Personal Message (Offline)

Ignore
1711659677
Reply with quote  #2

1711659677
Report to moderator
1711659677
Hero Member
*
Offline Offline

Posts: 1711659677

View Profile Personal Message (Offline)

Ignore
1711659677
Reply with quote  #2

1711659677
Report to moderator
1711659677
Hero Member
*
Offline Offline

Posts: 1711659677

View Profile Personal Message (Offline)

Ignore
1711659677
Reply with quote  #2

1711659677
Report to moderator
theowalpott
Member
**
Offline Offline

Activity: 80
Merit: 10


View Profile
June 22, 2011, 10:27:35 AM
 #462

cryptopp_asm32 as it gives me the best hashrate - nothing else gets close :/

I'm running ubuntu 10.04 32-bit i686. I need to upgrade to 64-bit, but I've got a few things to do before I go reinstalling the distro. Unless you have a way to run sse2_64 on a 32-bit OS? Smiley

I've just tried running it locally (no mining pool). Same compiler flags, -O3 -Wall -msse2

./minerd --user un --pass pw --algo cryptopp_asm32
[2011-06-22 11:18:02] Binding thread 0 to cpu 0
Segmentation fault

using -march=native makes no difference


1FwGATm6eU5dSiTp2rpazV5u3qwbx1fuDn
d3m0n1q_733rz
Sr. Member
****
Offline Offline

Activity: 378
Merit: 250



View Profile WWW
June 22, 2011, 11:25:09 AM
 #463

Okay, well I can only think of a few things that might help you.  First off, if you've downloaded jansson, uninstall it and just don't.  The most recent version breaks the compile and there's already a version with the program that works.  Second, you're using autogen.sh which is intended for Fedora Linux.  The correct method to use in Ubuntu is thus:

run ./configure CFLAGS="-march=native -O3 -Wall <--(though you can leave this out if you want) -msse2" && make
If the only errors shown are error 1, run sudo make install
minerd has been installed so you may now run it as you were before.

But, as I was saying, the sooner you get that 64-bit OS installed the better.  Because, while you can't run 64-bit apps on a 32-bit distro, you can run 32-bit apps on a 64-bit distro as long as you download the appropriate programs from the repositories.   Cool

This should fix your problem.

Funroll_Loops, the theoretically quicker breakfast cereal!
Check out http://www.facebook.com/JupiterICT for all of your computing needs.  If you need it, we can get it.  We have solutions for your computing conundrums.  BTC accepted!  12HWUSguWXRCQKfkPeJygVR1ex5wbg3hAq
d3m0n1q_733rz
Sr. Member
****
Offline Offline

Activity: 378
Merit: 250



View Profile WWW
June 22, 2011, 11:33:51 AM
 #464

Wait a minute!  Where are you even getting autogen.sh?  The 1.0.2 version doesn't even have it that I see.  >_<  Have you tried using the latest release found in the first post of this thread?  I'm heading to bed.  It's way to late not to be sleeping and way too early to try to think.  Keep me posted.

Funroll_Loops, the theoretically quicker breakfast cereal!
Check out http://www.facebook.com/JupiterICT for all of your computing needs.  If you need it, we can get it.  We have solutions for your computing conundrums.  BTC accepted!  12HWUSguWXRCQKfkPeJygVR1ex5wbg3hAq
theowalpott
Member
**
Offline Offline

Activity: 80
Merit: 10


View Profile
June 22, 2011, 11:56:16 AM
 #465

The autogen.sh comes from the git repo. I've got the tarball as well as the git version - both give the seg fault. With the tarball you dont need to use automake (via autogen.sh), but its needed when using git.

I tried your configure line - it makes no difference (its the same as the one I was using, except I was using the CFLAGS= before ./configure (afaik this doesnt matter)

In the output from make, I can see it is using the folder /compat/jansson - so it is using the intended version and not any other installed version. Anyway, I can run it as long as I drop to -O2, which will do for now Smiley

Thanks for trying.. will have to wait until I've got time to install 64-bit to get full speed hashing power! I have a lot of programs I'd need to find 64 bit versions of and I'm only running the miner when I'm not using the machine Smiley

1FwGATm6eU5dSiTp2rpazV5u3qwbx1fuDn
ancow
Full Member
***
Offline Offline

Activity: 373
Merit: 100


View Profile WWW
June 22, 2011, 12:07:41 PM
 #466

I tried your configure line - it makes no difference (its the same as the one I was using, except I was using the CFLAGS= before ./configure (afaik this doesnt matter)
It doesn't? With the CFLAGS before the command, bash will make it an environment variable to this command, after, and it gets passed to the command as an argument. Does configure really handle environment variable style arguments?

BTC: 1GAHTMdBN4Yw3PU66sAmUBKSXy2qaq2SF4
-ck
Legendary
*
Offline Offline

Activity: 4060
Merit: 1622


Ruu \o/


View Profile WWW
June 22, 2011, 02:34:03 PM
 #467

Okay so I've spent many hours understanding GPU code and opencl code and ported stuff from all over the place and modified it to suit c and optimised it to get half decent performance out of cpuminer. So I now have a branch of cpuminer that will mine on both cpu and gpu where possible. There are no extra command line tunables at the moment, but by default it uses a modified version of the poclbm kernel, vectors, bfi_int patching and optimised worksizes for the vectors that I've tried to use the most of all pipelines. I've designed the threads that manage the GPU carefully to spend as little time wasted as possible between feeding work to the GPU, and does most of the work asynchronously. The GPU managing thread uses very little CPU of its own.

I must stress I have only just got all the features working that I wanted and have decent performance out of it now. With time I should be able to make it more configurable. For those who want to test it at this early stage, this is my development git tree and is currently usable:

https://github.com/ckolivas/cpuminer/tree/gpumine

By default it will mine on both cpu and gpu, but I've made it so you can disable cpu with --threads 0. I'm planning on hopefully merging the phatk kernel into it as well as it seems to be even better than what I currently have.

The output looks like this and is a running total of both CPU and GPU:
[2011-06-23 00:29:27] [187.15 Mhash/sec] [37 Accepted] [0 Rejected]
[2011-06-23 00:29:32] [187.05 Mhash/sec] [37 Accepted] [0 Rejected]
[2011-06-23 00:29:37] [186.94 Mhash/sec] [37 Accepted] [0 Rejected]
[2011-06-23 00:29:40] GPU 0 found something?
[2011-06-23 00:29:41] PROOF OF WORK RESULT: true (yay!!!)
[2011-06-23 00:29:42] [187.22 Mhash/sec] [38 Accepted] [0 Rejected]
[2011-06-23 00:29:47] [187.09 Mhash/sec] [38 Accepted] [0 Rejected]

It's supposed to work on all GPU cards installed at the same time, but I only have one (at the moment) to test.  Note it will ONLY work on ATI cards at the moment, and only those that support BFI_INT instructions, till I build more infrastructure into the code for the rest.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
theowalpott
Member
**
Offline Offline

Activity: 80
Merit: 10


View Profile
June 22, 2011, 04:52:22 PM
 #468

I tried your configure line - it makes no difference (its the same as the one I was using, except I was using the CFLAGS= before ./configure (afaik this doesnt matter)
It doesn't? With the CFLAGS before the command, bash will make it an environment variable to this command, after, and it gets passed to the command as an argument. Does configure really handle environment variable style arguments?

I don't think so, I checked with env | grep CFLAGS - this returned nothing.

I can also see in the output of make that the compiler switches are the ones I requested with CFLAGS="..." regardless of if I put it before or after ./configure

Either way, I am still getting a seg fault for the cryptopp_asm32 algorithm, all others work. The seg fault goes away if I reduce the optimization level to O2 :/

1FwGATm6eU5dSiTp2rpazV5u3qwbx1fuDn
jgarzik (OP)
Legendary
*
Offline Offline

Activity: 1596
Merit: 1091


View Profile
June 22, 2011, 10:19:59 PM
 #469

Now that cpuminer is being updated to support OpenCL mining, a new thread has been created for support for the GPU mining aspects.

Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own.
Visit bloq.com / metronome.io
Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
d3m0n1q_733rz
Sr. Member
****
Offline Offline

Activity: 378
Merit: 250



View Profile WWW
June 23, 2011, 05:32:03 AM
Last edit: June 23, 2011, 06:54:18 AM by d3m0n1q_733rz
 #470

Hey, I don't mean to thread bump, but I could really use a hand with the SSE commands if someone is familiar with programming.  I'm trying to optimize some of the reads and writes to and from the buffer to occur simultaneously in order to take advantage of some of the later SSE additions beyond SSE2.  My CPU is quite capable of SSE4.1 so it's not a problem, but if someone would be ever so kind as to give a beginning programmer a hand, I would really appreciate it.  I'm looking at some of the horizontal math calculations in SSE3 and thinking that one or two of them can be used towards the end of the hashing once the bit rotations have been completed.  And I was going to use PINSRQ, but I found that movdqa was STILL faster somehow.   Shocked

I've been looking for a method to optimize the writing of duplicate variables to multiple xmm locations at once where they're used.  But I can't seem to find an instruction to do that.  Anyone know of one?  An example of this is the sse2_64 code where xmm0 is duplicated to xmm2 and xmm4 is duplicated to xmm6.  Then we have xmm0 duplicated to xmm1 and xmm4 to xmm5.  If there's a method to tell the system to add the values to two or more xmms at the same time, it would significantly speed up operations.  So, how do we get rid of these excessive reads and writes?

Funroll_Loops, the theoretically quicker breakfast cereal!
Check out http://www.facebook.com/JupiterICT for all of your computing needs.  If you need it, we can get it.  We have solutions for your computing conundrums.  BTC accepted!  12HWUSguWXRCQKfkPeJygVR1ex5wbg3hAq
Anonymous
Guest

June 30, 2011, 05:21:02 AM
 #471

(Excuse me for my bad English. I'm french ...)

I'm feeling a little bit dump. What command have I to enter into the .bat-file to start the miner and connect him to a pool? On my PC, the cmd.exe-Window opens, but it closes just after that.
rocksalt
Newbie
*
Offline Offline

Activity: 51
Merit: 0



View Profile
June 30, 2011, 08:02:40 AM
 #472

i use this in a batch file

your_miner.exe -o http://btcguild.com:8332/ -v -u username -p password
Anonymous
Guest

June 30, 2011, 03:06:41 PM
 #473

It still doesn't work...

I wrote:

Code:
minerd.exe -o SERVER:PORT -v -u USERNAME.WORKERNAME -p WORKERSPASSWORT
What is wrong?
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1029



View Profile
June 30, 2011, 03:25:23 PM
 #474

Why not use a config file? See #473.
rocksalt
Newbie
*
Offline Offline

Activity: 51
Merit: 0



View Profile
June 30, 2011, 03:54:01 PM
 #475

minerd.exe has different variables.... minderd /?
Anonymous
Guest

June 30, 2011, 04:31:36 PM
 #476

It still doesn't work.
Now, my computer says, the process had crashed and have to be killed.

Well, it changes a bit now...
rocksalt
Newbie
*
Offline Offline

Activity: 51
Merit: 0



View Profile
June 30, 2011, 04:33:52 PM
 #477

minerd.exe --algo cryptopp_asm32 --s 2 --url http://btcguild.com/ --userpass xxxx:xxx
Anonymous
Guest

June 30, 2011, 04:50:50 PM
 #478

I got an error message:
Code:
HTTP request failed: necessary data rewind wasn't possible
rocksalt
Newbie
*
Offline Offline

Activity: 51
Merit: 0



View Profile
July 01, 2011, 08:03:49 AM
 #479

never seen that one before

can you telnet to your pool ?

open a cmd prompt

type this for example.. change the btcguild to your mining pool

C:\>telnet http://btcguild.com 8332

you should get a blank screen as it makes a connection

if you do, then it's not a comms issue.... do you have any filtering in between your miner machine and the pool ? like proxy or firewall that does content filtering ?

if you can't telnet and get the blank screen then your not able to see it to make the connection in the first place, so i'd say test it against another pool.. see if you get same result, failing that, run up a local bitcoin.exe -server  follow the instructions on setting up a user account locally and connect your miner to your local bitcoin server and see what the results are.
jgarzik (OP)
Legendary
*
Offline Offline

Activity: 1596
Merit: 1091


View Profile
July 13, 2011, 03:18:34 AM
 #480

cpuminer has largely been superceded by Con Kolivas's cgminer fork.  See cgminer's official forum thread for updates and details.


Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own.
Visit bloq.com / metronome.io
Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!