Bitcoin Forum
September 25, 2016, 05:24:03 PM *
News: Latest stable version of Bitcoin Core: 0.13.0 (New!) [Torrent]. Make sure you verify it.
 
   Home   Help Search Donate Login Register  
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 371714 times)
theowalpott
Member
**
Offline Offline

Activity: 82


View Profile
June 21, 2011, 06:03:16 PM
 #461

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

1FwGATm6eU5dSiTp2rpazV5u3qwbx1fuDn
1474824243
Hero Member
*
Offline Offline

Posts: 1474824243

View Profile Personal Message (Offline)

Ignore
1474824243
Reply with quote  #2

1474824243
Report to moderator
1474824243
Hero Member
*
Offline Offline

Posts: 1474824243

View Profile Personal Message (Offline)

Ignore
1474824243
Reply with quote  #2

1474824243
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1474824243
Hero Member
*
Offline Offline

Posts: 1474824243

View Profile Personal Message (Offline)

Ignore
1474824243
Reply with quote  #2

1474824243
Report to moderator
1474824243
Hero Member
*
Offline Offline

Posts: 1474824243

View Profile Personal Message (Offline)

Ignore
1474824243
Reply with quote  #2

1474824243
Report to moderator
theowalpott
Member
**
Offline Offline

Activity: 82


View Profile
June 21, 2011, 10:10:16 PM
 #462

Shameless bump here... I've still been unable to get cpuminer to work on btcguild, no matter what settings i choose, the silly thing still throws the errors.... is anyone using cpu miner on btcguild ?

Im now discovering a different issue Tongue

minerd.exe --algo cryptopp_asm32 --s 2 --url http://btcguild.com/ --userpass xxxx:xxx this runs when i tried it on deepbit, local miner and a few others....

however on btcguild i get the following error

[2011-06-12 10:02:16] 1 miner threads started, using SHA256 'cryptopp_asm32' algorithm.
[2011-06-12 10:02:20] JSON decode failed(1): '[' or '{' expected near '<'
[2011-06-12 10:02:20] json_rpc_call failed, retry after 30 seconds


its only happening with btcguild though, not any of the other mining pools i tested with.

anyone come accross this before ??

Win7
Intel Dual Core
Nvidia GTX470OC

Try using the config files.. Create a file in the same directory as your minerd.exe called btcguild.json with the following inside:
Code:
{
"_comment1" : "Any long-format command line argument ",
"_comment2" : "may be used in this JSON configuration file",

"url" : "http://uscentral.btcguild.com:8332",
"user" : "USER_WORKER",
"pass" : "PASSWORD",

"algo" : "cryptopp_asm32",
"threads" : "4",

"quiet" : false
}

then start the miner with: minerd.exe --config btcguild.json

Obviously you can choose more threads, or remove that line entirely if you want it to be handled automatically. Also, change the algorithm to whichever you prefer.

Hope that helps Smiley

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

Activity: 378



View Profile WWW
June 22, 2011, 09:16:44 AM
 #463

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
theowalpott
Member
**
Offline Offline

Activity: 82


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

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



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

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



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

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: 82


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

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
Sr. Member
****
Offline Offline

Activity: 373


View Profile WWW
June 22, 2011, 12:07:41 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?

BTC: 1GAHTMdBN4Yw3PU66sAmUBKSXy2qaq2SF4
-ck
Moderator
Legendary
*
Offline Offline

Activity: 1918


Ruu \o/


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

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.

Primary developer/maintainer for cgminer and ckpool/ckproxy.
Pooled mine at kano.is, solo mine at solo.ckpool.org
-ck
theowalpott
Member
**
Offline Offline

Activity: 82


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

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
Legendary
*
Offline Offline

Activity: 1470


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

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, bitcoin core dev team and BitPay engineer; opinions are my own, not my employer.
Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
d3m0n1q_733rz
Sr. Member
****
Offline Offline

Activity: 378



View Profile WWW
June 23, 2011, 05:32:03 AM
 #472

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
 #473

(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
Jr. Member
*
Offline Offline

Activity: 52



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

i use this in a batch file

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

TIPS/Donations: mwahahaha.. not that desperate, just a thank you or a flame please but if you must... 1NTZcWQGfdGang9piBKUv9Z1VZ7x6cTXjV
Anonymous
Guest

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

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: 1568



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

Why not use a config file? See #473.

rocksalt
Jr. Member
*
Offline Offline

Activity: 52



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

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

TIPS/Donations: mwahahaha.. not that desperate, just a thank you or a flame please but if you must... 1NTZcWQGfdGang9piBKUv9Z1VZ7x6cTXjV
Anonymous
Guest

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

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
Jr. Member
*
Offline Offline

Activity: 52



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

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

TIPS/Donations: mwahahaha.. not that desperate, just a thank you or a flame please but if you must... 1NTZcWQGfdGang9piBKUv9Z1VZ7x6cTXjV
Anonymous
Guest

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

I got an error message:
Code:
HTTP request failed: necessary data rewind wasn't possible
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:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!