thodg/cgminer/ocl.c

Branch :


Log

Author Commit Date CI Message
6d10ef2f 2011-08-22 10:17:23 Bump version numbers of kernels to indicate slightly different versions.
4beade37 2011-08-18 22:42:37 Retain the program immediately after it's created from source.
082e20df 2011-08-18 22:34:03 Explicitly tell the compiler to retain the program to minimise the chance of the zero sized binary errors.
0f782ba6 2011-08-17 15:47:18 Update poclbm kernel to FF sized mask and only check that range.
c40f51c7 2011-08-17 15:06:59 Move to cgminer style buffer return and file naming convention and fix a compiler warning.
d15d225a 2011-08-16 23:19:46 Changed phatk version to 2.2
42d49ffd 2011-08-15 20:28:25 Revert "Restart threads by abstracting out the clcontext initialisation and using that instead of probing all cards." This reverts commit 8f186e61e250e71bd606cabb52795eaa0c9ad423.
cf543507 2011-08-15 20:27:02 Revert "Preinitialise the devices only once on startup." This reverts commit 071a0ad2f156ab492ebea6c5a60a1e49a62466de.
b1289a01 2011-08-15 20:26:46 Revert "Move the non cl_ variables into the cgpu info struct to allow creating a new cl state on reinit, preserving known GPU variables." This reverts commit 28880d0dc7c601ee4479921502b66e913e38e36d.
28880d0d 2011-08-13 20:54:20 Move the non cl_ variables into the cgpu info struct to allow creating a new cl state on reinit, preserving known GPU variables. Create a new context from scratch in initCQ in case something was corrupted to maximise our chance of succesfully creating a new worker thread.
071a0ad2 2011-08-12 13:00:25 Preinitialise the devices only once on startup.
8f186e61 2011-07-30 16:59:54 Restart threads by abstracting out the clcontext initialisation and using that instead of probing all cards.
4365896b 2011-07-29 10:17:36 Release the command queue created after we've copied the binary data.
283d5d23 2011-07-29 10:09:24 Create a command queue from the program created from source which allows us to flush the command queue in the hope it will not generate a zero sized binary any more.
2e37e337 2011-07-24 10:58:03 Out of order command queue may fail on osx. Try without if it fails.
4cd12aa8 2011-07-24 09:04:56 Fix harmless warning.
a9e1a255 2011-07-23 15:15:46 Make it possible to select the choice of kernel on the command line.
116a9dc0 2011-07-23 14:17:25 Update phatk kernel to one with new parameters for slightly less overhead again. Make the queue kernel parameters call a function pointer to select phatk or poclbm.
1c67f606 2011-07-21 10:07:29 Sometimes the cl compiler generates zero sized binaries and only a reboot seems to fix it.
7b13812e 2011-07-21 09:58:28 Kernels are safely flushed in a way that allows out of order execution to work.
a7707a26 2011-07-18 10:42:24 Rename the poclbm file to ensure a new binary is built since.
eea05c05 2011-07-15 13:04:25 Update kernel with a shorter output path, and use 4k output buffer to match OS page sizes.
857902a1 2011-07-12 22:23:03 Commit a new phatk kernel renamed to force new binary building and add proper support in makefiles.
0c910673 2011-07-10 00:30:12 Set max preferred size to 256 to prevent lying cards from crashing when no worksize is set.
826cc480 2011-07-08 11:58:04 Opcode should be ULL.
efebee5a 2011-07-06 16:47:29 Fix the case where there are no GPUs, and exit if they give errors. If there are no GPUs, set nDevs to 0 not -1 (status is set to an unhelpful -1001 here on my laptop, so we can't rely on a particular status value). Also, if nDevs is -1, exit rather than screwing up later.
a636a674 2011-07-05 21:31:41 Merge branch 'cgminer' of git://github.com/ckolivas/cgminer into cgminer
52d6e7ca 2011-07-05 21:31:24 Fixed fread issues under Windows.
a93b22c6 2011-07-05 17:34:54 Make it possible to build without GPU mining by picking up HAVE_OPENCL from config.h.
ec831917 2011-06-25 04:43:37 Build on windows using mingw32.
821da37c 2011-07-04 13:49:28 Add hardware name to binary kernel name allowing for unique kernels for different cards on the same machine.
13b43cfa 2011-07-03 00:28:51 Update copyright and authors.
594b38b8 2011-07-02 13:46:17 Fix redefinition of gnu source.
5d301c8b 2011-07-02 10:22:09 Make a binary load failure build from source.
a095f0fa 2011-06-30 14:30:10 Broke source generated program. Fix.
973b2199 2011-06-30 08:58:07 Tidy.
3aa5be4f 2011-07-01 01:14:43 Reinstate binary kernel loading with fixes. Build binaries with unique filenames from the kernel generated and save them. Try to load this cached binary if it matches on next kernel instantiation. This speeds up start-up dramatically, and has a unique kernel binary for different kernel configurations.
4d730577 2011-06-30 10:36:19 Build binaries with unique filenames from the kernel generated and save them. Try to load this cached binary if it matches on next kernel instantiation. This speeds up start-up dramatically, and has a unique kernel binary for different kernel configurations.
2b6e8416 2011-06-29 23:38:16 Use a buffer of up to 512 * 4 integers when retrieving work from the GPU. This allows each local thread id to have one slot to put any positive results into, thus making overlapping results far less likely. Thus races will be much rarer, allowing more threads. It should also pick up blocks close to each other more reliably and hopefully decrease the number of rejects and opencl errors. Do the search over the buffer entirely in a separate thread to allow the GPU to stay as busy as possible. Detach threads from themselves to prevent unlucky even where dereferencing occurs by freeing the data that stores the thread info.
60f0bb19 2011-06-30 15:47:17 Temporarily back out binary building till it's working more reliably.
623b9b9f 2011-06-27 12:45:03 Patch bitalign separately from bfi_int. Recover from failing to patch for bfi int.
1dfbe603 2011-06-29 09:24:38 Put sanity limit on work size since some nvidia fail :(
6374e0fa 2011-06-28 21:11:04 Import the phatk kernel. Enable it only for hardware with amd media ops for now since it crashes nvidia et. al. Fallback to the poclbm kernel for the rest. Try harder to avoid stale blocks around longpoll detecting new blocks.
2dbb3944 2011-06-27 22:05:03 Base was being set wrongly meaning we were repeating searches and the rate was actually lower than displayed :( Tweak Ma with new changes. Change default vectors to 2 since it's faster than 4 even when 4 is reported as preferred.
11c88185 2011-06-27 16:08:46 32 bit only builds one elf, not an elf in an elf, so account for it to be able to bfi int patch properly.
30e38e2e 2011-06-26 00:59:07 Typo i - gpu
656b485d 2011-06-25 18:58:59 Make the worksize and vector width configurable.
401586f9 2011-06-25 18:06:38 Only try to patch GPU referenced.
c5666051 2011-06-27 16:41:39 Tab dainbramage.
06f39506 2011-06-26 08:49:50 Fix typo which prevented BFI INT patch working on multi-GPUs.
ac4ab6af 2011-06-25 12:32:30 Fix mutli-gpu initialisation when BFI_INT patching.
fdb46f2d 2011-06-26 00:06:19 32bit fixes.
64f268c8 2011-06-24 17:00:54 Display correct worksize.
808d5b07 2011-06-24 11:17:58 Make output debug.
afc83cb2 2011-06-23 21:10:19 Need gnu_source for memmem to work properly.
4cd5f47e 2011-06-23 21:09:22 Revert "Multiple compiler warning fixes." This reverts commit a5cbfbde2610e9f60e14b41a4e0595bcb34c772a. Broke.
19eea906 2011-06-23 17:50:37 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.
c2e41655 2011-06-23 12:04:53 Detect platforms that support cl_amd_media_ops and decide whether to BFI_INT patch or not. Remove unused kernels.
feb8cfc8 2011-06-24 09:51:54 applog fixes.
a40003ab 2011-06-21 09:46:25 More bfi_int patching.
c548dea8 2011-06-20 16:53:13 First BFI_INT patch changes.
6b77d850 2011-06-17 14:00:41 Fixes.
91e5cef3 2011-06-22 00:13:46 Actually get first BFI_INT patch working.
f05270b8 2011-06-22 01:19:19 Optimise loop and make debug debug only.
b4d2733c 2011-06-22 16:47:34 Convert to poclbm kernel.
407df0f4 2011-06-23 12:35:22 Use correct boolean testing and long enough string for cl_amd_media ops testing and kernel changing.
33352213 2011-06-23 16:39:56 Report preferred vector width.
d28f526b 2011-06-23 17:56:11 Need memmem in advance() to work properly for patching.
26546ad5 2011-06-24 09:17:09 Make the optimisations per-gpu card and update code to work properly with multiple cards.
79fec01a 2011-06-22 12:27:57 Remove the input buffer and just pass args to the kernel as per plugin design.
910e6943 2011-06-19 22:21:51 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.
88761e6c 2011-06-23 21:04:29 Multiple compiler warning fixes.
dde70397 2011-06-14 10:32:54 Merge gpumining from oclmine. Unstable.