apgsearch v4.0

For general discussion about Conway's Game of Life.
mniemiec
Posts: 1590
Joined: June 1st, 2013, 12:00 am

Re: apgsearch v4.0

Post by mniemiec » October 30th, 2017, 4:01 am

Apple Bottom wrote:Are you sure the result got submitted to Catagolue?
Ah! That must be it! I think it might be from when I did a search that displayed a weird apgsearch error message, and that was part of the error message, which I have since erased.
Apple Bottom wrote:(Also, are you passing the option to save local logs to apgluxe? If so, and if you're indeed keeping them, you should be able to grep through those to find the object.)
I was not aware there was such an option. At this point, I'm mostly interested in searches that fail (i.e. that hang indefinitely, so they have to be aborted, so their results are never uploaded). I'd be happy if I could see the local log files, but I've never seen any local files of any kind stored other than the most recently compiled versions of main.o and apgluxe.exe. I've always wondered where it stored hauls that haven't yet been uploaded.

User avatar
Apple Bottom
Posts: 1034
Joined: July 27th, 2015, 2:06 pm
Contact:

Re: apgsearch v4.0

Post by Apple Bottom » October 30th, 2017, 10:36 am

mniemiec wrote:I was not aware there was such an option. At this point, I'm mostly interested in searches that fail (i.e. that hang indefinitely, so they have to be aborted, so their results are never uploaded). I'd be happy if I could see the local log files, but I've never seen any local files of any kind stored other than the most recently compiled versions of main.o and apgluxe.exe. I've always wondered where it stored hauls that haven't yet been uploaded.
The option's "-L 1" (sans quotes, of course)... sadly apgluxe doesn't default to saving logs locally.

Logs only get saved when apgluxe attempts to submit results, but regardless of whether the submission succeeds. This means that if you run into haul size issues (e.g. overly large hauls that the server refuses), you'll still have your local logs for your own analysis, but if apgluxe just "hangs", you're out of luck.

For the latter case, some sort of checkpointing system could easily be rigged up. Since you won't know in advance whether any individual soup's problematic or not, you'll have to checkpoint before each new soup. The following code in includes/searcher.h is responsible for saving logs:

Code: Select all

        if(local_log) {
            std::ofstream resultsFile;
            std::ostringstream resultsFileName;

            std::time_t timestamp = std::time(NULL);

            resultsFileName << "log." << timestamp << "." << root << ".txt";

            std::cout << "Saving results to " << resultsFileName.str() << std::endl;

            resultsFile.open(resultsFileName.str().c_str());
            resultsFile << ss.str();
            resultsFile.close();
        }
Copying (roughly) that into the while loop in runsearch() in searching.h should be enough for a rudimentary checkpointing system. If you're more interested in the soup itself, you may want to instrument censusSoup() in searcher.h as well, that's what orchestrates evolving soups (stabilise3()) and classifying patterns (separate()).

Perhaps the best thing would be to simply output the seed and suffix (=soup number) before stabilise3() is called, and have a separate utility to regenerate the soup based on that, e.g. a Golly script that's basically hashsoup() from apgsearch 1.x. That way you won't have to convert the soup to a useful format in C++ prior to outputting it.

Actually this sounds like something I should add to my fork...
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: apgsearch v4.0

Post by Saka » October 31st, 2017, 8:46 am

Adam why is this double-ended wickstretcher in ov_s6018 and a bunch of other ov_s's

Code: Select all

x = 16, y = 16, rule = B2cen3ackr4-jkryz5ckqy6-cn7e8/S12i3qy4aciw5-jkr6ak
3b3ob2o3bo2bo$2o4b2obo2b3o$3b3o3bo2b3o$2b2o3b2o6bo$ob2ob7o3bo$3ob3obob
obob2o$obo3b6ob2o$bo2bo6b2o2bo$3b6o3bobo$b4obob2o2bo$o2bo2b4o$3b3ob3o
2bob2o$2o2b4ob4o2bo$bob3ob3ob2ob2o$2bo2bo2b2o3b3o$3ob2o2b2ob2o2bo!
https://catagolue.appspot.com/object/ov ... iw5-jkr6ak

MAJOR THING
xp2_gfgz0uzfofzzz0gz01 is present in xp2 tabulations but when clicked it says

Code: Select all

The apgcode prefix does not accurately reflect the behaviour of the pattern encoded in the suffix under the specified rule. As such, the provided apgcode is invalid in this rule.
and indeed it is! It's not even a p2 or maybe not even an oscillator!!
And the xs[Big number]? Those are also oscstretchers.
Image
It's like Saka_Test in a legit haul!
There's also a whole bunch of osc-line wickstretcher hybrids being sorted into every single zz there is. Except zz_LINEAR, those are weird things but some of the zz_LINEARS go into yl12

And THE RETURN OF THE OV_P0s

User avatar
Apple Bottom
Posts: 1034
Joined: July 27th, 2015, 2:06 pm
Contact:

Re: apgsearch v4.0

Post by Apple Bottom » October 31st, 2017, 11:12 am

If you'll allow me to interject, I'd suggest upgrading to the latest versions of apgluxe and lifelib (4.23-ll1.22); you're still using an outdated, buggy version (4.2-ll1.2).
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: apgsearch v4.0

Post by dani » October 31st, 2017, 1:15 pm

Apple Bottom wrote:If you'll allow me to interject, I'd suggest upgrading to the latest versions of apgluxe and lifelib (4.23-ll1.22); you're still using an outdated, buggy version (4.2-ll1.2).

Code: Select all

XXXXX ~/apgluxe
$ ./apgluxe -n 5000000 -k 07302002

Greetings, this is apgluxe v4.23-ll1.22, configured for b3s23/C1.

Lifelib version: ll1.22
Compiler version: 5.4.0
Python version: '2.7.13 (default, Mar 13 2017, 20:56:15)  [GCC 5.4.0]'

Peer-reviewing hauls:

Bad status: 500
No response!
Authentication failed.
Received no response from /verify.
Bad status: 500
No response!
Authentication failed.
Received no response from /verify.
Bad status: 500
No response!
Authentication failed.
Received no response from /verify.
Doesn't let me connect to catagolue.
EDIT: On second thought, looks like catagolue itself is down. Sorry about this.

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: apgsearch v4.0

Post by Saka » November 1st, 2017, 6:13 am

Apple Bottom wrote:
If you'll allow me to interject, I'd suggest upgrading to the latest versions of apgluxe and lifelib (4.23-ll1.22); you're still using an outdated, buggy version (4.2-ll1.2).
Ah, yes.
Anyway,
Fake xp60
Fake xp10 but for some unholy reason it's "valid"
Poorly separated xq49

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: apgsearch v4.0

Post by dani » November 4th, 2017, 3:39 pm

B35j7e/S23 spits out a lot of 'failed to detect periodic behaviour':

Code: Select all

Using seed l_s3mR74c9c8PK
Computing 2^18-entry lookup table...done!
Computing 2^24-entry lookup table...done!
Computing 2^18-entry mixing table...done!
Running 10000 soups per haul:
Failed to detect periodic behaviour!
Linear-growth pattern detected: yl275_1_33_3a02dc0fb0345d69756a2d100a4da986
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
454 soups completed (45 soups per second).
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
Failed to detect periodic behaviour!
1748 soups completed (122 soups per second).
The problem seems to be this pattern:

Code: Select all

x = 16, y = 19, rule = B35j7e/S23
b3o$2ob2o$o2b2o$b2o12$14bo$14b2o$14b2o$15bo!
EDIT: I made this post seem less like an advertisement for the rule, apologies

hkoenig
Posts: 258
Joined: June 20th, 2009, 11:40 am

Re: apgsearch v4.0

Post by hkoenig » November 4th, 2017, 4:40 pm

Looks like it's a spaceship. That same pattern appears downwards 7 cells every 574 generations, for a speed of c/82. Nice and slow.

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: apgsearch v4.0

Post by dani » November 4th, 2017, 5:02 pm

hkoenig wrote:Looks like it's a spaceship. That same pattern appears downwards 7 cells every 574 generations, for a speed of c/82. Nice and slow.
I knew of the spaceship property, but it is actually 6 cells every 574 generations, giving it an uglier speed of 3c/287. :( I wish the speed was round.

hkoenig
Posts: 258
Joined: June 20th, 2009, 11:40 am

Re: apgsearch v4.0

Post by hkoenig » November 4th, 2017, 9:10 pm

Oops. I guess that factor of 7 was just too good to double check (and the flip-flopping symmetry should have been another clue that it couldn't be odd...)

But how common are natural spaceships this slow in any rule? I haven't been paying attention.

User avatar
Apple Bottom
Posts: 1034
Joined: July 27th, 2015, 2:06 pm
Contact:

Re: apgsearch v4.0

Post by Apple Bottom » November 5th, 2017, 4:55 am

hkoenig wrote:But how common are natural spaceships this slow in any rule? I haven't been paying attention.
There's not a whole lot of them on Catagolue, but there's some. Here's a list of rules that have, as of yesterday, high-period (p>=500) ships -- I don't have data on how slow or fast these are, though:

Code: Select all

b2-a4k5678s1-c2ci3q4567-c8
b2cen3jkq4eirt5-acek6c7e8s02n3jq4qwy5-acqr
b2e3aeij4-artyz5eikq6kn7c8s23-akn4-ejkn5aekqy6-ak8
b2e3ai4arw5678s3-an4ar5i678
b2e3-as12-i3-a7
b2i34cik7s23-a4cikn7
b2i34ik7s23-a4ikn5j7
b2ik3-qy4eknrt5aek6ins2-a3ijqy4aqt5aen7e8
b2in3-cky4certz5ae6cs1c2aek3-ace5ace6a
b2k3-ceqy4k6n7e8s2-n3-cey4kz5e6kn
b2n3-eky4eqy5ir7s2-n3-ey4tw5j6e
b35j7-cs23
b367s3567
g4b34678s24568
r5b34t45s34t58
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

mniemiec
Posts: 1590
Joined: June 1st, 2013, 12:00 am

Re: apgsearch v4.0

Post by mniemiec » November 8th, 2017, 10:24 am

I have managed to crudely hack up apgmera to manually run a specific pattern to extract apgcodes (useful for getting yl_* codes from puffers and guns that have not been found in soups). The following additions to apgmera add the syntax "apgmera -y -y <file.rle" to run one specific pattern and store the results to a local log file. I have used this to get yl_* apgcodes for all growing patterns in my database. I have seen several non-standard manually-generated apgcodes on catagolue, of the form yl(nn)_yyyy_mm_dd that awaited proper apgcodes; this modification should make it trivial to find those and correct those.

Code: Select all

// main.cpp: add after system includes:
int onerle = 0;

// main.cpp: add at end of option parsing block:
        } else if (strcmp(argv[i], "-y") == 0) {
            onerle = 1;
            soups_per_haul = 1;
            local_log = 1;
            verifications = 0;

// searching.h: add after submitResults:
            if (onerle)
                exit (0);

// searcher.h: replace start of submitResults:
        std::string authstring;
        if (!onerle) { // don't authenticate local search
            std::string authstring = authenticate(payoshakey.c_str(), "post_apgsearch_haul");
            // Authentication failed:
            if (authstring.length() == 0)
                return "";
        }

// searcher.h: add at end of loop before: return "testing";
            if (onerle) exit (0);

// hashsoup2.h: after bitworld bw;:
    if (onerle) {
        int x=0, y=0, n=0;
        char c;
        while (std::cin.get (c) && c != '!') {
            if (c == 'x') {
                while (std::cin.get (c) && c != '\n') {
                }
            } else if (c>='0' && c<='9') {
                n = n*10 + c-'0';
            } else if (c > 0x20) {
                for (n = n?n+1:2; --n > 0; ) {
                    if (c == '$')
                        ++y, x = 0;
                    else
                        bw.setcell (x++, y, c != 'b' && c != '.');
                }
	    }
        }
        return bw;
    }

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: apgsearch v4.0

Post by Saka » December 13th, 2017, 1:55 am

How do you get the old apgmera? I heard it's faster.
I tried ./apgmera but it still says apgluxe.

Also why do you need to sign in to go to the apgnano page?

User avatar
Apple Bottom
Posts: 1034
Joined: July 27th, 2015, 2:06 pm
Contact:

Re: apgsearch v4.0

Post by Apple Bottom » December 13th, 2017, 4:03 am

Saka wrote:How do you get the old apgmera? I heard it's faster.
I tried ./apgmera but it still says apgluxe.
https://gitlab.com/apgoucher/apgmera/tr ... bdd298da57
Also why do you need to sign in to go to the apgnano page?
Presumably the gitlab repo has been made private (or deleted outright).
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: apgsearch v4.0

Post by Majestas32 » December 14th, 2017, 11:52 am

Can somebody eli6 how exactly to set up apgsearch for somebody who barely knows what a compiler is?
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

mniemiec
Posts: 1590
Joined: June 1st, 2013, 12:00 am

Re: apgsearch v4.0

Post by mniemiec » December 14th, 2017, 12:21 pm

Majestas32 wrote:Can somebody eli6 how exactly to set up apgsearch for somebody who barely knows what a compiler is?
I first tried to just download apgsrch and compile it by myself, and had no success, but once I read the instructions and followed the steps in it, everything magically just worked.

The readme file that comes with it describes the all steps required. It depends on what operating system you are using. If you're running under Windows, it tells you how to download Cygwin and set it up with all the Unix tools required to compile and run apgsearch. (If you're on Linux, this is not necessary, as you should already have all the necessary tools.) Then, just run the recompile.sh script, which will configure and compile everything and build apgmera. Whenever you run apgmera with a different search configuration (i.e. different rules or symmetries), it will automatically re-compile itself to handle the new configuration.

User avatar
dvgrn
Moderator
Posts: 10612
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch v4.0

Post by dvgrn » December 14th, 2017, 12:45 pm

Majestas32 wrote:Can somebody eli6 how exactly to set up apgsearch for somebody who barely knows what a compiler is?
This question has been asked before in this thread. You'll need different hints depending on whether you're trying to run apgluxe on Windows, Mac, or Linux, so without that information there's not much point in anyone attempting to write up a walkthrough for you.
mniemiec wrote:... The readme file that comes with it describes the all steps required...
Here's the link to the README.md document. Start by scrolling down to the Installation section. Try to follow the instructions for your particular operating system. When you don't understand something, Google it. Then try to follow the steps even if you don't understand them. If error messages appear, Google them.

After you've done that for an hour or so, write up and post here each specific step that you've completed successfully, and the step where you're running into a problem -- with the full text of any error messages you're running into. If you try to take any shortcuts at this stage, it will just confuse the people who might try to help you, and then it will take longer to solve any problems.

There's nothing particularly wrong about the instructions, so you may find the whole process surprisingly easy to complete. Or you may run into a lot of difficulties -- but you'll actually learn more in that case, and you might come out of the experience knowing just a little more about what a compiler is.

Double-check the details at each step. On Windows the first thing you could do wrong is to run the setup-x86.exe Cygwin installer. Don't do that. Read the instructions carefully, and run the setup-x86_64.exe installer.

Along the same lines, at each step, if you can't find an exact match to the instructions, don't just try something that looks close, cross your fingers and hope. Keep searching and researching until you do find an exact match. If you think you've done something right but you aren't completely sure, remember that uncertainty: if something goes wrong later, go back and double-check that step.

User avatar
calcyman
Moderator
Posts: 2932
Joined: June 1st, 2009, 4:32 pm

Re: apgsearch v4.0

Post by calcyman » December 14th, 2017, 2:16 pm

Majestas32 wrote:Can somebody eli6 how exactly to set up apgsearch for somebody who barely knows what a compiler is?
(It appears that dvgrn and mniemiec beat me to this answer, but we've all said things with slightly different nuances and emphases so I'll post this anyway.)

The instructions in the README file on gitlab are relatively comprehensive, and there are tutorials on LifeWiki pertaining to using apgsearch (many thanks to Apple Bottom!).

If you 'barely know what a compiler is', then this should be a reason to learn rather than to expect a simplified version which hides away what's actually happening. I think that, through experimenting with GoL scripts, programs and libraries, many people on this forum (myself included) have learned a lot more about practical computer science, programming languages, compilers, cryptographic hash functions, and so much more. What might need eliciting are the concepts behind the scenes:

Machine code: The language directly understandable by your computer. Different computer architectures (such as x86_64 and ARM) have completely different and incompatible machine codes. Machine code is a list of bytes, usually displayed in hexadecimal for convenience. It's overwhelmingly rare nowadays to use this instead of assembly language; exceptions might be embedded systems with really low memory, or malware where the machine code is disguised as English text (this actually exists!).

Assembly language: This differs from machine code in that it's more human-readable, but is essentially interchangeable. That is to say, there are programs (assemblers and disassemblers) which can convert between them with minimal effort. Again, this is architecture-specific. The script rule2asm.py generates x86_64 assembly code for running the specified outer-totalistic rule.

Source code (compiled): Typically high-level human-readable code (e.g. C++) which is compiled into machine code by a compiler such as g++. In contrast with assembly language, compilation cannot be easily reversed, and writing a decompiler is a very difficult problem.

Source code (interpreted): Again high-level human-readable code (e.g. Python), but it is read by an interpreter (itself a machine-code program) instead of being compiled into machine code. Interpreted languages tend to be much slower than compiled languages, by a factor of up to 1000. For most applications, this is unimportant because the most computation-heavy parts are run in a compiled language: machine learning researchers tend to use Python, which is acceptable because the intensive linear algebra operations are delegated to a fast machine-code library (namely ATLAS or openBLAS). This is analogous to how Golly scripts are written in Python (which is slow), but the computationally intensive task of running the cellular automaton is executed by Golly (which is fast).

For instance, versions 0.x and 1.x of apgsearch are written in Python (ergo interpreted), whereas versions 2.x and onwards are compiled from C++ source code. In both cases, they use compiled code for actually running the cellular automaton (Golly and lifelib are both written in C++).

I'm simplifying slightly because I haven't mentioned the idea of the linker, which combines machine code from various object files into an executable file. It's often convenient to abstract this away and think of it as part of the compiler (g++, for instance, does every stage of compilation, assembly, and linkage). There's also the concept of optimisation, where the compiler tries to speed up your code by replacing slower instruction sequences with faster equivalent sequences. Compilation is slower (apgluxe and slmake take so long to compile because they use -O3 optimisation on top of a codebase of many thousand lines of C++ and generated assembly) but execution is faster, so it's almost always desirable to compile with -O3.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
Apple Bottom
Posts: 1034
Joined: July 27th, 2015, 2:06 pm
Contact:

Re: apgsearch v4.0

Post by Apple Bottom » December 14th, 2017, 2:25 pm

calcyman wrote:and there are tutorials on LifeWiki pertaining to using apgsearch (many thanks to Apple Bottom!).
*tips hat* Glad to have been of help! :)

(For the sake of completeness, here's the "Contributing to Catagolue" tutorial on the wiki. It even has a handy flowchart!)
If you speak, your speech must be better than your silence would have been. — Arabian proverb

Catagolue: Apple Bottom • Life Wiki: Apple Bottom • Twitter: @_AppleBottom_

Proud member of the Pattern Raiders!

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: apgsearch v4.0

Post by Majestas32 » December 14th, 2017, 4:54 pm

Thanks calcyman!!
I do have a couple years of programming experience but that's just in matlab so everything's all built in...
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: apgsearch v4.0

Post by dani » December 24th, 2017, 4:08 pm

What changes have caused the slowdown of rules like B37e/S23, or B3-n4w/S23-r4t?

User avatar
muzik
Posts: 5614
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: apgsearch v4.0

Post by muzik » January 2nd, 2018, 10:49 am

It sadly doesn't seem to be possible to search b026s1/1x256 anymore. Just getting no response like it's an explosive rule.

dani
Posts: 1222
Joined: October 27th, 2017, 3:43 pm

Re: apgsearch v4.0

Post by dani » January 4th, 2018, 1:23 pm

Mildly frustrating:

Code: Select all

$ ./apgluxe -k 07302002 -n 10000000

Greetings, this is apgluxe v4.24-ll1.23, configured for r3b6t6s5t9/C1.

Lifelib version: ll1.23
Compiler version: 6.4.0
Python version: '2.7.14 (default, Oct 31 2017, 21:12:13)  [GCC 6.4.0]'

Peer-reviewing hauls:

No more hauls to verify.
No more hauls to verify.
No more hauls to verify.

Peer-review complete; proceeding search.

Using seed l_MrBAjyFbCAFd
Running 10000000 soups per haul:
101732 soups completed (10173 soups per second).
204519 soups completed (10263 soups per second).
308175 soups completed (10350 soups per second).
393525 soups completed (8535 soups per second). >>{Meaning there was likely a very interesting object somewhere around here}
495068 soups completed (10139 soups per second).
598056 soups completed (10298 soups per second).
.
.
3183895 soups completed (10965 soups per second).
3276465 soups completed (9257 soups per second). >>{Here too}
Segmentation fault (core dumped)

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: apgsearch v4.0

Post by Majestas32 » January 4th, 2018, 1:25 pm

You do realized you just revealed your payosha256 key right danny?
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

User avatar
calcyman
Moderator
Posts: 2932
Joined: June 1st, 2009, 4:32 pm

Re: apgsearch v4.0

Post by calcyman » January 4th, 2018, 1:27 pm

danny wrote:Mildly frustrating:

Code: Select all

$ ./apgluxe -k 07302002 -n 10000000

Greetings, this is apgluxe v4.24-ll1.23, configured for r3b6t6s5t9/C1.

Lifelib version: ll1.23
Compiler version: 6.4.0
Python version: '2.7.14 (default, Oct 31 2017, 21:12:13)  [GCC 6.4.0]'

Peer-reviewing hauls:

No more hauls to verify.
No more hauls to verify.
No more hauls to verify.

Peer-review complete; proceeding search.

Using seed l_MrBAjyFbCAFd
Running 10000000 soups per haul:
101732 soups completed (10173 soups per second).
204519 soups completed (10263 soups per second).
308175 soups completed (10350 soups per second).
393525 soups completed (8535 soups per second). >>{Meaning there was likely a very interesting object somewhere around here}
495068 soups completed (10139 soups per second).
598056 soups completed (10298 soups per second).
.
.
3183895 soups completed (10965 soups per second).
3276465 soups completed (9257 soups per second). >>{Here too}
Segmentation fault (core dumped)
You can re-run with -s l_MrBAjyFbCAFd and -n 3276465 to avoid that segfault (which I'll try to track down using gdb later, assuming it's deterministic). Printing the seed to the terminal makes this possible. :)
What do you do with ill crystallographers? Take them to the mono-clinic!

Post Reply