mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GPU Computing (https://www.mersenneforum.org/forumdisplay.php?f=92)
-   -   GPU Trial Factoring FAQ (https://www.mersenneforum.org/showthread.php?t=16140)

garo 2011-10-15 10:54

GPU Trial Factoring FAQ
 
Please post additional questions/answers below. I'll update the FAQ on a regular basis.

Q. Can I use my GPU to trial factor Mersenne numbers?
A. If it is a relatively modern GPU, yes. You can see the list of Nvidia supported GPUs here: [URL]http://en.wikipedia.org/wiki/CUDA#Supported_GPUs[/URL]

Q. So what software do I use and where do I get it?
A. For nvidia based GPUs use mfaktc [URL]http://www.mersenneforum.org/mfaktc[/URL] .
For other GPUs use mfakto an OpenCL implementation. The latest version is here: [URL]http://www.mersenneforum.org/showthread.php?t=15646[/URL]

Q. How do I get work?
A. At the time, mfaktc cannot get work from Primenet automatically. You need to get assignments from the manual assignments page and turn the results in likewise.

Q. Where do I put those assignments?
A. In the worktodo.txt file.

Q. Do I need to stop mfaktc to add more to the worktodo.txt file?
A. No. As long as you don't mess with the first line and take care not to save your hand-modified worktodo.txt while mfaktc is modifying it (after having finished a test or found a factor).

Q. Will the completed work automatically be removed from the worktodo file?
A. Yes.

Q. Where are the results stored?
A. In results.txt.

Q. Does mfaktc require CPU time?
A. Yes. The sieving part of the trial factoring process is done on the CPU. If you have a fast GPU e.g. GTX 460 or above, you may need to run multiple instances of mfaktc - each using one CPU core - to get the most out of your GPU.

Q. Why do I get a missing dll error?
A. Get them here: [URL]http://www.mersenneforum.org/showpost.php?p=255068&postcount=632[/URL]

Q. Is there a wiki with more info?
A. [URL]http://mersennewiki.org/index.php/Mfaktc[/URL]
[URL]http://mersennewiki.org/index.php/Mfakto[/URL]


Brain's quick start guide is attached to this post. It is a handy one pager with all the critical information.

PDF Guide:
[URL="http://www.mersenneforum.org/attachments/pdfs/GIMPS_GPU_Computing_Cheat_Sheet.pdf"]GIMPS GPU Computing Cheat Sheet (pdf)[/URL]

kladner 2011-10-15 15:06

Many thanks for getting this started, garo! I am sure it will save many beginners (like me) a lot of thrashing about.

Brain 2011-10-15 16:11

GPU Computing Guide Update to v 0.05
 
Latest version...

[URL="http://www.mersenneforum.org/attachments/pdfs/GIMPS_GPU_Computing_Cheat_Sheet.pdf"]GIMPS GPU Computing Cheat Sheet (pdf)[/URL]

kladner 2011-10-15 16:17

Wow! Great update, Brain! Thanks!

ixfd64 2011-10-15 17:49

Q: When will we have a version of Prime95 with GPU support?
A: When it's done™. :smile:

Dubslow 2011-10-15 23:16

:tu:

Dubslow 2011-10-15 23:25

[QUOTE=Brain;274629]Latest version...[/QUOTE]

Hmmm.... I can't click on the links, and version 3 still works fine in the same program.

Dubslow 2011-10-15 23:31

Q. Can I use my GPU for LL testing?
A. Yes, with the program called CUDALucas, with NVidia supported GPUs.

Q. Where can I get the software?
A. See the attached PDF guide.

Q. How do I get work for CUDALucas?
A. You will need to get manually get work from PrimeNet like mfaktc, however CUDALucas currently doesn't use a worktodo file. You test an exponent by using a command line argument; or, to test multiple exponents, use a batch file. (Garo: kladner has a couple of batch posts in the GPU-Noob thread.)

Q. Where are the results stored?
A. mersarch.txt

kladner 2011-10-16 01:52

Dubslow:
"I can't click on the links"

Yikes! I didn't check, but it's true. The layout looks good.

Christenson 2011-10-16 02:34

I thought the trhead below might have been the right one to make sticky....
[url]http://mersenneforum.org/showthread.php?t=15621[/url] ("Putting it All Together")

Kindly someone look through there and patch up any holes in this thread....

And Garo, is this thread limited to mfaktc, or do we also cover CUDALucas, in which case the title is a bit "off"?

Thanks

kladner 2011-10-16 03:32

[QUOTE].....is this thread limited to mfaktc, or do we also cover CUDALucas.....[/QUOTE]

Might it not be better to keep threads on different programs separate to do some of the sorting up front? I thought about "GIMPS GPU FAQ", but then we'd immediately need sub-threads for mfaktc, cudalucas, [other current GPU programs], and [future GPU programs which will appear].

Which is better? Individual FAQs for different programs, different languages, different GPUs? Or sub-threads to an over-arching FAQ?

I don't know. Just asking. I'm sure there are other organizations possible, or already existing. But I think it is worth examining how to keep the structure as intuitive as possible if it is aimed especially at beginners.

As one such, I've trolled through many threads, reading comments and grabbing downloads of advancing program versions; some of which contained contained code for compilation and/or compiled exe's for 32 and 64 bit [I]Windows[/I] versions. So far, for me, compiled binaries, along with links to necessary dll's have been vital resources. Of course, README's, explanatory comments in ini's, and [program name].txt files are invaluable.

OUCH. I just stepped into another cow pie. I'm only running Win XP-32 and 7-64 right now. I have messed with Red Hat Linux in the past, even to the point of modifying and compiling kernel code for a specific CPU etc. But I have no grasp of GIMPS in the Linux domain today except to know that there are Linux versions available or possible for some flavors of Linux.

In any case, that adds another category to the organization tree. Clearly, I'm only bloviating, as I am not in a position to set up structures. But I think, in the interest of getting newcomers hooked up and productive, that it's worth thinking about how to make basic things available and minimally understandable for well intentioned ignoramuses.

Christenson 2011-10-16 03:58

As a non-noob on this, I'd like to see the top post round up both CUDALucas and mfaktc and mfakto, and point to all the required binaries and DLLs/SOs, and source for those of us with non-Windows machines. Binaries for Linux32/64 are OK too...
(Posted from my Windows machine!)

Many answers for the two programs will be in common....

Dubslow 2011-10-16 06:41

Yes, I vote for Linux binaries. Even if I can get the damn things compiled (a minor miracle) they still generally don't work.

Brain 2011-10-16 08:06

Now with links
 
[QUOTE=kladner;274685]Dubslow:
"I can't click on the links"[/QUOTE]

Now with links...

[URL="http://www.mersenneforum.org/attachments/pdfs/GIMPS_GPU_Computing_Cheat_Sheet.pdf"]GIMPS GPU Computing Cheat Sheet (pdf)[/URL]

garo 2011-10-16 12:17

It was always my intention to have two stickies, one for LL and another for factoring. I don't want to make either FAQ too long or complicated. A simple one-pager that lets someone start in 15 minutes. We should leave complex issues such as optimization for the wiki after fleshing them out in the discussion forum. If you guys have any other questions please post them and I'll add them to the top post.

kladner 2011-10-16 18:37

Again, thanks for getting this and the LL version out there, garo. I'm sure it will save beginners a lot of time.

chris2be8 2011-10-16 20:06

[QUOTE=Brain;274724]Now with links...[/QUOTE]

And 205kb instead of 16kb. Why does that make it so much larger?

Chris K

Brain 2011-10-16 20:32

MS magic
 
1 Attachment(s)
[QUOTE=chris2be8;274764]And 205kb instead of 16kb. Why does that make it so much larger?

Chris K[/QUOTE]
I've now included some special subroutines to get access to more CPU cycles...
No, seriously, I use MS Word 2010 (I'm capable of LaTex and OO). First version was done via a PDF printer (which loses the hyperlinks), second one used MS "save as pdf". That's the difference.
For more details I suggest consulting your local hex editor or MS hotline. I'm too lazy... ;-)

By the way, find attached the original file (only 24 KB)...

fruitflavor 2011-10-22 20:47

followed the guide and created work to do just like prime95. works extremely well on one of my gtx 285. are there any pointers to how to get it to run on my 2nd gpu? tried LLR but it's really difficult with my windows 32bit. perhaps i need to get my other hard drive with 64bit os on it.

bcp19 2011-10-23 03:35

Does anyone know the switches available with mfaktc? I saw someplace that -h is one, but no explanation what it was. I got some lower 2^x sequences (got 400M exp with 2^65-2^66) but it seems like they are taking longer than they should due to the screen prints. If there is a switch to shut off the display during these fast runs I think the throughput would be faster. Thanks.

Dubslow 2011-10-23 04:45

[QUOTE=bcp19;275378]Does anyone know the switches available with mfaktc? I saw someplace that -h is one, but no explanation what it was. I got some lower 2^x sequences (got 400M exp with 2^65-2^66) but it seems like they are taking longer than they should due to the screen prints. If there is a switch to shut off the display during these fast runs I think the throughput would be faster. Thanks.[/QUOTE]

-h is usually prints the help page, though in this case first I'd try going through readme.txt. If it's configurable, it will be explained there. If not, try running -h and see what you get.

TheJudger 2011-10-23 11:38

[QUOTE=bcp19;275378]Does anyone know the switches available with mfaktc? I saw someplace that -h is one, but no explanation what it was. I got some lower 2^x sequences (got 400M exp with 2^65-2^66) but it seems like they are taking longer than they should due to the screen prints. If there is a switch to shut off the display during these fast runs I think the throughput would be faster. Thanks.[/QUOTE]

mfaktc isn't designed for such short running assignments.
Anyway, perhaps this helps:
[url]http://www.mersenneforum.org/showpost.php?p=273900&postcount=363[/url]
[url]http://www.mersenneforum.org/showpost.php?p=273908&postcount=364[/url]

Set the Gridsize to e.g.1 and you might want to disable checkpoints for such short running assignment.

Another option: run up to 2^68 or so...

Oliver

Bdot 2011-11-07 23:02

mfakto update, please
 
Dubslow mentioned I might want to comment on the mfakto-part of the pdf ... sorry I did not take part in that earlier.

And indeed, the "DO NOT SUBMIT “NO FACTOR” RESULTS YET" statement is a bit outdated. Apart from the bug with version 0.08 that may lead to missed factors < 2[SUP]48[/SUP], there's no known reason for not reporting all results.

Regarding the Factor size: There is no lower limit for the factors, so for mfaktc this should just read "Factor size <= 2[SUP]95[/SUP] ". mfakto does not yet have the 95-bit kernel, so for mfakto the limit is "Factor size <= 2[SUP]92[/SUP] ".

As an estimated GIMPS score you can use (maybe I should test that some day):

roughly 60 GHz days/day on HD5770 & 2 CPU cores

This is also a bit misleading: "mfakto works best on large exponents as the sieving (CPU) part stays constant with larger numbers."
mfakto (and mfaktc) are more efficient with larger assignments. This does not mean larger exponents, but "more work" or "longer runtime per class", generally bigger bit ranges. The reason is a certain one-time initialization effort per class - no matter if the class will just test 1 million factor candidates or 1 billion. In the first case, the one-time effort may account for, say, 75% of the sieving effort, in the latter case just 0.3%. Plus there is an average of half a block wasted for each class. If the class consists of only one block, that's 50%, for 1000 blocks it's just 0.05%.

Brain 2011-11-08 06:10

Thanks
 
I'm going to integrate this information asap.

Uncwilly 2011-11-08 07:14

[QUOTE=Brain;277534]I'm going to integrate this information asap.[/QUOTE]
You may want to add about the mini-pirmenet that Chasall has set up to aid the factoring to extra bit depths ahead of the LL 'wave front'.

Bdot 2011-11-08 08:39

[QUOTE=Bdot;277484]

As an estimated GIMPS score you can use (maybe I should test that some day):

roughly 60 GHz days/day on HD5770 & 2 CPU cores
[/QUOTE]

I just checked the crunching-power of my HD5770-box. The last 24 hrs returned 96.6 GHz-days, using 3 CPU-cores. So I guess mentioning 90 GHz-days/day with 2 cores should be quite safe.

Brain 2011-11-08 21:26

GPU Computing Guide Update to v 0.06
 
This is a replacement for 0.05a. Please review.

Several minor changes:
[LIST][*]mfakto: All results submittable[*]mfakto: Decreased upper factor size limit[*]GPU to 72 tool[*]ATI driver warning for 11.10[*]ATI: GIMPS score estimate added[*]CUDALucas: Unknown upper limit[*]Call for P-1 and ECM implementations[/LIST][URL="http://www.mersenneforum.org/attachments/pdfs/GIMPS_GPU_Computing_Cheat_Sheet.pdf"]GIMPS GPU Computing Cheat Sheet (pdf)[/URL]

LaurV 2011-11-09 04:31

[QUOTE=Brain;277630]P.S.: We still need somebody to implement the following work types on a GPU:
-- P-1 factoring
-- ECM factoring
Code it and enter the GIMPS hall of fame…[/QUOTE]

How about CudaNFS, CudaQS/SIQS/MPQS (at least for init phase)? :smile:
Will it have some effect on the speed(time)? etc.

xilman 2011-11-12 11:42

[QUOTE=LaurV;277666]How about CudaNFS, CudaQS/SIQS/MPQS (at least for init phase)? :smile:
Will it have some effect on the speed(time)? etc.[/QUOTE]Undoubtedly possible, but doubtedly worth the effort for NFS. Assuming, that is, you want the sieving phase to be implemented in CUDA. Polynomial selection is already available in msieve. Filtering is too I/O intensive to make sense to port to CUDA and I don't yet have a good enough feel for the square root phase to make sensible comments.

As a rule, GPUs are good at computation, poor at memory access and lousy at I/O compared with CPUs. The sieving phase is very heavily memory bound ...


Paul

LaurV 2011-11-13 06:17

Thanks for the answer, it was more like a curiosity, my understanding of NFS is almost zero at this time.

Dubslow 2011-11-13 06:26

[QUOTE=Brain;277630]This is a replacement for 0.05a. Please review.

Several minor changes:
[LIST][*]mfakto: All results submittable[*]mfakto: Decreased upper factor size limit[*]GPU to 72 tool[*]ATI driver warning for 11.10[*]ATI: GIMPS score estimate added[*]CUDALucas: Unknown upper limit[*]Call for P-1 and ECM implementations[/LIST][/QUOTE]
garo...
or some other mod...
(and the other FAQ thread as well)

Dubslow 2012-01-11 22:05

Looking for an old post, found that this PDF is still v.06, while the other FAQ has v.07.

Bdot 2012-01-13 09:27

BTW, mfakto 0.10 / 0.10p1 solved the issues with the latest Catalyst drivers. 11.10 to 11.12 are tested well.

PageFault 2012-02-26 17:34

Ok, I got the client and dll files, added some work from gputo72, double clicked the mfact executable and it started, a black box flashed on screen for a millisecond, and ... how do I tell if its running?

I put the work in wortodo.add ... it seems that the work got automagically added to worktodo.txt under worker # 1 ... if it is running, will it only do the N/A entries? worker # 1 is already on trial factoring via primenet ...

btw, I have a geforce 8400GS, its on the supported hardware list, not the fastest card in town but wtf, the card does nothing, so why not?

Brain 2012-02-26 18:14

If it was active it would stay longer than a millisecond. Try opening the console and then entering mfaktc.exe in your directory.

Maybe you can read an error message than. It could be that your card is too old. Other users will know more.

Most current version 0.18 does contain the needed dll files.
Look in [URL]http://www.mersenneforum.org/mfaktc/[/URL] for the download files.

Dubslow 2012-02-26 19:30

Also, as far as I am aware, I do not believe mfatkc has a worktodo.add feature, does it? Try putting the work directly into worktodo.txt; also note that headers such as [Worker #1] are unnecessary and will probably cause an error. (mfaktc at the moment does not directly support multiple-instances-from-one-worktodo-file.) As Brain suggested, try manually running mfatkc from a command line (cmd.exe). That way the console will stay open so you can read the error messages, if any.

PageFault 2012-02-26 19:55

ok, using command prompt I see:

Binary compiled for cuda 4.0
cuda runtime version 1244.30
cuda driver version 3290.60

ERROR: cuda runtime version must match cuda toolkit version used during compile!

Any ideas? I took v18 of the app, in case it helps

Dubslow 2012-02-26 20:06

What's your Nvidia driver version? It needs to be something line >= 285.x or so. For example, I can't upgrade past 270.x on Linux, so I'm stuck with version 17.

garo 2012-02-26 21:21

Use the v17 of the app and/or upgrade your card driver. I am suing the latest greatest 295.73 Nvidia drivers and they have 4.1.1 cuda drivers.

chalsall 2012-02-26 21:28

[QUOTE=garo;290979]Use the v17 of the app and/or upgrade your card driver. I am [I][U]suing[/U][/I] the latest greatest 295.73 Nvidia drivers and they have 4.1.1 cuda drivers.[/QUOTE]

Hope you have a good lawyer.... :razz:

PageFault 2012-02-26 22:02

blargh ...

spent hours downloading 295.73, only to have it not install on my box ... attempting xp version of same, os is server 2003 ... hope this doesnt become a clusterfuck ...

v17 of the app gives different erros, something like driver incapable, cannot initialize device ...

grrrrrr

edit

why does this have to be so difficult? ... living in west africa is bad enough, I dont need anymore reasons to drink heavily ...

edit 2

ok, after a driver update it runs ... but it is hogging one core to the max ... is this normal? I thought the idea was to use an otherwise idle gpu ...

RichD 2012-02-27 02:08

[QUOTE=PageFault;290982]... but it is hogging one core to the max ... is this normal?[/QUOTE]

Check the parameter AllowSleep=1 in the mfaktc.ini file.

It might be what you are looking for...

Dubslow 2012-02-27 02:20

Yes, that is normal. In the PDF it states that mfaktc uses the GPU plus at least one core of the CPU. If you'd like to use the GPU without having to dedicate a core to it, try CUDALucas (though at about 20% GHz Days throughput of mfatkc).

RichD is also correct; because it's a low end GPU, your CPU might be ahead of your GPU, so AllowSleep might reduce the CPU usage.

jasong 2012-03-25 06:38

I have an ATI Radeon HD 5570, I bought it about 2 years ago, and it was pretty awesome at the time, but 2 years is like 50 years in other industries, so if I can't use it(can I?) so what's a good thing to upgrade to?

I don't have to pay for electricity as long as my use isn't grievously large. Last I checked, electricity was 5.5 cents per KwH, but that was years ago. I'd have to ask my dad what grievously large is. Even when I had 3 computers running full steam it barely phased him, but this was just one-core cpus at the time.

I'm looking to spend under $350, and I want value over sheer awesomeness, paying 50% more for a 10% improvement isn't fun to me. Also, unless I can get way more performance for my money I prefer AMD/ATI over NVIDIA. Not sure about other companies, or even if there's a decent competitor to the first 2.

Hmmmm, should I start a new thread with this post?

Dubslow 2012-03-25 06:55

Nah, hear is fine. The HD 5570 might still be good for mfakto, you'd have to check the PDF in the original post to see what mfakto requires.

In general, CUDA is more efficient compared to OpenCL as far as getting the most actual performance out of theoretical ops/second; James maintains a chart, visible [URL="http://mersenne-aries.sili.net/mfaktc.php"]here[/URL], that contains theoretical performance and estimated GIMPS performance for a variety of cards. Note that for the ratio of GHz-Day/Day to GFLOPS is much higher than with AMD, going back to CUDA vs. OpenCL. (Compare the 6990 to the 590, which are supposed to be roughly equivalent cards in most respects.) Since price is generally correlated to GFLOPS (as opposed to GIMPS throughput), nVidia is probably more value if you're just looking for value. If you do go with nVidia, be sure to get a "Compute Compatibility" 2.0, and NOT 2.1. The 580 [i]might[/i] be within your price range given that the 680 has just come out, but I'm not sure. If not, I'd go with a 570. Unfortunately, because the AMD cards are less efficient in relation to GIMPS, I can't tell you too much about them.

As for power, you're right to not be worried at all. My quad core 3.4 GHz 2600K has a TDP of 95W, not much more than a lightbulb. Together with the GTX 460 and all the other stuff, I use a 600W power supply, though it's likely that the comp doesn't draw more than 450W, even with everything under full load. One of the reasons we have quad core computers for the same size as those old single cores is because the transistors are much smaller (today's transistors are more than an order of magnitude smaller than the wavelength of visible light), which means they also draw a lot less power to do the same thing. (Ivy Bridge will feature 77W TDP quad cores at slightly higher frequencies than Sandy Bridge, thanks to a transistor shrink and redesign.)

Dubslow 2012-03-25 07:13

Okay, regarding TF on AMD cards, [URL="http://www.mersenneforum.org/showthread.php?t=16650"]this thread[/URL] has made it clear that the original post is not clear enough on how to use AMD cards.

For simplicity's sake, here are some example changes:
[code]Q. Can I use my GPU to trial factor Mersenne numbers?
A. If it is a relatively modern GPU, yes. You can see the list of Nvidia supported GPUs here: http://en.wikipedia.org/wiki/CUDA#Supported_GPUs , and the list of AMD supported GPUs here: http://www.khronos.org/conformance/adopters/conformant-products/[/code]
[code]Q. So what software do I use and where do I get it?
A. For nvidia based GPUs use mfaktc http://www.mersenneforum.org/mfaktc .
For other GPUs (including AMD/ATI), use mfakto, an OpenCL implementation. The latest version is here: http://www.mersenneforum.org/showthread.php?t=15646 . You can also check the PDF attached to this post; it contains the most recent versions, specific compatibility requirements, as well as examples of how to use the programs.[/code]
A new question, to be inserted directly proceeding the above two:[code]Q. How do I use these programs?
A. The programs are run from the command line (cmd.exe in Windows). Open a command line, change to the right directory, and run "mfaktc.exe -h" or "mfakto.exe -h". It is also possible to set up shortcuts, batch files, or shell scripts to automatically start mfakt* after you have learned how to use the program. Again, see the attached PDF for more detailed usage examples.[/code]
It might also be worthwhile to add more emphasis to the "mfaktc uses CPU" question, as we've had at least one user post wondering if that was right since the thread went up.

jasong 2012-03-25 08:08

Thanks dubslow, I'll repost if I have any problems. Your info should keep me busy for a good long while. :)

Edit:chrisjp, apparently the creater of the program, says you have to fight with the program to get this version running properly, so I think I'll just watch these threads and track progress for the moment.

Thanks for the help. I'm gonna go look at the last few weeks of the posts for these threads and then call it a night for this particular goal.

Dubslow 2012-03-25 18:28

...Which program? mfakto was written by Bdot.

Bdot 2012-03-25 21:00

[QUOTE=jasong;294108]Thanks dubslow, I'll repost if I have any problems. Your info should keep me busy for a good long while. :)

Edit:chrisjp, apparently the creater of the program, says you have to fight with the program to get this version running properly, so I think I'll just watch these threads and track progress for the moment.

Thanks for the help. I'm gonna go look at the last few weeks of the posts for these threads and then call it a night for this particular goal.[/QUOTE]

Let me suggest you start with the 5570 you have, install the latest Catalyst (i.e. AMD graphics) driver, and play around a little with [URL="http://www.mersenneforum.org/showthread.php?t=15646&page=12#286"]mfakto[/URL].

[URL="http://mersenne-aries.sili.net/mfaktc.php"]James'[/URL] site suggests that you can get ~30 GHz-days per day with that. If you kind of like how that works, you just want it faster, then use that table again (for instance) to find a GTX570 can be 10 times as fast (if you have the CPU power to feed it well).

And if you could send to James a benchmark run of the 5570, you can help making the table more accurate so that similar predictions will be better.

LaurV 2012-04-16 10:34

Someone should actualize the links to the newest pdf and mfaktc/o.
edit: i mean, in the first post.

petrw1 2012-04-24 05:16

Tinkering wth my GeForce 8400GS
 
Does that sound kinky?

Anyway getting suspicios errors:

[CODE]running a simple selftest...
ERROR: cudaGetLastError() returned 6: the launch timed out and was terminated[/CODE]

This is after about 45 seconds at which time the screen goes blank and then Windows7 64-bit pops up a window in the taskbar that says something like: Display Driver stopped responding and was recovered.

Only one time out of about 7 tries it did pass the selftest and then said it could not read the worktodo.txt file.

2 questions:

1. I assume it should be in the same directory as the mfaktc?
2. From the readme there is this sample line: Factor=bla,66362159,64,68
Is the bla, required?

Per James suggestion I changed Numstreams to 2 but my GUI is still quite laggy.

Dubslow 2012-04-24 06:37

Yes, they should be in the same directory. No, the bla can be anything or nothing.
Factor=bla,66362159,64,68 works as well as Factor=66362159,64,68 works as well as Factor=N/A,66362159,64,68 works as well as Factor=<long hex key>,66362159,64,68. For your errors, I'd look into what the various CUDA versions you're using. That card is only CC 1.1, which is probably causing errors with the software you're using; I'll look into that, brb. (QuickEdit: The not finding worktodo.txt may be a permissions thing; it's best if your mfaktc folder is inside your User folder, or My Documents.)

Edit: Okay, here's something from Makefile.win:
[code]NVCCFLAGS = -m64 --generate-code arch=compute_11,code=sm_11 --generate-code arch=compute_20,code=sm_20 --ptxas-options=-v[/code]
With a no knowledge of nVidia compiler options, I'd hazard a guess that this means that the binaries provided in the mirror do have CC 1.1 code somewhere in them. nVidia does supposedly offer backwards compatibility, meaning that code compiled for CC 1.1 [i]ought[/i] to run with later versions of CUDA, i.e. later versions of the .dll's, so I'm not sure what the problem is. I'd take this to the mfaktc thread.

Karl M Johnson 2012-04-25 10:32

That error is related to WDDM.

Create patch.reg, paste the code below in it and run that as admin:
[code]Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers]
"TdrLevel"=dword:00000000[/code]

Redarm 2012-04-27 17:46

First time i'm posting...
I've get a GTX 680 and have absolutely no idea how to get mfactc0.18 running :(

ERROR: cudaGetLastError() returned 8: invalid device function

I've readed something about compiling with Cuda Toolkit 4.2 but have no clue how to do this, could someone help me please?

Dubslow 2012-04-27 20:19

You shouldn't need to compile anything... What OS? What are the version numbers of the .dll/.so files you're using?

Redarm 2012-04-27 20:37

win 7 64bit

cudart64_41_28.dll
cudart64_40_17.dll

Dubslow 2012-04-27 22:00

Hmm... yeah I have no clue. Could a mod move these to the mfaktc thread?
Edit: For further trouble shooters' sake, he does have up to date drivers (301.x).

Bdot 2012-05-20 22:08

I just wanted to mention here that I moved mfakto to [url]http://mersenneforum.org/mfakto[/url], latest version now at
[url]http://mersenneforum.org/mfakto/mfakto-0.11[/url]

So this should match mfaktc much better ...

lorgix 2012-05-27 19:07

Does feeding two GPUs from a single physical (hyperthreaded) core work well?

Bdot 2012-05-27 19:38

[QUOTE=lorgix;300406]Does feeding two GPUs from a single physical (hyperthreaded) core work well?[/QUOTE]
Yes, you can use two hyper-threads (HT) of one core to run two mfaktc/o instances, each bound to a different GPU. In fact, you can even let the two instances share one HT and still use two different GPUs. It's all a question of how much CPU-power you want to invest. Using faster cards it is quite likely, that a shared HT will be insufficient to fully utilize the GPUs, even at minimal sieving.

lorgix 2012-05-27 19:48

[QUOTE=Bdot;300414]Yes, you can use two hyper-threads (HT) of one core to run two mfaktc/o instances, each bound to a different GPU. In fact, you can even let the two instances share one HT and still use two different GPUs. It's all a question of how much CPU-power you want to invest. Using faster cards it is quite likely, that a shared HT will be insufficient to fully utilize the GPUs, even at minimal sieving.[/QUOTE]
The cards would probably be pretty weak, in this case.

So it should be efficient? They don't stomp on each other?

How do I choose which instance uses what GPU? (I use mfaktc-0.18)

Bdot 2012-05-27 20:01

[QUOTE=lorgix;300415]The cards would probably be pretty weak, in this case.

So it should be efficient? They don't stomp on each other?

How do I choose which instance uses what GPU? (I use mfaktc-0.18)[/QUOTE]

The "stomping on each other" is no different than when using separate cores (apart from having less computing power). Well, as they would share the L1-cache, sieving is probably a bit slower than half of "single instance on a core". But if you have weak GPUs, this will not matter much.

Use -d <dev number> to specify the CUDA device (same numbering scheme - start from 0).

lorgix 2012-05-27 20:08

[QUOTE=Bdot;300418]The "stomping on each other" is no different than when using separate cores (apart from having less computing power). Well, as they would share the L1-cache, sieving is probably a bit slower than half of "single instance on a core". But if you have weak GPUs, this will not matter much.

Use -d <dev number> to specify the CUDA device (same numbering scheme - start from 0).[/QUOTE]
OK, I think half a core will be enough.

I'm sorry; I don't understand where that number is supposed to come from.

edit: Trial & error never fails.. oh wait..

Dubslow 2012-05-27 20:32

Just count your GPUs from 0. The first would be "-d 0", the second would be "-d 1", etc... if the cards are different models just use trial and error to figure out which one is which.

lorgix 2012-05-27 20:34

[QUOTE=Dubslow;300425]Just count your GPUs from 0. The first would be "-d 0", the second would be "-d 1", etc... if the cards are different models just use trial and error to figure out which one is which.[/QUOTE]
Oh, it was that simple. Thanks.

aketilander 2012-05-28 05:06

[QUOTE=Dubslow;300425]Just count your GPUs from 0. The first would be "-d 0", the second would be "-d 1", etc... if the cards are different models just use trial and error to figure out which one is which.[/QUOTE]

Well I think if you have two cards of different brands, one AMD and one NVIDIA in the same computer both are counted as the first one, so the switch should be "-d 0" or rather you don't need the switch at all, that is you can run mfakto and mfaktc without a switch, or if you like to use the switch it should be "-d 0" in both programs. The switch is only needed if you have more then one card of the same brand.

Well, I may be wrong on this one.

Dubslow 2012-05-28 05:15

[QUOTE=aketilander;300479]Well I think if you have two cards of different brands, one AMD and one NVIDIA in the same computer both are counted as the first one, so the switch should be "-d 0" or rather you don't need the switch at all, that is you can run mfakto and mfaktc without a switch, or if you like to use the switch it should be "-d 0" in both programs. The switch is only needed if you have more then one card of the same brand.

Well, I may be wrong on this one.[/QUOTE]

The whole '-d 0' only applies to CUDA programs, meaning only nVidia GPUs by default. CUDA will not even know if there's an AMD card.

Edit: I don't know how OpenCL/mfakto/AMD choose between more than 1 GPU.

flashjh 2012-05-28 05:26

[QUOTE=Dubslow;300480]
Edit: I don't know how OpenCL/mfakto/AMD choose between more than 1 GPU.[/QUOTE]
mfakto uses the same -d 0 | -d 1 switch

sonjohan 2012-10-16 21:36

So, here I wanted to take benefit of the new mfaktc (0.19; I have 0.17), so I installed the nVidia 4.2 toolkit (complete) as well as copied the 0.19 files from the zip-file (in the original directory).

I get the following when running the new mfaktc
CUDA version info
binary compiled for CUDA 4.20
CUDA runtime version 0.0
CUDA driver version 4657.4 (actually, it's a random number)

Any ideas? I probably forgot something. (I'm the install & forget it kinda guy.)

flashjh 2012-10-16 22:22

[QUOTE=sonjohan;314912]So, here I wanted to take benefit of the new mfaktc (0.19; I have 0.17), so I installed the nVidia 4.2 toolkit (complete) as well as copied the 0.19 files from the zip-file (in the original directory).

I get the following when running the new mfaktc
CUDA version info
binary compiled for CUDA 4.20
CUDA runtime version 0.0
CUDA driver version 4657.4 (actually, it's a random number)

Any ideas? I probably forgot something. (I'm the install & forget it kinda guy.)[/QUOTE]

It looks like you're remoting in, are you? If so, you have to be logged in locally or use a remote site like logmein.com

If you're not remote, your driver is not installed correctly. Try removing all drivers and do a clean install with the newest drivers. Let us know what happens.

Dubslow 2012-10-16 22:59

Your drivers probably need an upgrade. If your drivers are definitely from before installing mfaktc 0.17, then drivers are definitely the problem.

Batalov 2012-10-16 23:13

Is it time to add mmff and mmff-gfn to the PDF?
(I don't volunteer.)

I will just provide the new links:
[URL]http://www.mersenneforum.org/mmff/[/URL] and
[URL]http://www.mersenneforum.org/mmff-gfn/[/URL]
Plus there are the threads where the status is discussed.

sonjohan 2012-10-17 05:52

[QUOTE=Dubslow;314917]Your drivers probably need an upgrade. If your drivers are definitely from before installing mfaktc 0.17, then drivers are definitely the problem.[/QUOTE]
My drivers are still at 285.62.
Available version is 306.97.

I guess I'll have to update.

garo 2012-10-17 10:32

Are Radeon HD 6770M any good with mfakto or are mobile GPPUs just too poor?

Bdot 2012-10-17 13:56

[QUOTE=garo;314956]Are Radeon HD 6770M any good with mfakto or are mobile GPPUs just too poor?[/QUOTE]

It's much less than a 6770:

6770 = 800 cores @ 850 MHz
6770M = 480 cores @ 725 MHz

After all it comes out at about 50% of the desktop version. According to James' sheet the desktop is ~ 75GHz-days/day, but with 3 instances, slightly overclocked and higher SievePrimes I run it at 150GHz-days/day.

The 6770M should be good for 40-70 GHz-days/day, depending on how much CPU-power you can throw at it.

Keldor 2013-03-01 10:52

If I got that right, since version 0.20 sieving is done on the GPU, so mfakt doesn't need much CPU time, and there is no need to start multiple instances of mfakt to keep the GPU busy.
Perhaps the answer to "Q. Does mfaktc require CPU time?" in the first posting needs an update?

LaurV 2013-03-01 12:01

Indeed. That is only valid for mfakto, but hopefully not for long either, work is being done (by Bdot and co., if I not mistaken) to add OpenCL GPU sieving too.

Bdot 2013-05-23 19:19

[QUOTE=LaurV;331527]Indeed. That is only valid for mfakto, but hopefully not for long either, work is being done (by Bdot and co., if I not mistaken) to add OpenCL GPU sieving too.[/QUOTE]
I finally released mfakto 0.13 which features GPU sieving similar to mfaktc 0.20. It can be found at [URL]http://mersenneforum.org/mfakto/[/URL].

Maybe someone could update the thread's entry post (download URL & GPU sieving) and the GPU cheat sheet (also, download URL and GPU sieving)?

kracker 2013-05-26 00:40

1 Attachment(s)
[QUOTE=Bdot;341383]I finally released mfakto 0.13 which features GPU sieving similar to mfaktc 0.20. It can be found at [URL]http://mersenneforum.org/mfakto/[/URL].

Maybe someone could update the thread's entry post (download URL & GPU sieving) and the GPU cheat sheet (also, download URL and GPU sieving)?[/QUOTE]

I know I asked this before but still, I'm not sure on "GIMPS score estim.", as my low end HD 7770(~$120) does around 175 GHz on DC range, 150 in LL range.

roemer2201 2013-06-24 12:35

Q: Is it possible to change the working directory of mfaktc?

If not, is this the right place for the feature request?

kladner 2013-06-24 12:48

[QUOTE=roemer2201;344304]Q: Is it possible to change the working directory of mfaktc?

If not, is this the right place for the feature request?[/QUOTE]

From mfaktc.ini, about 1/3 from the top-
[CODE]
# WorkFile: the name of the file which contains the factoring assignments.
# e.g.
# worktodo.ini (Prime95 v24 and earlier)
# worktodo.txt (Prime95 v25 and newer)
#
# Default: WorkFile=worktodo.txt

WorkFile=worktodo.txt[/CODE]

Besides this, you can put mfaktc just about anywhere so long as your batch files, if any, have the right path in them. "Program Files (x86)" in Win 7 is not a good place.

roemer2201 2013-06-24 13:11

The Worktodo-File is just one part, can I change the place for the checkpoint-files and result files, too? If I install mfaktc into a usual installation directory like /usr/local/bin, users wont have write-permission for the ckp-files. Thats the reason why I was asking for a whole working-directory. Or does mfaktc store ckp-files and the results along with the worktodo.txt?

kladner 2013-06-24 19:40

[QUOTE=roemer2201;344308]The Worktodo-File is just one part, can I change the place for the checkpoint-files and result files, too? If I install mfaktc into a usual installation directory like /usr/local/bin, users wont have write-permission for the ckp-files. Thats the reason why I was asking for a whole working-directory. Or does mfaktc store ckp-files and the results along with the worktodo.txt?[/QUOTE]

Sorry. I was speaking from presumption of Windows. Worktodo, results, and *.ckp files all live in the program directory in Windows. The reason I said "Program Files (x86)" should be avoided is similar to the /usr/local/bin you reference. There are problems with write permissions.

I hope one of the Linux-savvy people will pick this up and give you better answers. Linux or not, I'm not sure if other .ini lines for file locations are possible.

TheJudger 2013-06-26 18:23

mfaktc.ini, checkpoint files, results.txt and worktodo.txt within the same directory or in different directories? For the first case it is really simple (Windows and Linux):[LIST=1][*]put mfaktc.exe into some directory (e.g "C:\programm files\" or "/usr/local/bin/")[*]create your working directory[*]put your worktodo.txt and mfaktc.ini into the working directory[*]start <some directory>/mfaktc.exe in this directory[/LIST]not even needed to modify mfaktc.ini

Oliver

firejuggler 2013-06-27 02:08

Don't forget the dll

roemer2201 2013-06-27 09:53

1 Attachment(s)
[QUOTE=TheJudger;344485]mfaktc.ini, checkpoint files, results.txt and worktodo.txt within the same directory or in different directories? For the first case it is really simple (Windows and Linux):[LIST=1][*]put mfaktc.exe into some directory (e.g "C:\programm files\" or "/usr/local/bin/")[*]create your working directory[*]put your worktodo.txt and mfaktc.ini into the working directory[*]start <some directory>/mfaktc.exe in this directory[/LIST]not even needed to modify mfaktc.ini

Oliver[/QUOTE]

So mfaktc allways uses the "pwd" as a workingdirectory? To this i can not agree. I'll attach my mfaktc startskript. There you can see that my pwd is $HOME and I launch the program with ~/bin/mfaktc-0.20/mfaktc.exe. According to your description mfaktc should look for the worktodo.ini directly in my $HOME, right? But what it actually does is that it reads/writes all related files to ~/bin/mfaktc-0.20.

TheJudger 2013-06-27 21:34

[QUOTE=roemer2201;344541]So mfaktc allways uses the "pwd" as a workingdirectory? To this i can not agree. I'll attach my mfaktc startskript. There you can see that my pwd is $HOME and I launch the program with ~/bin/mfaktc-0.20/mfaktc.exe. According to your description mfaktc should look for the worktodo.ini directly in my $HOME, right? But what it actually does is that it reads/writes all related files to ~/bin/mfaktc-0.20.[/QUOTE]

It should use cwd for all files read an written:
[CODE]somehost:/tmp # ls -la foo/ bar/
bar/:
total 140
drwxr-xr-x 2 root root 4096 Jun 27 23:29 .
drwxrwxrwt 9 root root 114688 Jun 27 23:26 ..
-rw-r--r-- 1 root root 40 Jun 27 23:29 M66362159.ckp
-rw-r--r-- 1 root root 8730 Jun 27 23:27 mfaktc.ini
-rw-r--r-- 1 root root 28 Jun 27 23:29 worktodo.txt

foo/:
total 764
drwxr-xr-x 2 root root 4096 Jun 27 23:27 .
drwxrwxrwt 9 root root 114688 Jun 27 23:26 ..
-rwxr-xr-x 1 root root 652622 Jun 27 23:27 mfaktc.exe

somehost:/tmp # cd bar/
somehost:/tmp/bar # ../foo/mfaktc.exe
mfaktc v0.20 (64bit built)
[...]
got assignment: exp=66362159 bit_min=64 bit_max=65 (0.06 GHz-days)
Starting trial factoring M66362159 from 2^64 to 2^65 (0.06 GHz-days)
k_min = 138985409640
k_max = 277970824814
Using GPU kernel "barrett76_mul32_gs"

found a valid checkpoint file!
last finished class was: 105
found 0 factor(s) already
[...]
[/CODE]

Please check
[CODE]ls -la /proc/<PID of mfaktc>/cwd[/CODE]

Oliver

roemer2201 2013-07-01 08:39

[QUOTE=TheJudger;344588]
[/CODE]Please check
[CODE]ls -la /proc/<PID of mfaktc>/cwd[/CODE]Oliver[/QUOTE]

Thanks for that tip. You are right, my cwd is the folder with the binary of mfaktc. So it should be easy to customize the script to my needs.

firejuggler 2013-10-25 17:44

A new low-level API developed by AMD/ATI named [I]Mantle[/I] will hit the market soon.
It is essentially a Graphic API, but allow direct access to GPU memory, and can speed up OpenCL. Do you think that can help mfaktco in any way?

bayanne 2013-10-29 10:09

mfaktc.ini
 
When I go into Manual Assignment for a batch of exponents to check, I am only given those which are for testing from 2^70 to 2^71

Is there a setting on mfaktc.ini which will allow me to pick up exponents at 2^68 or 2^69 onwards?

I am also sometimes receiving the following message when I request an exponent:

Error code: 40
Error text: No assignment available meeting CPU, program code and work preference requirements, cpu_id: 1463, cpu # = 0, user_id = 64

What does this signify please?

kladner 2013-10-29 11:36

Interesting. I just did a test in the PrimeNet manual assignments for TF, and got an 81M from 70 to 71. I don't usually go that route. I use GPU72. There are Double Check TFs available in the 40M range there starting at 68.
[url]http://www.gpu72.com/reports/available/[/url]

The thing is, lower bit levels are in demand. They run in less time and each level has the same odds of finding factors. Higher levels = more work to find a factor.

I usually think of Error 40 as a Result not Needed (a duplicate submission.) Apparently, it can also refer to a request for which the parameters given do not find any available assignments.

bayanne 2013-10-29 11:57

I thought I would try the gpu72 route, test reserved 5 exponents in the 64M range. I then checked exponent status on PrimeNet and found that they had been assigned to someone else on 2013-02-19. I then unreserved them.

Is there not a linkage between gpu72 and PrimeNet?

I don't want to poach someone else's exponent ...

kladner 2013-10-29 12:09

[QUOTE=bayanne;357831]I thought I would try the gpu72 route, test reserved 5 exponents in the 64M range. I then checked exponent status on PrimeNet and found that they had been assigned to someone else on 2013-02-19. I then unreserved them.

Is there not a linkage between gpu72 and PrimeNet?

I don't want to poach someone else's exponent ...[/QUOTE]

GPU72 gets its assignments from PrimeNet. What user was indicated when you saw that the exponents were already assigned? I am seeing "Trial factoring to "GPU Factoring" on 2013-07-24" on one of my ~63M assignments. In general, GPU72 assignments only show up as "yours" when you complete and report them.

You may have encountered some glitch. Chalsall would have to let you know on that one when he gets a chance.

bayanne 2013-10-29 12:11

[QUOTE=kladner;357832]GPU72 gets its assignments from PrimeNet. What user was indicated when you saw that the exponents were already assigned? I am seeing "Trial factoring to "GPU Factoring" on 2013-07-24" on one of my ~63M assignments. In general, GPU72 assignments only show up as "yours" when you complete and report them.

You may have encountered some glitch. Chalsall would have to let you know on that one when he gets a chance.[/QUOTE]

This was one allocated to GPU Factoring

chalsall 2013-10-29 14:00

[QUOTE=bayanne;357833]This was one allocated to GPU Factoring[/QUOTE]

Yes -- that's GPU72's Spider's Account.

How this works is GPU72 reserves candidates from Primenet, and then "lends" them out to workers. The worker (read: you) submits the results to Primenet, where you get the credit.

A few minutes later another GPU72 spider will notice you've completed the work on Primenet, and will give you credit on GPU72. It will then assign the candidate to another person for additional work (if needed), or else release it back to Primenet for LLing assignment.

bayanne 2013-10-29 15:28

[QUOTE=chalsall;357838]Yes -- that's GPU72's Spider's Account.

How this works is GPU72 reserves candidates from Primenet, and then "lends" them out to workers. The worker (read: you) submits the results to Primenet, where you get the credit.

A few minutes later another GPU72 spider will notice you've completed the work on Primenet, and will give you credit on GPU72. It will then assign the candidate to another person for additional work (if needed), or else release it back to Primenet for LLing assignment.[/QUOTE]

Yes, that's all how it seems to have gone.
I'll take a larger batch this time :smile:

chalsall 2013-10-29 15:58

[QUOTE=bayanne;357844]I'll take a larger batch this time :smile:[/QUOTE]

Excellent. Thanks.

Welcome to the party! :smile:


All times are UTC. The time now is 14:37.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.