Author

Topic: [ANN] cudaMiner & ccMiner CUDA based mining applications [Windows/Linux/MacOSX] - page 597. (Read 3426922 times)

hero member
Activity: 812
Merit: 1000
3200 cores that's 5x the 750ti... (1500kHahs/s scrypt ? 1900khash/s OC and bios moded)
4gb vram is not a lot on an other hand... and is pretty much old gen...

We need an 8gb 880...
sr. member
Activity: 350
Merit: 250
3200 cores that's 5x the 750ti... (1500kHahs/s scrypt ?)
4gb vram is not a lot on an other hand... and is pretty much old gen...
230w tdp, might be a good card for none memory using coins? that is if it performs the same as 5 750Ti's
legendary
Activity: 1400
Merit: 1050
3200 cores that's 5x the 750ti... (1500kHahs/s scrypt ? 1900khash/s OC and bios moded)
4gb vram is not a lot on an other hand... and is pretty much old gen...
newbie
Activity: 19
Merit: 0
How on earth did you manage that? We havent been able to get over 13Mh/s

Just by benchmarking various launch configs until I found one that worked well, in addition to the other changes I listed in my original post. I modified the hefty_cpu_hash function in cuda_hefty1.cu. Changes made are expressed in this diff: https://gist.github.com/danryan/6a631e0ece773e5f6788

this change is potentially dangerous as the total number of threads run on the GPU is not aligned with the "throughput" variable as used by the heavycoin scanhash function (passed in as the variable "threads" into the function you modified). This could lead to overlapping shares being found (same nonce leading to rejects), part of the nonce space to be skipped (not actually a problem), or buffers to be overrun (potentially serious).

You need to add some code to compute the throughput variable (=total number of GPU threads) based on device properties, e.g. in an early function call to the cuda_hefty1.cu module.

Christian


Oh geez, yep you're absolutely right. I had altered the loop pattern of the hefty_gpu_hash to consider grids of various widths: https://gist.github.com/danryan/fd2a078d33391f2179f7

Appears I neglected to commit this code when running my benchmarks. With the loop changed, I no longer got validations errors from alignment issues but also no longer get the performance increases I saw previously.
sr. member
Activity: 350
Merit: 250
you will want to spawn off your own webserver thread via pthreads, and run a loop in there.

Also make sure you're not busy-polling the CPU (causing 100% load with your thread).

If you can't figure out how to do an event based activation of your thread, place a sleep for
0.1 seconds into your loop. Doesn't this server offer any blocking call for handling incoming
requests?

Christian



right now the entire server is called using this

Code:
#include
#include "mongoose.h"

static int event_handler(struct mg_connection *conn, enum mg_event ev) {
  if (ev == MG_AUTH) {
    return MG_TRUE;   // Authorize all requests
  } else if (ev == MG_REQUEST && !strcmp(conn->uri, "/")) {
mg_printf_data(conn, "%s", "{'requests': [{'type':'");
mg_printf_data(conn, "%s", conn->request_method);
mg_printf_data(conn, "%s", "' },{'query':'");
mg_printf_data(conn, "%s", conn->query_string);
mg_printf_data(conn, "%s", "'},{'requesting':'");
if( !strcmp(conn->query_string, "request=test") ){
mg_printf_data(conn, "%s", "test");
} else { }
mg_printf_data(conn, "%s", "'}],'hashrates': [{'last':'");
mg_printf_data(conn, "%s", "12687");
mg_printf_data(conn, "%s", "' }]}");
    return MG_TRUE;   // Mark as processed
  } else {
    return MG_FALSE;  // Rest of the events are not processed
  }
}

int main(void){
struct mg_server *server = mg_create_server(NULL, event_handler);
mg_set_option(server, "document_root", ".");
mg_set_option(server, "listening_port", "127.0.0.1:81");
mg_set_option(server, "enable_directory_listing", "no");

for (;;) {
mg_poll_server(server, 1000);  // Infinite loop, Ctrl-C to stop
}
mg_destroy_server(&server);
return 0;
}

obviously the part in the main function is located elsewhere in ccminer,
but that is all the code i need to try and implement. right now running that code by itself works, its just putting that code into ccminer and replacing the part for hashrate with the actual hashrate code.
then implement a new case for the server port to be defined so every launched ccminer will have individual different ports for individual reporting

i am going to have a look at the pthread, by the looks of it i could declare a new pthread_join before the line
Code:
pthread_join(thr_info[work_thr_id].pth, NULL);

i then end the server just before where you end the timer
Code:
timeEndPeriod(1);

and i start it in the main just before you declare the main heading text
hero member
Activity: 756
Merit: 502
this is my first bit of messing with C++ coding so things seems a little strange to me, most of cpu-miner.c makes sense but this part i can not figure out

you will want to spawn off your own webserver thread via pthreads, and run a loop in there.

Also make sure you're not busy-polling the CPU (causing 100% load with your thread).

If you can't figure out how to do an event based activation of your thread, place a sleep for
0.1 seconds into your loop. Doesn't this server offer any blocking call for handling incoming
requests?

Christian

full member
Activity: 154
Merit: 100
litecon soon too will be on the myriadcoin-groestl
https://bitcointalksearch.org/topic/m.6153910


No they're not. Just idiots who can't read apparently.
sr. member
Activity: 350
Merit: 250
There was a post last week by a litecoin dev telling they won't do it...they gave the pros and cons and concluded that they
won't change it...
and to be honest, it isn't in their interest to do it (asic is the best thing which can happen to them...)

i know, i was being sarcastic  Wink

Quick question christian, i have been able to put the webserver into ccminer, and i have got it so that it starts, but i have an issue;

i have to run this line of code in a loop so that it checks for connections to the server;
Code:
mg_poll_server(server, 1000);

but i am having trouble trying to find a loop in the code besides;
Code:
static void *workio_thread(void *userdata)

if i put the code there it fails to compile because i have to declare the start of the server in the main function i believe? which is belpw the poll request so tyhe compile gives errors because it can not fidn the variable server which is started when the server starts.

 this is my first bit of messing with C++ coding so things seems a little strange to me, most of cpu-miner.c makes sense but this part i can not figure out
legendary
Activity: 1400
Merit: 1050
by that time, it will be for sure, implemented (as they clearly said a week ago, they won't change the algo...)

what gives you the idea litecoin won't implement it? the 12 million line essay they wrote explaining?
There was a post last week by a litecoin dev telling they won't do it...they gave the pros and cons and concluded that they
won't change it...
and to be honest, it isn't in their interest to do it (asic is the best thing which can happen to them...)
sr. member
Activity: 350
Merit: 250
by that time, it will be for sure, implemented (as they clearly said a week ago, they won't change the algo...)

what gives you the idea litecoin won't implement it? the 12 million line essay they wrote explaining?
legendary
Activity: 1400
Merit: 1050
by that time, it will be for sure, implemented (as they clearly said a week ago, they won't change the algo...)

ps: To be honest, the whole Darkcoin campaign (for and against), is just getting boring...
full member
Activity: 139
Merit: 100
Ok here are the binaries compiled on windows x86: http://www36.zippyshare.com/v/12355342/file.html
You will need the usual libraries to use it (I only included the exe and cudart dll). If you have no idea about what I am talking, please don't use it.

I'll will try to run some test a bit later.

edit: ok I can give several pool in arguments (this seems to work) however I don't know how to switch
edit 2: I am certainly not doing things right...
I tried to test the failover.
So I put in first line, the wallet and in the second a pool.
Then I kill the wallet, however I just get connection refused, retry after 15 sec.
It does not seem to want to switch to the pool

edit 3: I didn't use "-r ".
okay the failover works. After killing the wallet and having retried one time (-r 1), cudaminer switched to the pool with correct user name and password

Regarding the error handling, I inadvertently tested it. I put a wrong argument in the command line, cudaminer started ignoring the wrong argument instead of closing (I personally prefer the old way, rather than starting with some wrong argument...)
   
My Sempron 145 gets very tired from this build

Dear coders, add if possible the kernel of the myriadcoin-groestlin cudaminer please
    
litecon soon too will be on the myriadcoin-groestl
https://bitcointalksearch.org/topic/m.6153910
sr. member
Activity: 350
Merit: 250
He is right. Right now with coin prices dropping unless your using 750's i dont see how anyone is making money. My 780 would just be burning power right now
Aiden was selling pretty high yesterday... (less than 1day of computing resource: 0.05btc... and I sold pretty low... and I am pretty sure it was a bad idea to sell at all)
at some point you just need to mine the good coin

yep, its all about finding that good coin. groestl diff is shooting up but the price is going up aswell.
i have just over half the return i had the other day but almost double the price. I think right now with most coins its time to hold onto them and see what happens

i am glad i spent the money on my 750Ti's just in case we get that one really good coin, but you never know
legendary
Activity: 1400
Merit: 1050
He is right. Right now with coin prices dropping unless your using 750's i dont see how anyone is making money. My 780 would just be burning power right now
Aiden was selling pretty high yesterday... (less than 1day of computing resource: 0.05btc... and I sold pretty low... and I am pretty sure it was a bad idea to sell at all)
at some point you just need to mine the good coin
sr. member
Activity: 350
Merit: 250
He is right. Right now with coin prices dropping unless your using 750's i dont see how anyone is making money. My 780 would just be burning power right now
full member
Activity: 154
Merit: 100
Any experts here? I figured there'd be lots of snarky forum comments but it would be nice if some smart people out there have ideas about how to tweak the script!

I wasn't being snarky. Your GPU is just so incredibly low end.
It's the weakest model nvidia offers within that series.
It's intended to just barely be powerful enough to browse the web and watch some videos.
Maybe play some games on super low on a good day.

It's not snarky, it's being realistic. All you're going to do is waste electricity.
full member
Activity: 199
Merit: 100
Looks like groestlcoin with 2x750ti is more efficient than 1x280x. They have almost the same range of hashrate but 2x750ti power usage is about just half of 280x.

It sucks that I only have 2x750ti at the moment with my other 5x280x... tempting though.
newbie
Activity: 4
Merit: 0
I'm having trouble with mining dogecoin. Getting 9 h/s. Should I do anything to the script instead of autotune?

I downloaded the 337.50 beta update from Nvidia with no improvement!

Here's my specs:

Windows 8 64-bit
Intel Pentium G2020 @ 2.90GHz   35 °C
Ivy Bridge 22nm Technology
4.00GB Single-Channel DDR3 @ 665MHz (9-9-9-24)
Acer Aspire XC600 (SOCKET 0)   28 °C
1023MB NVIDIA GeForce 605 (Elitegroup)   58 °C

cudaminer.exe -H 1 -i 0 -l auto -C 1 -o stratum+tcp://stratum.teamdoge.com:3333 -O   

Any experts here? I figured there'd be lots of snarky forum comments but it would be nice if some smart people out there have ideas about how to tweak the script!
legendary
Activity: 1400
Merit: 1050
NVIDIA GeForce 605 (Elitegroup)

Ouch. I think you may just have to accept you're not going to mine with that.
If it is elitegroup, you should try to mine ~BCX~ the coin for the elite

Have mercy: DABceSeUHRfeRnByhP3yGHnHk8Fx136ehR
oula don't fork the coin  Grin
Jump to: