Pages:
Author

Topic: DiaKGCN kernel for CGMINER + Phoenix 2 (79XX / 78XX / 77XX / GCN) - 2012-05-25 (Read 27827 times)

hero member
Activity: 772
Merit: 500
Upped the last Phoenix2 version again as some requested that, no more code updates though.

Dia
zvs
legendary
Activity: 1680
Merit: 1000
https://web.archive.org/web/*/nogleg.com
can u repost kernel for phoenix 1, your links are broken
thanks
i have some of the older ones (that are/were on mediafire), none of those others though

http://www.nogleg.com/archive/
legendary
Activity: 1722
Merit: 1000
Satoshi is rolling in his grave. #bitcoin
can u repost kernel for phoenix 1, your links are broken
thanks
hero member
Activity: 504
Merit: 500
Thanks a lot for doing that!

I tried it with my 6870, couldn't get it to go past 300 Mh/sec I'm gonna stick with phatk2 and my 320 Mh/sec
hero member
Activity: 772
Merit: 500
I use phoenix 2.0.0, so this won't work.

With cgminer, I get 280 mhash/s(regardless of what kernel I specify) with Phoenix 2 and phatk2, I get 320 with my 6870. I want to see what your kernel will do on phoenix.

Try this link: http://www.filedropper.com/diakgcnphoenix2

Dia
hero member
Activity: 504
Merit: 500
I use phoenix 2.0.0, so this won't work.

With cgminer, I get 280 mhash/s(regardless of what kernel I specify) with Phoenix 2 and phatk2, I get 320 with my 6870. I want to see what your kernel will do on phoenix.
hero member
Activity: 772
Merit: 500
Ok, none of the download links for the kernel work. Can you re-up these to a different host? I think they deleted your files. I really want to try your kernel, but it's not working.

Just use the current CGMINER and specify these switches
Code:
-k diakgcn -v 2 -w 256
.

Dia
hero member
Activity: 504
Merit: 500
Ok, none of the download links for the kernel work. Can you re-up these to a different host? I think they deleted your files. I really want to try your kernel, but it's not working.
hero member
Activity: 772
Merit: 500
I only zipped the last development version and upped it here:
http://www.filedropper.com/diakgcnphoenix2

Sorry, there is no current readme, but the first posting should cover everything.

Dia
newbie
Activity: 9
Merit: 0
Am I blind. whered o i download this kernel.. links on first page lead to just http://www.filedropper.com/ page and nothing happens Cheesy i have a 7970 to test out and im trying to go with phoenix 2.0 and diakgcn kernel. Maybe you can PM me the test version?
newbie
Activity: 46
Merit: 0
I prefer to use result.s0 and such anyways, but I don't use the offset feature as it only lowers 1 APU but raises GPR making the card run hotter. Anyways, I found time to fix it and get it working, all three outputs are good. I was mistaken with the output buffer since there is no (hi - 3) with vectors 3 as there is no result.w

So, now it correctly reports (lo - 1), (hi -1), or (lo - 3). Does anyone want to try it out?
sr. member
Activity: 378
Merit: 250
I am was just putting that there for reference not sure if it's in older versions? I got it working fine but there is something messed up with the output buffer it always says it's "lo - 3". Maybe I should stick with outputting as ulong? Why is it like that exactly, I tried doing a global output of uint3 which still works, but result.z will sometimes say difficulty is less then 1 (it's just barely outside the range too). I have no problem with result.x or result.y tho
There may be an offset in z.  Try replacing them with s0 through s2 even though they're the same.  It'll keep all of the code compatible with each other.
newbie
Activity: 46
Merit: 0
I am was just putting that there for reference not sure if it's in older versions? I got it working fine but there is something messed up with the output buffer it always says it's "lo - 3". Maybe I should stick with outputting as ulong? Why is it like that exactly, I tried doing a global output of uint3 which still works, but result.z will sometimes say difficulty is less then 1 (it's just barely outside the range too). I have no problem with result.x or result.y tho
sr. member
Activity: 378
Merit: 250
uint3 is in there, but this is how it's listed

/* cl_uint3 is identical in size, alignment and behavior to cl_uint4. See section 6.1.5. */
typedef  cl_uint4  cl_uint3;

Anyways I'm still getting more init errors that have nothing to do with ratedivisor, gonna try a different version of phoenix

You'd think it would be better to use vectors4, but the ALUs shoot up to over 3000
That was quoted from cl_platform.h
You can use uint3 directly now.  You don't have to typedef anything to get it to work now.  Just use uint3 directly and it will be a true 3-component uint.
newbie
Activity: 46
Merit: 0
uint3 is in there, but this is how it's listed

/* cl_uint3 is identical in size, alignment and behavior to cl_uint4. See section 6.1.5. */
typedef  cl_uint4  cl_uint3;

Anyways I'm still getting more init errors that have nothing to do with ratedivisor, gonna try a different version of phoenix

You'd think it would be better to use vectors4, but the ALUs shoot up to over 3000
sr. member
Activity: 378
Merit: 250
uint3 seems to be working fine for me without having to treat it as a uint4.  As a matter of fact, it's even listed in the OpenCL reference card.  But wouldn't it be best to accept the extra ALUs and do the work for the 4th vector if the space for the 4th vector is already being taken up?  It's sort of a trade-off.  Mathematically, do the ALUs for three vectors justify the use of three or do 4 vectors give more output for the work that's done to achieve it?
sr. member
Activity: 256
Merit: 250
Great to see that.

Be careful with speed calculations though, you might be calculating the MH/s based on that presumption that you are doing 4 nonces per workitem which is wrong.
newbie
Activity: 46
Merit: 0
Why can't you just init as a uint3 in the first place?  Did you not change the python init file to handle the uint3 as of yet?

I did change the python init file, but just realized I accidentally set rateDivisor = 3 out of habit, and it's supposed to be 4 since you're supposed to treat uint3 as a uint4. It should work like that, but I'll finish testing tomorrow

You can't init as a uint3 in the first place because there is no definition for a true "uint3" in that sense, it's just a stripped down uint4 (last value is thrown out or used as a placeholder). I'm gonna work on it more tomorrow, but once I get it working this should give a 10% increase over uint2. It only uses ~920 ALUs so far
sr. member
Activity: 378
Merit: 250
I got vectors3 working in case you're curious, speed is amazing : O

More details please Wink ... used GPU, which kernel. I never got that working with Phoenix.
And what means "amazing" Cheesy?

Dia

Was using your latest kernel with phoenix 2  rc1 on a cayman 6970 cat 12.3

New opencl version has built in support for uint3 so it might even work with your older version. It's basically just doing a typedef uint4 uint3, and it just assigns a 0 for last value of uint3 to ignore 'w'. The problem with your old kernel is you need to initialize uint3 as a uint4 first

Speed is good because you basically get to run vectors4 (vectors3) with less alu's. Even tho 'w' is not used finding x, y, and z nonces occurs much more frequently anyways
Why can't you just init as a uint3 in the first place?  Did you not change the python init file to handle the uint3 as of yet?
newbie
Activity: 46
Merit: 0
I got vectors3 working in case you're curious, speed is amazing : O

More details please Wink ... used GPU, which kernel. I never got that working with Phoenix.
And what means "amazing" Cheesy?

Dia

Was using your latest kernel with phoenix 2  rc1 on a cayman 6970 cat 12.3

New opencl version has built in support for uint3 so it might even work with your older version. It's basically just doing a typedef uint4 uint3, and it just assigns a 0 for last value of uint3 to ignore 'w'. The problem with your old kernel is you need to initialize uint3 as a uint4 first

Speed is good because you basically get to run vectors4 (vectors3) with less alu's. Even tho 'w' is not used finding x, y, and z nonces occurs much more frequently anyways
Pages:
Jump to: