Bitcoin Forum
November 18, 2024, 10:53:38 PM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   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 386313 times)
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 10, 2011, 03:22:09 PM
 #321

sha256_4way.c:51: sorry, unimplemented: inlining failed in call to ‘ROTR’: function body not available
sha256_4way.c:458: sorry, unimplemented: called from here
sha256_4way.c:51: sorry, unimplemented: inlining failed in call to ‘ROTR’: function body not available

Use a newer compiler.

xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 10, 2011, 03:22:46 PM
 #322

anyway to support sse2 on ubuntu ?

Do you mean 4way or sse2_64 algorithm?

sse2_64 requires yasm, and a 64-bit machine.

Spoddy
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 10, 2011, 06:36:04 PM
 #323

Thanks xf2_org, I'm now up to gcc 4.3.3

gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4)


but now I get

 make
make  all-recursive
make[1]: Entering directory `/home/spoddy/cpuminer-1.0'
Making all in compat
make[2]: Entering directory `/home/spoddy/cpuminer-1.0/compat'
Making all in jansson
make[3]: Entering directory `/home/spoddy/cpuminer-1.0/compat/jansson'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/home/spoddy/cpuminer-1.0/compat/jansson'
make[3]: Entering directory `/home/spoddy/cpuminer-1.0/compat'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/spoddy/cpuminer-1.0/compat'
make[2]: Leaving directory `/home/spoddy/cpuminer-1.0/compat'
make[2]: Entering directory `/home/spoddy/cpuminer-1.0'
gcc  -O3 -Wall -msse2 -pthread  -o minerd cpu-miner.o util.o sha256_generic.o sha256_4way.o sha256_via.o sha256_cryptopp.o sha256_sse2_amd64.o -lcurl -Wl,-Bsymbolic-functions -lgssapi_krb5 compat/jansson/libjansson.a -lpthread 
cpu-miner.o: In function `miner_thread':
cpu-miner.c:(.text+0xb2e): undefined reference to `ScanHash_4WaySSE2'
collect2: ld returned 1 exit status
make[2]: *** [minerd] Error 1
make[2]: Leaving directory `/home/spoddy/cpuminer-1.0'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/spoddy/cpuminer-1.0'
make: *** [all] Error 2


Is this still a gcc version issue? And what version have others managed to compile on?

Thanks
metonymous
Newbie
*
Offline Offline

Activity: 29
Merit: 0


View Profile
May 10, 2011, 06:49:08 PM
 #324

OSX CPU Miner Binary

donations welcome @ 1MBBi4ZXrRaLZWFNrfHSSfTA8S9ZUBeUFD
ancow
Full Member
***
Offline Offline

Activity: 373
Merit: 100


View Profile WWW
May 11, 2011, 08:26:42 AM
 #325

sha256_4way.c:51: sorry, unimplemented: inlining failed in call to ‘ROTR’: function body not available
sha256_4way.c:458: sorry, unimplemented: called from here
sha256_4way.c:51: sorry, unimplemented: inlining failed in call to ‘ROTR’: function body not available

Use a newer compiler.
Shouldn't the configure script be checking for that, then?

BTC: 1GAHTMdBN4Yw3PU66sAmUBKSXy2qaq2SF4
Tarion
Member
**
Offline Offline

Activity: 224
Merit: 12


View Profile
May 11, 2011, 11:49:55 AM
 #326

Code:
root@vs1028:/home/tarion/apps/cpuminer# apt-cache show libcurl3
Package: libcurl3
Priority: optional
Section: libs
Installed-Size: 444
Maintainer: Domenico Andreoli <cavok@debian.org>
Architecture: i386
Source: curl
Version: 7.18.2-8lenny4

But configure gives me:
Code:
checking whether libcurl is usable... no
configure: error: Missing required libcurl >= 7.10.1

Any Idea what is wrong?
Tarion
Member
**
Offline Offline

Activity: 224
Merit: 12


View Profile
May 11, 2011, 11:58:08 AM
 #327

Found it on another page in this thread:

Quote
sudo apt-get install libcurl4-openssl-dev

Works! Smiley
tuxsoul
Newbie
*
Offline Offline

Activity: 40
Merit: 0



View Profile WWW
May 12, 2011, 02:23:07 AM
 #328

Hi, I like to give some news about the not oficial debian/ubuntu package of bitcoin-cpuminer:

* You can find the version 0.8.1 in ubuntu and debian, only in ubuntu (maverick, natty, oneiric) have SSE2_64 enable.
* If not exist any issue in the last version 1.0, i will create a package in a couple days.
* If possible this package get in the next ubuntu release, please check: https://bugs.launchpad.net/ubuntu/+bug/780258, give you comment's or any feedback.

* @jgarzik: In ubuntu revu get this comment
http://revu.ubuntuwire.com/p/bitcoin-cpuminer

Quote
@sikon: I’m not sure about the binary name "minerd". It sounds too generic, not specific to BitCoin. Could it be renamed?

what you think @jgarzik ?

read more ...
http://bitcointalk.org/index.php?topic=2207.msg115320#msg115320
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 12, 2011, 04:39:15 AM
 #329

Quote
@sikon: I’m not sure about the binary name "minerd". It sounds too generic, not specific to BitCoin. Could it be renamed?

A rename will only be considered if a conflict exists with an existing, real-world program.

Otherwise, you're already looking at a program that's seen six months of heavy use on Windows and Linux, using the "minerd" name.  A rename would create pointless churn, with zero value for existing cpuminer users.

edanite
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
May 13, 2011, 08:53:18 PM
 #330

I got Mach-O x86_64 SSE2 to work (Mac OS 10.6.7). Here's the list of everything I did:

1. I got the file libcurl.m4 from a curl source tarball and stuck it in an m4 directory.

2. I installed the gnulib byteswap module into the cpuminer directory and updated build scripts as necessary.

3. When configuring, I had to use both "-arch x86_64" in CFLAGS and the '--build=x86_64-apple-darwin10.7.0' flag, since it seems to detect that my kernel is 32 bit rather than that my processor is 64 bit.

4. To assemble sha256_xmm_amd64.asm, I set "-f macho64" in the Makefile (todo: integrate this into configure)

5. To fix the assembly failures, I applied the patch here: <https://gist.github.com/971291>.

It fixes the 32-bit offset by using another register to hold the current target, which is then used directly and updated as necessary. This adds one extra line of assembly (I'm not sufficiently familiar with x86_64 assembly to know whether or not it actually adds an extra _instruction_, but it probably does) to the main loop as well as a push and a pop to save and restore the values of the register I used (r8). The assembly already uses r10 without doing a save and restore, but I'm not sure how to check that r8 is unused, so this might be unnecessary. It also fixes a problem where my gcc apparently adds leading underscores to all of the names.

This is the least clean section because it probably breaks the build on Linux. Nobody said assembly was supposed to be portable...
chromicant
Newbie
*
Offline Offline

Activity: 40
Merit: 0


View Profile
May 13, 2011, 10:16:23 PM
 #331

Sorry I've missed most of the recent discussion...busy with a new addition...

The r10 "trick" of letting it get clobbered requires you know something about the calling convention of the OS in use. The Linux SSE2 code for x86_64 will completely break on Windows, since there's a different set of registers saved between function calls. Depending on what OSX does with r8, you may be able to let it get clobbered, saving you a cycle or two.

I never really found any docs on how the calling convention works under Darwin/Mac OSX. I'm sure reading the GCC source code would enlighten someone. But I also like my sanity.
gkolt
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
May 14, 2011, 06:39:51 PM
Last edit: May 14, 2011, 07:11:25 PM by gkolt
 #332

I have a bitcoind server running and accepting connections aswell (rpcallowip=*).

I have tried to run minerd connecting to my bitcoind server, but all I got is:

# ./minerd -c miner.cfg
[2011-05-14 20:24:41] 8 miner threads started, using SHA256 'sse2_64' algorithm.
[2011-05-14 20:33:41] PROOF OF WORK RESULT: false (booooo)
[2011-05-14 20:34:16] PROOF OF WORK RESULT: false (booooo)

Also, the hash meter on the other side (bitcoind) did not increase at all.
Shouldn't the bitcoind (server) hash meter increase aswell ?

Am I missing something ? Am I 'pooling' wrong ?
I'm running openSUSE 11.3, kernel 2.6.34.8-0.2, i7 930.

Thanks in advance.
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 15, 2011, 02:57:30 AM
 #333


Version 1.0.1 is released.

The only change is the addition of OSX build support.  FreeBSD is also reported to be working out of the box.

There is no Windows build for this release (no need).

Amelios
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
May 15, 2011, 04:37:47 PM
 #334

I'm still getting this when trying to compile 1.0.1 on OSX:
Code:
ld: warning: in x86_64/libx8664.a, file was built for unsupported file format which is not the architecture being linked (x86_64)
Undefined symbols:
  "_CalcSha256_x64", referenced from:
      _scanhash_sse2_64 in sha256_sse2_amd64.o
      _scanhash_sse2_64 in sha256_sse2_amd64.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[2]: *** [minerd] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
General-Beck
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1



View Profile
May 15, 2011, 09:06:51 PM
 #335

Ubuntu 11.04 Natty AMD64 make problems
Code:
general-beck@gblive:/userdata/Bitcoin/cpuminer-1.0.1$ CFLAGS="-O3 -Wall -msse2" ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether gcc needs -traditional... no
checking whether gcc and cc understand -c and -o together... yes
checking for ranlib... ranlib
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for json_loads in -ljansson... yes
checking for pthread_create in -lpthread... yes
checking for yasm... /usr/bin/yasm
checking if yasm version is greater than 1.0.1... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for gawk... (cached) gawk
checking for curl-config... /usr/bin/curl-config
checking for the version of libcurl... 7.21.3
checking for libcurl >= version 7.10.1... yes
checking whether libcurl is usable... yes
checking for curl_free... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating compat/Makefile
config.status: creating compat/jansson/Makefile
config.status: creating x86_64/Makefile
config.status: creating cpuminer-config.h
config.status: cpuminer-config.h is unchanged
config.status: executing depfiles commands
general-beck@gblive:/userdata/Bitcoin/cpuminer-1.0.1$ make
make  all-recursive
make[1]: Bxoд в кaтaлoг `/userdata/Bitcoin/cpuminer-1.0.1'
Making all in compat
make[2]: Bxoд в кaтaлoг `/userdata/Bitcoin/cpuminer-1.0.1/compat'
make[3]: Bxoд в кaтaлoг `/userdata/Bitcoin/cpuminer-1.0.1/compat'
make[3]: Цeль `all-am' нe тpeбyeт выпoлнeния кoмaнд.
make[3]: Bыxoд из кaтaлoгa `/userdata/Bitcoin/cpuminer-1.0.1/compat'
make[2]: Bыxoд из кaтaлoгa `/userdata/Bitcoin/cpuminer-1.0.1/compat'
Making all in x86_64
make[2]: Bxoд в кaтaлoг `/userdata/Bitcoin/cpuminer-1.0.1/x86_64'
make[2]: Цeль `all' нe тpeбyeт выпoлнeния кoмaнд.
make[2]: Bыxoд из кaтaлoгa `/userdata/Bitcoin/cpuminer-1.0.1/x86_64'
make[2]: Bxoд в кaтaлoг `/userdata/Bitcoin/cpuminer-1.0.1'
gcc -DHAVE_CONFIG_H -I. -pthread -fno-strict-aliasing    -DHAS_YASM -O3 -Wall -msse2 -MT cpu-miner.o -MD -MP -MF .deps/cpu-miner.Tpo -c -o cpu-miner.o cpu-miner.c
cpu-miner.c: In function ‘parse_arg’:
cpu-miner.c:736:3: warning: passing argument 2 of ‘json_load_file’ makes integer from pointer without a cast
/usr/include/jansson.h:221:9: note: expected ‘size_t’ but argument is of type ‘struct json_error_t *’
cpu-miner.c:736:3: error: too few arguments to function ‘json_load_file’
/usr/include/jansson.h:221:9: note: declared here
make[2]: *** [cpu-miner.o] Oшибкa 1
make[2]: Bыxoд из кaтaлoгa `/userdata/Bitcoin/cpuminer-1.0.1'
make[1]: *** [all-recursive] Oшибкa 1
make[1]: Bыxoд из кaтaлoгa `/userdata/Bitcoin/cpuminer-1.0.1'
make: *** [all] Oшибкa 2
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 15, 2011, 10:00:03 PM
 #336

I'm still getting this when trying to compile 1.0.1 on OSX:

Avoid yasm.

xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 15, 2011, 10:00:26 PM
 #337

Ubuntu 11.04 Natty AMD64 make problems

Use jansson that ships with cpuminer.

Amelios
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
May 15, 2011, 11:58:34 PM
 #338

I'm still getting this when trying to compile 1.0.1 on OSX:

Avoid yasm.



Recommendations on what to use instead?
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
May 16, 2011, 12:30:00 AM
 #339

I'm still getting this when trying to compile 1.0.1 on OSX:

Avoid yasm.



Recommendations on what to use instead?

There is no alternative.  It does not work for cpuminer on OSX.

Amelios
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
May 16, 2011, 12:37:54 AM
 #340

I'm still getting this when trying to compile 1.0.1 on OSX:

Avoid yasm.



Recommendations on what to use instead?

There is no alternative.  It does not work for cpuminer on OSX.



So there's no way to use cpuminer on OSX, then?  I was a little thrown off by the OSX build support message...
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!