xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 11:59:47 AM |
|
Just to confirm..
the SSE4 implementation is intel only ?
Would you be able to make an SSE4a (amd) implementation ?
|
|
|
|
-ck (OP)
Legendary
Offline
Activity: 4242
Merit: 1644
Ruu \o/
|
|
July 23, 2011, 12:10:04 PM |
|
Just to confirm..
the SSE4 implementation is intel only ?
Would you be able to make an SSE4a (amd) implementation ?
Yes it's intel only. No, I cannot make an amd implementation because I'm not an assembly coder, but I'm very happy to accept code from others (which is where the SSE4 implementation came from). SSE4 was only marginally faster than SSE2 anyway on my Intel based CPU. NOTE: None of this has anything to do with GPU mining.
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 12:25:57 PM |
|
Ok.. fixed the problem with mstcpip.h missing when compiling on windows (mingw) mstcpip.h is a wine (codeweavers) header file and not a microsoft header file. fix: create a file named mstcpip.h and save it into your mingw/includes directory, paste the following contents into the file mingw/includes/mstcpip.h (version 1.1.2.4) * * Copyright 2008 Hans Leidekker for CodeWeavers. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
struct tcp_keepalive { u_long onoff; u_long keepalivetime; u_long keepaliveinterval; };
#ifndef USE_WS_PREFIX
#define SIO_RCVALL _WSAIOW(IOC_VENDOR, 1) #define SIO_RCVALL_MCAST _WSAIOW(IOC_VENDOR, 2) #define SIO_RCVALL_IGMPMCAST _WSAIOW(IOC_VENDOR, 3) #define SIO_KEEPALIVE_VALS _WSAIOW(IOC_VENDOR, 4) #define SIO_ABSORB_RTRALERT _WSAIOW(IOC_VENDOR, 5) #define SIO_UCAST_IF _WSAIOW(IOC_VENDOR, 6) #define SIO_LIMIT_BROADCASTS _WSAIOW(IOC_VENDOR, 7) #define SIO_INDEX_BIND _WSAIOW(IOC_VENDOR, 8) #define SIO_INDEX_MCASTIF _WSAIOW(IOC_VENDOR, 9) #define SIO_INDEX_ADD_MCAST _WSAIOW(IOC_VENDOR, 10) #define SIO_INDEX_DEL_MCAST _WSAIOW(IOC_VENDOR, 11)
#define RCVALL_OFF 0 #define RCVALL_ON 1 #define RCVALL_SOCKETLEVELONLY 2
#else
#define WS_SIO_RCVALL _WSAIOW(WS_IOC_VENDOR, 1) #define WS_SIO_RCVALL_MCAST _WSAIOW(WS_IOC_VENDOR, 2) #define WS_SIO_RCVALL_IGMPMCAST _WSAIOW(WS_IOC_VENDOR, 3) #define WS_SIO_KEEPALIVE_VALS _WSAIOW(WS_IOC_VENDOR, 4) #define WS_SIO_ABSORB_RTRALERT _WSAIOW(WS_IOC_VENDOR, 5) #define WS_SIO_UCAST_IF _WSAIOW(WS_IOC_VENDOR, 6) #define WS_SIO_LIMIT_BROADCASTS _WSAIOW(WS_IOC_VENDOR, 7) #define WS_SIO_INDEX_BIND _WSAIOW(WS_IOC_VENDOR, 8) #define WS_SIO_INDEX_MCASTIF _WSAIOW(WS_IOC_VENDOR, 9) #define WS_SIO_INDEX_ADD_MCAST _WSAIOW(WS_IOC_VENDOR, 10) #define WS_SIO_INDEX_DEL_MCAST _WSAIOW(WS_IOC_VENDOR, 11)
#define WS_RCVALL_OFF 0 #define WS_RCVALL_ON 1 #define WS_RCVALL_SOCKETLEVELONLY 2
#endif /* USE_WS_PREFIX */ http://wine.sourcearchive.com/documentation/1.1.24/mstcpip_8h_source.html
|
|
|
|
dikidera
|
|
July 23, 2011, 12:36:10 PM |
|
Thanks xcooling, everything works now
|
|
|
|
The00Dustin
|
|
July 23, 2011, 12:40:07 PM |
|
Precompiled Win32 binary crashes on --help on my XP Win32 system. I also started getting "not a valid win32 application" after that crash, but the corruption may have been caused by my security software as opposed to the --help command The --help crash happens even on fresh extraction, though (while mining works on fresh extraction). I can post the dwwin output if it would be helpful.
|
|
|
|
xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 12:58:07 PM |
|
A nice idea would be saving of the settings into a default.config file.
If the program is launched with no parameters and the default.config exists it would load the values from the default.config file.
If the program is launched with no parameters and there is no default.config or it is invalid, it would prompt the user for the values, and then save them to the default.config.
|
|
|
|
-ck (OP)
Legendary
Offline
Activity: 4242
Merit: 1644
Ruu \o/
|
|
July 23, 2011, 01:12:12 PM |
|
I was considering that long term. It's just that with the code and features changing so rapidly, deciding on a format for the config file that's easy to use and parse is the real issue. Currently it accepts some basic json formatted config file and working on parsing code is not remotely my strong point
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 01:15:15 PM |
|
you could save it in binary format ;-P
what IDE are you using for dev ? might take a look at it. visualstudio doesnt play nice with mingw
|
|
|
|
-ck (OP)
Legendary
Offline
Activity: 4242
Merit: 1644
Ruu \o/
|
|
July 23, 2011, 01:18:35 PM |
|
I don't use an IDE. Just a text editor (kate) on linux.
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 01:20:35 PM |
|
your a hardcore c programmer ;-P
i code php like that. but not c/c++
|
|
|
|
zaytsev
Newbie
Offline
Activity: 59
Merit: 0
|
|
July 23, 2011, 01:32:51 PM |
|
your a hardcore c programmer ;-P You know, it's the same guy that is known for Linux kernel schedulers outside of this forum... No wonder. Re. config format: JSON + arrays is absolutely awesome + you don't have to parse it, because you are using a library, why even think of changing?
|
|
|
|
ffwd
Newbie
Offline
Activity: 17
Merit: 0
|
|
July 23, 2011, 01:35:35 PM |
|
visualstudio doesnt play nice with mingw
try code::blocks ide. been using it since my first C course
|
|
|
|
|
xcooling
Member
Offline
Activity: 145
Merit: 10
|
|
July 23, 2011, 01:48:52 PM |
|
your a hardcore c programmer ;-P You know, it's the same guy that is known for Linux kernel schedulers outside of this forum... No wonder. Re. config format: JSON + arrays is absolutely awesome + you don't have to parse it, because you are using a library, why even think of changing? I agree 100% on json, use it for all my php scripts. However you can dump the varibles into a binary database and load them, it can be easier if options are not formalized. Yeah the CK kernel patch is legend.
|
|
|
|
zaytsev
Newbie
Offline
Activity: 59
Merit: 0
|
|
July 23, 2011, 01:52:21 PM |
|
Could somebody who uses Arch Linux please update this pkgbuild for cgminer on AUR? Try this: I've never actually seen Arch, but should work BTC =) P.S. RPM for EL6
|
|
|
|
ffwd
Newbie
Offline
Activity: 17
Merit: 0
|
|
July 23, 2011, 01:55:20 PM |
|
Specifically it searches for SSE4.1 and I don't know how that differs from sse4.2 and sse4a
looking at the asm code - it uses "movntdqa" which is a 4.1 instruction - that means intel (only) processors starting with core 2 and newer (core i3, i5, i7) it also looks like its the only instruction in the code that requires sse4. that explains the marginal difference with sse2 code perhaps someone more familiar with asm will find a way to use the higher sse sets much more effectively, but for now, the difference between sse2 and sse4(.1) implementation is not worth switching cpu's ) just for reference: sse 4.2 is intel (only) core i3, i5, i7 sse 4a is amd only starting with barcelona arch
|
|
|
|
-ck (OP)
Legendary
Offline
Activity: 4242
Merit: 1644
Ruu \o/
|
|
July 23, 2011, 02:03:30 PM |
|
Re. config format: JSON + arrays is absolutely awesome + you don't have to parse it, because you are using a library, why even think of changing?
Uh yeah, about that. I haven't got the foggiest how to talk [to] that library yet... There was so much I wanted to code for cgminer first that I knew I could do before looking at it (as you can probably see from the hundreds of hours of code I've put in already).
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
twmz
|
|
July 23, 2011, 02:25:10 PM |
|
1.4.0 seg faults on OS X (Lion) 1.3.1 worked fine (with -v 1) With 1.4.0, part of the screen draws before the segfault, so here is a screen grab in case the location that "Segmentation Fault 11" draws might be an indication of where the crash is happening (there are also some errors in the message log): https://i.imgur.com/8EW8T.pngNote, if you are not aware, the phatk kernel in the latest poclbm and phoenix don't work with Apples Open CL implementation (and never have). But your kernel did work until 1.4.0. Not sure if your kernel changes in 1.4.0 triggered this problem or if it was changes in the C code that triggered the problem. Let me know what you'd like me to do to help debug this, because cgminer is (was) one of the only miners working in OS X Lion.
|
Was I helpful? 1 TwmzX1wBxNF2qtAJRhdKmi2WyLZ5VHRs WoT, GPGBitrated user: ewal.
|
|
|
-ck (OP)
Legendary
Offline
Activity: 4242
Merit: 1644
Ruu \o/
|
|
July 23, 2011, 02:28:58 PM |
|
1.4.0 seg faults on OS X (Lion) 1.3.1 worked fine (with -v 1) With 1.4.0, part of the screen draws before the segfault, so here is a screen grab in case the location that "Segmentation Fault 11" draws might be an indication of where the crash is happening (there are also some errors in the message log): https://i.imgur.com/8EW8T.pngNote, if you are not aware, the phatk kernel in the latest poclbm and phoenix don't work with Apples Open CL implementation (and never have). But your kernel did work until 1.4.0. Not sure if your kernel changes in 1.4.0 triggered this problem or if it was changes in the C code that triggered the problem. Let me know what you'd like me to do to help debug this, because cgminer is (was) one of the only miners working in OS X Lion. I was aware phatk was incompatible with quite a few things, which is why I kept the poclbm kernel in there. Some of the detection changes might select phatk now if they hadn't previously, so perhaps that's the issue. Try explicitly setting the kernel (new feature in 1.4.0) to poclbm with -k poclbm
|
Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel 2% Fee Solo mining at solo.ckpool.org -ck
|
|
|
ancow
|
|
July 23, 2011, 03:44:42 PM Last edit: July 23, 2011, 04:47:37 PM by ancow |
|
I get a segfault, too (on OS X 10.6.8 ). Here's the output + command line: cgminer-1.4.0> gdb --args ./cgminer --url http://pit.deepbit.net:8332 -u XXX -p XXX --url http://swepool.net-u XXX -p XXX -T [2011-07-23 17:35:59] Long-polling activated for http://pit.deepbit.net:8332/listenChannel [2011-07-23 17:35:59] Creating Command Queue. (clCreateCommandQueue) [2011-07-23 17:35:59] Failed to init GPU thread 0 [2011-07-23 17:35:59] Creating Command Queue. (clCreateCommandQueue) [2011-07-23 17:35:59] Failed to init GPU thread 0 GPU 0: [0.0 Mh/s] [Q:0 A:0 R:0 HW:0 E:0% U:0.00/m]
Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000038 text_print_status [inlined] () at main.c:738 738 printf(" %sPU %d: [%.1f Mh/s] [Q:%d A:%d R:%d HW:%d E:%.0f%% U:%.2f/m]\n", And the trace: (gdb) backtrace #0 text_print_status [inlined] () at main.c:738 #1 print_status [inlined] () at /Users/XXX/cgminer-1.4.0/main.c:804 #2 0x00000001000041ef in main (argc=1, argv=<value temporarily unavailable, due to optimizations>) at main.c:3516
|
BTC: 1GAHTMdBN4Yw3PU66sAmUBKSXy2qaq2SF4
|
|
|
|