1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-10 23:08:07 +00:00
Commit Graph

119 Commits

Author SHA1 Message Date
Con Kolivas
b6ae1db838 The submit_lock is not required nor helpful. 2011-07-04 19:47:45 +10:00
Con Kolivas
d1c0cccdf1 Show correct GPU from thread number. 2011-07-04 19:47:45 +10:00
Con Kolivas
f11149928a Implement a potentially variable number of threads per gpu, setting it to 2 for now. 2011-07-04 19:47:45 +10:00
Con Kolivas
08f56f5f2f Set default CPU threads to 0 if GPU mining. 2011-07-04 19:47:45 +10:00
Con Kolivas
295ef0f9b8 Discard accumulated work when longpoll indicates a new block. 2011-07-04 19:47:45 +10:00
Con Kolivas
f44e8fac12 Curl appears to be not thread safe so only have one curl open at a time. 2011-07-04 19:47:45 +10:00
Con Kolivas
343ae85137 Intensity 5 is too high for a normal desktop causing unacceptable lag so change the default to 4. 2011-07-04 19:47:45 +10:00
Con Kolivas
88e2cf7b34 Initialise libcurl properly. 2011-07-04 19:47:45 +10:00
Con Kolivas
656b485d80 Make the worksize and vector width configurable. 2011-07-04 19:47:45 +10:00
Con Kolivas
ead1281b57 Cleanup of return codes. 2011-07-04 19:47:45 +10:00
Con Kolivas
f6486efb71 Make the getting of work asynchronous from the mining threads requests by always having one work item queued.
This prevents drops in hash rates when getting work from a pool that is slow to respond.
Use a local static struct work in get_work that is used to queue one extra work item.
2011-07-04 19:47:45 +10:00
Con Kolivas
0cef8f8da4 Default scan timeout of 5 seconds is way too short leading to abandoning blocks too early and being seen as an "inefficient" miner. Increase it to 60. 2011-07-04 19:47:45 +10:00
Con Kolivas
d2cb012f5a Detach the thread once created so we don't have to explicitly try and join it. 2011-07-04 19:47:45 +10:00
Con Kolivas
b7a177532d Make a separate thread for work submission that returns immediately so that miner threads aren't kept waiting when submitting results to slow pools. 2011-07-04 19:47:44 +10:00
ckolivas
e8f4eeade1 Use total mhashes as a counter to prevent 32 bit overflows. 2011-07-04 19:47:44 +10:00
ckolivas
f792608893 Limit intensity to 10. Anything larger overflows.
Simplify test for new work.
2011-07-04 19:47:19 +10:00
ckolivas
feb8cfc8fa applog fixes. 2011-07-04 19:47:19 +10:00
ckolivas
b19ee2f5f5 Make sure a GPU doesn't work on a block longer than opt_scantime. 2011-07-04 19:47:19 +10:00
ckolivas
26546ad5b9 Make the optimisations per-gpu card and update code to work properly with multiple cards. 2011-07-04 19:47:19 +10:00
Con Kolivas
852e78e7b4 Fix mutex unlocking with only one thread and opt_log_interval. 2011-07-04 19:47:19 +10:00
Con Kolivas
70f7357692 Make the output display the 5 second and total average Mhash/s.
Make the log interval configurable.
2011-07-04 19:47:19 +10:00
Con Kolivas
debe77767a Use cpu_from_thr_id when binding threads. 2011-07-04 19:47:19 +10:00
Con Kolivas
4cd5f47efa Revert "Multiple compiler warning fixes."
This reverts commit a5cbfbde2610e9f60e14b41a4e0595bcb34c772a.

