mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Aliquot Sequences

Reply
 
Thread Tools
Old 2010-04-27, 17:31   #1
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

23×421 Posts
Default AliWin.exe discussion

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
Current shortcomings:
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
I have been running this program against several numbers in the db, most recently those under the 838k line in the Subproject #5 thread. It still has several anomolies, but I am checking to see if this program has any interest to anyone else. I can make the source and/or win32 binary available, if there is interest. I will also field questions in this thread.

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.
EdH is online now   Reply With Quote
Old 2010-04-27, 17:58   #2
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

166416 Posts
Default

What language is it written in?
please post binaries and preferably source
henryzz is offline   Reply With Quote
Old 2010-04-27, 22:13   #3
mdettweiler
A Sunny Moo
 
mdettweiler's Avatar
 
Aug 2007
USA (GMT-5)

11000011000012 Posts
Default

Quote:
Originally Posted by henryzz View Post
What language is it written in?
please post binaries and preferably source
I would guess C++:
Quote:
Originally Posted by EdH
-menu and help are self-contained within source in single AliWin.cpp file
-AliWin.cpp compiles under Dev-C++ 4.9.9.2
Meanwhile, though, sounds like a really cool idea!

Last fiddled with by mdettweiler on 2010-04-27 at 22:14
mdettweiler is offline   Reply With Quote
Old 2010-04-28, 01:31   #4
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

23·421 Posts
Default

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:
Attached Thumbnails
Click image for larger version

Name:	AliWin.jpg
Views:	147
Size:	147.3 KB
ID:	5087  
EdH is online now   Reply With Quote
Old 2010-04-28, 02:47   #5
Romulas
 
Apr 2010

19 Posts
Default

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!
Romulas is offline   Reply With Quote
Old 2010-04-28, 03:35   #6
RichD
 
RichD's Avatar
 
Sep 2008
Kansas

2·3·521 Posts
Default

Quote:
Originally Posted by EdH View Post
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.
Wouldn't it be slick to auto-detect the latest binaries and download if needed.

Oh, I guess I want my cake and ice cream and eat it too. :)
RichD is offline   Reply With Quote
Old 2010-04-29, 02:29   #7
RichD
 
RichD's Avatar
 
Sep 2008
Kansas

C3616 Posts
Default

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!!
RichD is offline   Reply With Quote
Old 2010-04-29, 03:35   #8
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

23×421 Posts
Default

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.
EdH is online now   Reply With Quote
Old 2010-04-29, 21:35   #9
RichD
 
RichD's Avatar
 
Sep 2008
Kansas

312610 Posts
Default

Quote:
Originally Posted by EdH View Post
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 misunderstood the numbers. My assumption was incorrect.

I'll read the manual when it comes out.
RichD is offline   Reply With Quote
Old 2010-04-30, 12:20   #10
Mini-Geek
Account Deleted
 
Mini-Geek's Avatar
 
"Tim Sorbera"
Aug 2006
San Antonio, TX USA

17·251 Posts
Default

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.
Mini-Geek is offline   Reply With Quote
Old 2010-04-30, 14:13   #11
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

23×421 Posts
Default

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...
EdH is online now   Reply With Quote
Reply

Thread Tools


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

All times are UTC. The time now is 21:48.

Wed Oct 21 21:48:04 UTC 2020 up 41 days, 18:59, 0 users, load averages: 1.93, 1.92, 1.80

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

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.