![]() |
|
|
#1 |
|
"Ed Hall"
Dec 2009
Adirondack Mtns
EE916 Posts |
I have programmed a Windows GUI to run Aliqueit. The program, which I call AliWin, does not change Aliqueit in any way, but provides an easy method to control some aspects and adds a few capabilities. Some features of the program are:
Code:
-queue several numbers (up to 1000) with different digit sizes -Aliqueit and subsequent programs are still run within a console window for top performance -Aliqueit is stopped once the size is reached -Aliqueit can work past the size until it finds a composite cofactor that is 80% of the size and survives ECM -wget can retrieve and submit sequence data automatically -automatic and manual saves to the db do not interrupt the running Aliqueit instance -open/edit several of the files via a single button click for each -menu and help are self-contained within source in single AliWin.cpp file -AliWin.cpp compiles under Dev-C++ 4.9.9.2 Code:
-only written for Win32 -doesn't detect db merges -all basic files have to be in the same directory as AliWin -limited source code documentation -amateurish implementation of routines -lack of error-checking Additionally, if someone has a request for additional features, bring them up here. I'll see if they would be easy (for me) to implement. |
|
|
|
|
|
#2 |
|
Just call me Henry
"David"
Sep 2007
Cambridge (GMT/BST)
23×3×5×72 Posts |
What language is it written in?
please post binaries and preferably source |
|
|
|
|
|
#3 | ||
|
A Sunny Moo
Aug 2007
USA (GMT-5)
624910 Posts |
Quote:
Quote:
Last fiddled with by mdettweiler on 2010-04-27 at 22:14 |
||
|
|
|
|
|
#4 |
|
"Ed Hall"
Dec 2009
Adirondack Mtns
11·347 Posts |
It is indeed C++ developed for a Windows environment. Some of the API routines say they are supported by Win2000 and newer. I haven't tried it on anything but the WinXP that I used to build it.
Please be patient. I hope to have a page built in the next day or so that will have the single binary AliWin.exe and the single source AliWin.cpp along with screen shots and instructions. For now, it is built to be used within the directory C:\MathWork\Aliqueit. All the other files also need to be located in that same directory. I hope to make it less particular soon. You will still need to acquire all the YAFU.exe, msieve.exe, aliqueit.exe, ggnfs package, etc. and add them to the aliqueit directory in order for it to run. I will put up details on using it when I get the page done. I kind of wanted to see the level of interest at this point. The page will be http://www.starreloaders.com/edhall/AliWin/AliWin.html. I will post update notices and answer comments and questions here in this thread. A preview: |
|
|
|
|
|
#5 |
|
Apr 2010
238 Posts |
This looks awesome!
Your project will definitely aid in some of the discrepancies of understanding how to use some of the factoring tools. Your GUI looks great! |
|
|
|
|
|
#6 | |
|
Sep 2008
Kansas
337610 Posts |
Quote:
Oh, I guess I want my cake and ice cream and eat it too. :) |
|
|
|
|
|
|
#7 |
|
Sep 2008
Kansas
1101001100002 Posts |
Just a couple cosmetic suggestions.
- The "Run aliqueit" and "Stop aliqueit" can be the same button, just toggle the text of what would be the next change. (Maybe a color background.) - I'm assuming the Status box and the list box contains information about the state of the current index. If they post the pre-factored size along with the remaining composite size, keep it consistent. Always one before the other. Other than that, it looks good. Great job!! |
|
|
|
|
|
#8 |
|
"Ed Hall"
Dec 2009
Adirondack Mtns
1110111010012 Posts |
Thanks for the interest and feedback.
Mention anything that seems like it might be a good thing to have. Although I may not implement everything, I certainly won't if I'm not aware of it. Auto version check? I don't know - maybe after I get a handle on the more pressing things... Run and Stop are separate right now because I was having a problem with stopping it. I may take your suggestion, though. The Status box is showing the current state of the current number. In the above example the number 216840 has a current size of 106 and is working to 120. You can notice in the aliqueit window that the current cofactor is a c100. The list shows completed numbers with the current size first and then the size it was to work to. This should be consistent with the Status box. For the 91/88 and 90/88, both were to work to 88, but the "Run ECM above digit cutoff" setting took them to that size, or that was the size in the database when retrieved. I chose to put the sizes first in case the number being worked is too large for the display, and to help keep things lined up somewhat. So, I think I am consistent, unless I missed your meaning. I am currently working on the web page in the area of explaining how to set everything up and where to get all the different programs/packages. I hope to have something up soon, but I have already changed things that affect the help file messages, so I'll have to rework those prior to making the program available. Thanks again for the feedback and for your patience. |
|
|
|
|
|
#9 | |
|
Sep 2008
Kansas
24×211 Posts |
Quote:
I'll read the manual when it comes out. |
|
|
|
|
|
|
#10 |
|
Account Deleted
"Tim Sorbera"
Aug 2006
San Antonio, TX USA
17×251 Posts |
Looks cool, can't wait for the download to be available.
![]() A few notes based on what I've seen: The radio boxes (circles) on the right side of the program should be check boxes (squares) instead. They're not exclusive in any way, which is what radio boxes imply. Rather, they're all separate options that can be used in any combination, which is what check boxes imply. Do the "Open [file name]" boxes just tell Windows to open them in the default program, or are you telling it what to open in (e.g. Notepad)? If the latter, is it customizable? I'd prefer it to be customizable, as I have scripts set to be run instead of opened in something, which wouldn't be useful in a situation like that. I'm curious to see how you're doing some of the stuff behind the scenes, compared to aliperl. e.g. are you having aliqueit run a line at a time and checking it in between or allowing it to run constantly and just monitoring it? And how are you doing the "Run ECM above digit cutoff" feature? Is it like the interceptor scripts I wrote, or do you just monitor its progress (via all the files or just aliqueit.log) and watch for the SIQS/GNFS to start or what?Are you able to modify and rebuild Aliqueit? I'd like a version that doesn't print all the config to the screen, and this would be especially useful for aliperl and AliWin, if AliWin runs aliqueit one line at a time. |
|
|
|
|
|
#11 |
|
"Ed Hall"
Dec 2009
Adirondack Mtns
11·347 Posts |
Thanks for the feedback.
I can change the radioboxes easily, but will probably wait for now. I didn't like how close the checkboxes started on the left edge and don't (yet) know how to get them over a bit. The open filename boxes are hard-coded to particular programs, which is a pain and I will eventually change, when I get some other things settled. A particular pain is that the first time you open factmsieve.py or factMsieve.pl, you can't use Notepad, because it doesn't interpret the EOLs correctly. And, using Wordpad is not so easy - Wordpad doesn't come up by just calling it. You have to exclusively go get it and hope it will be in the same location in various Win OSs. Eventually I plan to add the ability to set up the launch string for each file and have it saved in the AliWin.cfg file that currently just keeps the radiobox data. I'm turning Aliqueit fully loose. I never did like to step through one line at a time. I couldn't figure out how to get FileSystemWatcher implemented (a lack of class knowledge - a real shortcoming on my part), so I'm using a Timer to check the size from the .elf and the last line in Aliqueit.log. If the size is met and the extra ECM is unchecked, the program sends a WM_Close and a TerminateProcess to the aliqueit window. If the extra ECM box is checked, it also looks for "Running qs" or "Running gnfs" to flag a close. I tried piping the aliquet output directly into AliWin for display, but it really increased the time and wasn't stable. I thought about just "Windoizing" Aliqueit, but I don't think it would run as efficiently, and I wasn't sure about some items. The source is pretty rough and clumsy, but I hope to smooth it out and add more internal documentation as it progresses. There are still a few things missing or not done to my liking, simply because I don't know how. I program to learn how to program and lack a good foundation in a lot of critcal areas. Note to everyone: I have the page partly constructed, if anyone would like to visit it and comment here, I'd welcome that feedback, too. I hope to have the code up in the next day or two. (And, yes, I already know there is an extra "Starting out..." title mysteriously sitting in the YAFU instructions.) ![]() More later... |
|
|
|
![]() |
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| P-1 discussion | kladner | GPU to 72 | 43 | 2012-01-27 20:43 |
| Discussion about dates | Flatlander | Twin Prime Search | 12 | 2011-11-17 09:40 |
| 10,375- LA discussion | Raman | Cunningham Tables | 27 | 2008-12-04 21:17 |
| P-1 discussion | AntonVrba | Prime Cullen Prime | 5 | 2007-04-04 04:59 |
| New .dat discussion | VJS | Prime Sierpinski Project | 7 | 2006-07-25 14:31 |