Broke.
2011-07-04 19:47:19 +10:00
Con Kolivas
88761e6cf2 Multiple compiler warning fixes. 2011-07-04 19:47:19 +10:00
ckolivas
19eea9067f Implement code detecting max work size and optimal vector width.
Use this to patch the kernel to suit the idea values for the card.
Then use these values when invoking the kernel.
2011-07-04 19:47:19 +10:00
ckolivas
237a5067c3 Skip trying to start thread of GPUs that don't successfully initcl(). 2011-07-04 19:47:19 +10:00
ckolivas
14ca888373 Update help. 2011-07-04 19:47:19 +10:00
ckolivas
c08be809f2 Fix the setting of number of processors.
Add scan intensity variable.
2011-07-04 19:47:19 +10:00
ckolivas
2ab6180d55 Reset count once all threads are started to avoid slow rate being shown initially.
Update copyright notice and comments.
2011-07-04 19:47:19 +10:00
Con Kolivas
932ff72f70 The gpuminer thread uses very little cpu and needs to keep the gpu busy with as few delays as possible. Don't nice it. 2011-07-04 19:47:19 +10:00
Con Kolivas
f54d2cc0ed Make poclbm use 4 vectors and decrease worksize to keep pipelines fullish.
Make it possible to have 0 CPU threads and update docs.
Fix counter with no cpu threads.
2011-07-04 19:47:19 +10:00
ckolivas
662404812a Fix deref. 2011-07-04 19:47:19 +10:00
ckolivas
fa2f6b19c1 Unwind. 2011-07-04 19:47:19 +10:00
ckolivas
79fec01a46 Remove the input buffer and just pass args to the kernel as per plugin design. 2011-07-04 19:47:19 +10:00
Con Kolivas
f117675ac2 Optimise work loop to make cl calls asynchronous where possible. 2011-07-04 19:47:19 +10:00
Con Kolivas
f05270b8c8 Optimise loop and make debug debug only. 2011-07-04 19:47:19 +10:00
Con Kolivas
91e5cef3a5 Actually get first BFI_INT patch working. 2011-07-04 19:47:19 +10:00
Con Kolivas
910e6943b2 Increase baseline threads to 1<<22. Make total counter regularly update every 5 seconds.
Only write the blank buffer when it needs to be blanked.
2011-07-04 19:47:19 +10:00
ckolivas
6b77d8500d Fixes. 2011-07-04 19:47:19 +10:00
ckolivas
ce3382ca53 Don't run gpu thread idle prio. 2011-07-04 19:47:18 +10:00
Con Kolivas
dde7039726 Merge gpumining from oclmine. Unstable. 2011-07-04 19:46:39 +10:00
ckolivas
51817422fc Cope with older linux kernel headers that don't have the newer scheduling policies defined. 2011-07-04 19:46:38 +10:00
Con Kolivas
0a8ac14c9e Forgot the else. 2011-07-04 19:46:38 +10:00
Con Kolivas
4f8045c253 Only increase solutions count when confirmed true. 2011-07-04 19:46:38 +10:00
Con Kolivas
ce750e42b3 Add a solution counter to the output. 2011-07-04 19:46:38 +10:00
Con Kolivas
7062557e74 Implement global hash rate counter through mutex lock protected data.
Make the output easier to read.
Don't do hashmeter updates if no output is requested.
Remove redundant output when using a single thread.
2011-07-04 19:46:38 +10:00
Jeff Garzik
4d6be0c194 Fix number-of-threads init logic on Windows 2011-07-04 19:46:38 +10:00
Jeff Garzik
8e0e24936c only read processor count via sysconf on non-Windows platforms 2011-07-04 19:46:38 +10:00
ckolivas
262b98ca95 Linux + x86_64 optimisations.
Add likely() macro.
Optimise a few obvious code paths with likely/unlikely.
Change algo to sse2_amd64 by default.
Move priority change to worker threads only.
Detect number of CPUs and set default number of threads == CPUs.
Add scheduling policy change to worker threads to SCHED_IDLE first and fallback to SCHED_BATCH on linux.
Don't error when failing to set priority.
Add CPU affinity and bind worker threads to CPUs when number of threads is a multiple of number of CPUs.
Update NEWS with changes.
2011-07-04 19:46:38 +10:00
Jeff Garzik
69529c3859 Support full URL, in X-Long-Polling header 2011-03-24 14:09:49 -04:00