apgsearch v5.0

For general discussion about Conway's Game of Life.
User avatar
Ian07
Moderator
Posts: 891
Joined: September 22nd, 2018, 8:48 am
Location: New Jersey, US

Re: apgsearch v5.0

Post by Ian07 » July 14th, 2022, 3:25 pm

The following RLEs are each reported as two pathologicals by apgsearch:

Code: Select all

x = 0, y = 0, rule = B3/S23
2.2A5.2A$3.2A3.2A$A2.A.A.A.A2.A$3A.2A.2A.3A$.A.A.A.A.A.A$2.3A3.3A
2$2.3A3.3A$.A.A.A.A.A.A$3A.2A.2A.3A$A2.A.A.A.A2.A$3.2A3.2A$2.2A5.
2A3$11.2A$11.2A6$11.3A2$11.A.A$10.5A$9.2A3.2A$9.2A3.2A3$12.A$10.2A
2$9.A9.2A$9.A8.A.A$13.A3.A6.2A2.2A$10.A6.A2.A2.A2.A.2A$12.2A3.A6.
2A$18.A.A$19.2A!

Code: Select all

x = 0, y = 0, rule = B3/S23
2.3A3.3A2$A4.A.A4.A$A4.A.A4.A$A4.A.A4.A$2.3A3.3A2$2.3A3.3A$A4.A.A
4.A$A4.A.A4.A$A4.A.A4.A2$2.3A3.3A3$11.2A$11.2A6$11.3A2$11.A.A$10.
5A$9.2A3.2A$9.2A3.2A3$12.A$10.2A2$9.A9.2A$9.A8.A.A$13.A3.A6.2A2.2A
$10.A6.A2.A2.A2.A.2A$12.2A3.A6.2A$18.A.A$19.2A!
The one other phase offset, however, is correctly reported:

Code: Select all

x = 31, y = 41, rule = B3/S23
4bo5bo$4bo5bo$4b2o3b2o2$3o2b2ob2o2b3o$2bobobobobobo$4b2o3b2o2$4b2o3b2o
$2bobobobobobo$3o2b2ob2o2b3o2$4b2o3b2o$4bo5bo$4bo5bo2$12b2o$12b2o6$12b
3o2$12bobo$11b5o$10b2o3b2o$10b2o3b2o3$13bo$11b2o2$10bo9b2o$10bo8bobo$
14bo3bo6b2o2b2o$11bo6bo2bo2bo2bob2o$13b2o3bo6b2o$19bobo$20b2o!
This does not appear to be related to the new object separation algorithm mentioned in the previous post; I happen to have an executable from v5.18 and it also reports two pathologicals for each of the first two soups.

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » July 30th, 2022, 1:53 pm

When I try to update apgluxe to v5.33 from earlier v5 versions, I now get this message:

$ git pull
Updating e65b5b7..d3a5dac
error: Your local changes to the following files would be overwritten by merge:
makefile
Please, commit your changes or stash them before you can merge.
Aborting

On one machine this update succeeded a few weeks ago, and now the response to "git pull" is "Already up to date." That was on my most recent machine (Win 11) with the most recent installs of cygwin, git, apgsearch, etc. The apgsearch code tree was copied from one of our older computers and updated successfully on the new machine, so it was the same as the ones I'm now having trouble updating.

I have not edited the makefile. Is there an update I need to perform on the other machines, or is there something else I need to do to synchronize with the repository?

User avatar
pzq_alex
Posts: 792
Joined: May 1st, 2021, 9:00 pm
Location: tell me if you know

Re: apgsearch v5.0

Post by pzq_alex » July 31st, 2022, 1:18 am

benetnasch85 wrote:
July 30th, 2022, 1:53 pm
When I try to update apgluxe to v5.33 from earlier v5 versions, I now get this message:

$ git pull
Updating e65b5b7..d3a5dac
error: Your local changes to the following files would be overwritten by merge:
makefile
Please, commit your changes or stash them before you can merge.
Aborting

On one machine this update succeeded a few weeks ago, and now the response to "git pull" is "Already up to date." This is on my most recent machine (Win 11) with the most recent installs of cygwin, git, apgsearch, etc. The apgsearch code tree was copied from one of our older computers and updated successfully on the new machine, so it was the same as the ones I'm now having trouble updating.

I have not edited the makefile. Is there an update I need to perform on the other machines, or is there something else I need to do to synchronize with the repository?
Run git commit -m "some random message" .

If you see an error message complaining about your name and email, just do what git tells you.
\sum_{n=1}^\infty H_n/n^2 = \zeta(3)

How much of current CA technology can I redevelop "on a desert island"?

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » August 7th, 2022, 7:14 pm

Thanks for the suggestion, but this didn't work -- apparently git finds changes not staged for commit, even though I didn't make any changes. Here are the messages:

$ git commit -m"Fix makefile"
On branch master
Your branch is behind 'origin/master' by 2 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
Changes not staged for commit:
modified: README.md
modified: lifelib (modified content)
modified: main.cpp
modified: makefile
modified: mkparams.py

Untracked files:
apgluxe.exe
apgmera/

no changes added to commit

I had previously tried

git stash stashmessage

as suggested by the help, but this didn't work. For some reason, the "save" option has to be specified explicitly:

git stash save stashmessage

For some code trees (compiled to certain inflated symmetries) this didn't work either, and I ended up downloading the whole tree again and making copies of it to replace the ones I couldn't update. I have much less experience with git than with subversion, so there is probably an easy git solution that I missed.

User avatar
pzq_alex
Posts: 792
Joined: May 1st, 2021, 9:00 pm
Location: tell me if you know

Re: apgsearch v5.0

Post by pzq_alex » August 7th, 2022, 11:05 pm

benetnasch85 wrote:
August 7th, 2022, 7:14 pm
Thanks for the suggestion, but this didn't work -- apparently git finds changes not staged for commit, even though I didn't make any changes. Here are the messages:

$ git commit -m"Fix makefile"
On branch master
Your branch is behind 'origin/master' by 2 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
Changes not staged for commit:
modified: README.md
modified: lifelib (modified content)
modified: main.cpp
modified: makefile
modified: mkparams.py

Untracked files:
apgluxe.exe
apgmera/

no changes added to commit
Try passing the -a flag to git commit, like this:

Code: Select all

git commit -m "Fix makefile" -a
\sum_{n=1}^\infty H_n/n^2 = \zeta(3)

How much of current CA technology can I redevelop "on a desert island"?

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » August 16th, 2022, 8:14 pm

pzq_alex wrote:
August 7th, 2022, 11:05 pm
Try passing the -a flag to git commit, like this:

Code: Select all

git commit -m "Fix makefile" -a
Thanks -- this made it possible to run "git pull" to update to the current version.

I still don't understand why "my" changes had to be committed and merged since I didn't make any changes to this code tree since the last "git pull" and "recompile.sh".

carsoncheng
Posts: 470
Joined: June 11th, 2022, 11:24 pm

Re: apgsearch v5.0

Post by carsoncheng » August 16th, 2022, 8:28 pm

Apgsearch recognizes this p150 glider loop as four pentadecathlons and two gliders:

Code: Select all

x = 41, y = 64, rule = B3/S23
b3o2$o3bo$o3bo2$b3o3$b3o2$o3bo$o3bo2$b3o8$15bo2b2o4b2o2bo$14bo3b3o2b3o
3bo$15bo2b2o4b2o2bo7$21b2o$19bobobo$17bobobo$18b2o7$12bo2b2o4b2o2bo$11b
o3b3o2b3o3bo$12bo2b2o4b2o2bo8$37b3o2$36bo3bo$36bo3bo2$37b3o3$37b3o2$36b
o3bo$36bo3bo2$37b3o!
Extending the glider loops doesn't fix this issue.

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » August 16th, 2022, 8:53 pm

I'm testing the --profile option with recompile.sh on two laptops, one with the SSE4.2 instruction set and the other with AVX512. In both cases I seem to be getting a few percent speed gain, which is enough to justify using --profile for any code I intend to run continuously.

I let apgluxe continue to run in all but one processor while compiling so the profile run would be under "real-world" conditions, which I thought might be important on the AVX512 machine since consumer processors supposedly do some automatic throttling depending on how many AVX512 processes are running.

I'm letting the comparison runs continue for a few more days so we can get better statistics. The individual runs can be identified by the number of soups:

SSE4.2 for b3s23/C1:
2103001, 2103003 without --profile
2103002, 2103004 with --profile

AVX512 for b3s23/C1:
14102301 without --profile
14102302 with --profile

AVX512 for b3s23/4x64:
9102303, 9102305, 9102307 without --profile
9102304, 9102306, 9102308 with --profile

I can also test on AVX1 and AVX2 machines if that would be of interest. All of my runs are under cygwin with "nice -19" so apgluxe can be preempted when we use our machines for other activities.

User avatar
LaundryPizza03
Posts: 2295
Joined: December 15th, 2017, 12:05 am
Location: Unidentified location "https://en.wikipedia.org/wiki/Texas"

Re: apgsearch v5.0

Post by LaundryPizza03 » August 21st, 2022, 3:12 pm

After updating my system to macOS 12.5.1, I can no longer use apgluxe.

Code: Select all

> ./apgluxe -k <censored> -n 10000 --rule b34z5js23 --symmetry C1 -v 0
apgluxe v5.18-ll2.3.7: Rule b2-an3ainr8s01c2c does not match desired rule b34z5js23.
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Last edited by LaundryPizza03 on August 21st, 2022, 9:53 pm, edited 1 time in total.

Code: Select all

x = 4, y = 3, rule = B3-q4z5y/S234k5j
2b2o$b2o$2o!
LaundryPizza03 at Wikipedia

carsoncheng
Posts: 470
Joined: June 11th, 2022, 11:24 pm

Re: apgsearch v5.0

Post by carsoncheng » August 21st, 2022, 8:56 pm

LaundryPizza03 wrote:
August 21st, 2022, 3:12 pm
After updating my system to macOS 12.5.1, I can no longer use apgluxe.

Code: Select all

> ./apgluxe -n 10000 --rule b34z5js23 --symmetry C1 -v 0
apgluxe v5.18-ll2.3.7: Rule b2-an3ainr8s01c2c does not match desired rule b34z5js23.
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
It seems like the command line tools package is somehow missing or corrupt. Run this command on your Terminal:

Code: Select all

xcode-select --install
If it doesn't work, update to the latest version of apgluxe. I am not able to replicate this issue on v5.35, which is better in object separation than the version you are using (v5.18).

Also, be aware that your payosha key was exposed in the your post above.

User avatar
LaundryPizza03
Posts: 2295
Joined: December 15th, 2017, 12:05 am
Location: Unidentified location "https://en.wikipedia.org/wiki/Texas"

Re: apgsearch v5.0

Post by LaundryPizza03 » August 21st, 2022, 10:21 pm

carsoncheng wrote:
August 21st, 2022, 8:56 pm
LaundryPizza03 wrote:
August 21st, 2022, 3:12 pm
After updating my system to macOS 12.5.1, I can no longer use apgluxe.

Code: Select all

> ./apgluxe -n 10000 --rule b34z5js23 --symmetry C1 -v 0
apgluxe v5.18-ll2.3.7: Rule b2-an3ainr8s01c2c does not match desired rule b34z5js23.
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
It seems like the command line tools package is somehow missing or corrupt. Run this command on your Terminal:

Code: Select all

xcode-select --install
If it doesn't work, update to the latest version of apgluxe. I am not able to replicate this issue on v5.35, which is better in object separation than the version you are using (v5.18).

Also, be aware that your payosha key was exposed in the your post above.
This version still crashes on B0.

Code: Select all

apgluxe v5.35-ll2.4.18: Rule b01278s0245 is correctly configured.
apgluxe v5.35-ll2.4.18: Symmetry C1 is correctly configured.

Greetings, this is apgluxe v5.35-ll2.4.18, configured for b01278s0245/C1.

Lifelib version: ll2.4.18
Compiler version: Apple LLVM 13.1.6 (clang-1316.0.21.2.5)
Python version: '3.9.0 (v3.9.0:9cf6752276, Oct  5 2020, 11:29:23)  [Clang 6.0 (clang-600.0.57)]'

Using seed k_hRhXmyGGz79a
Instruction set AVX2 detected
Running 10000 soups per haul:
Rule b01278s0245 cannot be iterated 1 x 2^0 generations.

Code: Select all

x = 4, y = 3, rule = B3-q4z5y/S234k5j
2b2o$b2o$2o!
LaundryPizza03 at Wikipedia

carsoncheng
Posts: 470
Joined: June 11th, 2022, 11:24 pm

Re: apgsearch v5.0

Post by carsoncheng » August 21st, 2022, 10:38 pm

LaundryPizza03 wrote:
August 21st, 2022, 10:21 pm
This version still crashes on B0.

Code: Select all

apgluxe v5.35-ll2.4.18: Rule b01278s0245 is correctly configured.
apgluxe v5.35-ll2.4.18: Symmetry C1 is correctly configured.

Greetings, this is apgluxe v5.35-ll2.4.18, configured for b01278s0245/C1.

Lifelib version: ll2.4.18
Compiler version: Apple LLVM 13.1.6 (clang-1316.0.21.2.5)
Python version: '3.9.0 (v3.9.0:9cf6752276, Oct  5 2020, 11:29:23)  [Clang 6.0 (clang-600.0.57)]'

Using seed k_hRhXmyGGz79a
Instruction set AVX2 detected
Running 10000 soups per haul:
Rule b01278s0245 cannot be iterated 1 x 2^0 generations.
I managed to replicate the issue. It is a bug that has been mentioned in this thread before.

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

Re: apgsearch v5.0

Post by calcyman » August 22nd, 2022, 7:49 pm

LaundryPizza03 wrote:
August 21st, 2022, 10:21 pm
This version still crashes on B0.
B0 rules are currently still banned from Catagolue, so that's only relevant if you're searching locally (-L 1 -t 1).

I'll work on restoring B0 functionality to the latest version of apgluxe, so that you can move off the old version.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » September 17th, 2022, 4:26 pm

benetnasch85 wrote:
August 16th, 2022, 8:53 pm
I'm testing the --profile option with recompile.sh on two laptops, one with the SSE4.2 instruction set and the other with AVX512. In both cases I seem to be getting a few percent speed gain, which is enough to justify using --profile for any code I intend to run continuously.

I let apgluxe continue to run in all but one processor while compiling so the profile run would be under "real-world" conditions, which I thought might be important on the AVX512 machine since consumer processors supposedly do some automatic throttling depending on how many AVX512 processes are running.

I'm letting the comparison runs continue for a few more days so we can get better statistics. The individual runs can be identified by the number of soups:

SSE4.2 for b3s23/C1:
2103001, 2103003 without --profile
2103002, 2103004 with --profile

AVX512 for b3s23/C1:
14102301 without --profile
14102302 with --profile

AVX512 for b3s23/4x64:
9102303, 9102305, 9102307 without --profile
9102304, 9102306, 9102308 with --profile

I can also test on AVX1 and AVX2 machines if that would be of interest. All of my runs are under cygwin with "nice -19" so apgluxe can be preempted when we use our machines for other activities.
I'm running this test on AVX1 and AVX2:

AVX1 for b3s23/C1:
5101101 without --profile
5101102 with --profile
Only one instance can run on this machine, so these versions are run alternately, generally two hauls at a time.

AVX2 for b3s23/C1
10201201 without --profile
10201202 with --profile

I plan to let all of these instances run this way for at least two weeks before changing all to use the --profile version.

User avatar
benetnasch85
Posts: 31
Joined: March 17th, 2017, 12:09 am

Re: apgsearch v5.0

Post by benetnasch85 » September 20th, 2022, 2:53 pm

Searching some rules in v5.35-ll2.4.18 seems to take much longer and to be much more difficult or impossible compared to what other people appear to have encountered with earlier versions. After giving the message "Failed to detect periodic behaviour!", apgluxe sometimes takes hours either to fail or to classify the chaotic-growth pattern.

For example, here are three excerpts from the printout of the current haul of b357s1358/C1 (Amoeba) including some of the multi-hour delays:

b357s1358/C1: 176423 soups completed (17640.536 soups/second current, 17640.536 overall).
Failed to detect periodic behaviour!
Chaotic-growth pattern detected: zz_LINEAR
b357s1358/C1: 263878 soups completed (4.374 soups/second current, 13.191 overall).
b357s1358/C1: 266698 soups completed (220.399 soups/second current, 13.324 overall).
Failed to detect periodic behaviour!
Chaotic-growth pattern detected: zz_LINEAR
b357s1358/C1: 271667 soups completed (0.236 soups/second current, 6.613 overall).
b357s1358/C1: 273139 soups completed (125.362 soups/second current, 6.647 overall).

b357s1358/C1: 340131 soups completed (245.091 soups/second current, 8.220 overall).
Failed to detect periodic behaviour!
Chaotic-growth pattern detected: zz_LINEAR
b357s1358/C1: 340457 soups completed (0.015 soups/second current, 5.401 overall).
b357s1358/C1: 342877 soups completed (237.418 soups/second current, 5.439 overall).

b357s1358/C1: 551802 soups completed (47.503 soups/second current, 6.500 overall).
Failed to detect periodic behaviour!
Chaotic-growth pattern detected: zz_LINEAR
b357s1358/C1: 555258 soups completed (0.147 soups/second current, 5.119 overall).
Failed to detect periodic behaviour!
Chaotic-growth pattern detected: zz_EXPLOSIVE
b357s1358/C1: 559179 soups completed (0.191 soups/second current, 4.335 overall).
b357s1358/C1: 560934 soups completed (157.329 soups/second current, 4.348 overall).

All of the affected runs are on my AVX2 machine, and the --profile option was not used.

carsoncheng
Posts: 470
Joined: June 11th, 2022, 11:24 pm

Re: apgsearch v5.0

Post by carsoncheng » October 6th, 2022, 11:00 am

Apparently some yl106 glider gun combinations are recognized as zz_linear:

Code: Select all

x = 31, y = 31, rule = B38/S23
boobbbooobbbbobobobbbbooobbboob$
ooobobbobobobbbobbbobobobbobooo$
bobobbbboboobbbobbboobobbbbobob$
booooooobooboboboboboobooooooob$
boooooobooooobbobboooooboooooob$
bbbbbobobbobbooooobbobbobobbbbb$
boboooobboobbbbobbbboobboooobob$
bbbooboboobooobbbooobooboboobbb$
booobbobbbbobobobobobbbbobbooob$
ooobooboobbbbbbbbbbbbbooboobooo$
oooobboboobobobbboboboobobboooo$
obobbobobobbbbobobbbbobobobbobo$
booobbbobbbobooooobobbbobbbooob$
bbbbbooobobobobbbobobobooobbbbb$
oooobbobbbobbobobobbobbbobboooo$
oobbobbbbboobobbboboobbbbbobboo$
oooobbobbbobbobobobbobbbobboooo$
bbbbbooobobobobbbobobobooobbbbb$
booobbbobbbobooooobobbbobbbooob$
obobbobobobbbbobobbbbobobobbobo$
oooobboboobobobbboboboobobboooo$
ooobooboobbbbbbbbbbbbbooboobooo$
booobbobbbbobobobobobbbbobbooob$
bbbooboboobooobbbooobooboboobbb$
boboooobboobbbbobbbboobboooobob$
bbbbbobobbobbooooobbobbobobbbbb$
boooooobooooobbobboooooboooooob$
booooooobooboboboboboobooooooob$
bobobbbboboobbbobbboobobbbbobob$
ooobobbobobobbbobbbobobobbobooo$
boobbbooobbbbobobobbbbooobbboob!
It can even be zz_explosive:

Code: Select all

x = 31, y = 31, rule = B38/S23
ooboboboboboobobobooboboboboboo$
ooboooobbbbobobbbobobbbbooooboo$
ooobooboooobbbooobbbooooboobooo$
oboobbooboooobbbbbooooboobboobo$
bobbbobbbobooooooooobobbbobbbob$
booobbbooboboboooboboboobbbooob$
bobbboboobobbobobobboboobobbbob$
oooobbboobbbobbbbbobbboobbboooo$
obooooobbbobooboboobobbbooooobo$
oooobobboobbbbbobbbbboobboboooo$
obbobbbobboobbbobbboobbobbbobbo$
boobbobobobobooooobobobobobboob$
bbbobooobobbbbobobbbbobooobobbb$
bbbbbbboobbobbobobbobboobbbbbbb$
booobobbobobooboboobobobbobooob$
ooobbboboooobbooobboooobobbbooo$
booobobbobobooboboobobobbobooob$
bbbbbbboobbobbobobbobboobbbbbbb$
bbbobooobobbbbobobbbbobooobobbb$
boobbobobobobooooobobobobobboob$
obbobbbobboobbbobbboobbobbbobbo$
oooobobboobbbbbobbbbboobboboooo$
obooooobbbobooboboobobbbooooobo$
oooobbboobbbobbbbbobbboobbboooo$
bobbboboobobbobobobboboobobbbob$
booobbbooboboboooboboboobbbooob$
bobbbobbbobooooooooobobbbobbbob$
oboobbooboooobbbbbooooboobboobo$
ooobooboooobbbooobbbooooboobooo$
ooboooobbbbobobbbobobbbbooooboo$
ooboboboboboobobobooboboboboboo!
Tabulation: https://catagolue.hatsya.com/census/b38s23/H4_+1/zz

User avatar
confocaloid
Posts: 2723
Joined: February 8th, 2022, 3:15 pm

Re: apgsearch v5.0

Post by confocaloid » December 13th, 2022, 10:42 am

A suggested feature:

For every "yl.." apgcode, when it is recognized for the first time in the current run, immediately print the RLE of the soup to the stdout. Possibly also print several first occurrences for each of other recognized apgcodes that are not xs/xp/xq apgcodes.
If for some reason(s) undesirable as "enabled by default", add a command line argument that can be used to enable this.

An example output could be something like this:

Code: Select all

Running 1000000 soups per haul:
rulestring/C1: 152 soups completed (14.438 soups/second current, 14.438 overall).
Linear-growth pattern detected: yl19_1_41_0123456789abcdef0123456789abcdef
#CLL state-numbering golly
x = 16, y = 16, rule = rulestring
3o2b2o2bo2b4o$bo3b6ob4o$b2o4bob2obobo$2o3bo3b4obo$bob2obob3o2b2o$4obo
2b3obo2bo$o4bobobo4b2o$2bobo2bo3b3obo$ob5o6b2o$2o4b2obo2b2obo$3b2ob2ob
ob2obo$bo2b5o2b3o$2b2o2bo2b4o$bob2o3b2o5bo$o4b3obo3bobo$2o4b4o2bob2o!
rulestring/C1: 393 soups completed (21.636 soups/second current, 18.138 overall).
...
(Although I think I already managed a quick-and-dirty modification that seems to do this, it is ugly and I'm not sure if it doesn't cause any bugs. It would be nice to have this feature in the official version, aligned with the rest of the code.)
127:1 B3/S234c User:Confocal/R (isotropic rules, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.

GUYTU6J
Posts: 2200
Joined: August 5th, 2016, 10:27 am
Location: 拆哪!I repeat, CHINA! (a.k.a. 种花家)
Contact:

Re: apgsearch v5.0

Post by GUYTU6J » January 22nd, 2023, 1:26 pm

Apgsearch may consume an annoyingly huge amount of RAM when identifying linear growth patterns. My laptop has 8 GB of RAM, and I have the following .wslconfig file under C:\Users\{username} which sets an upper limit to the memory accessible to WSL2.

Code: Select all

[wsl2]
memory=4GB
swap=0
localhostForwarding=true
When I use apgluxe v5.39-ll2.5.5 on my recent rule b3-ckq4ck5ys2-ci3-aek4i6k/C1 with seed k_7anr7APiwr2J, the program is automatically killed due to consumption being abnormally high, at the point of having searched around 6376 soups and detecting linear-growth pattern yl2080_4_391_1227b02ce7859a5c523ad586d159e93f. The first half of command line output log is shown below.

Code: Select all

Using seed k_7anr7APiwr2J
Instruction set AVX2 detected
Running 10000 soups per haul:
Linear-growth pattern detected: yl64_1_5_a15250f839776c4fe5c06259db519ebc
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 504 soups completed (50.335 soups/second current, 50.335 overall).
Linear-growth pattern detected: yl416_16_1611_3cb4dcf1e8bda578622066fab98167f1
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 730 soups completed (3.383 soups/second current, 9.504 overall).
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 1557 soups completed (82.634 soups/second current, 17.934 overall).
Linear-growth pattern detected: yl320_4_391_34c913fc54d88a31ddec231ffe4a8018
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 1937 soups completed (37.766 soups/second current, 19.993 overall).
Linear-growth pattern detected: yl672_2_1259_65deac190290fa91dabe2338baffe879
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 2233 soups completed (1.295 soups/second current, 6.863 overall).
b3-ckq4ck5ys2-ci3-aek4i6k/C1: 2958 soups completed (72.493 soups/second current, 8.820 overall).
As monitored by Task Manager, memory taken by Vmmem (representing the linux virtual machine) rises from 414 MB (504 soups completed) to 1854 MB (730 soups completed) in 1 min 6 s, and later from 1690 MB (1937 soups completed) to 4030 MB (!) in 3 min 36 s before dropping to 3794 MB (2233 soups completed). Why does this happen and can I expect it to be fixed?

User avatar
pipsqueek
Posts: 265
Joined: September 10th, 2022, 4:42 pm

Re: apgsearch v5.0

Post by pipsqueek » January 30th, 2023, 8:26 pm

Im doing a sort of secret census, by not uploading to Catagolue and looking at the local logs instead. I can view the RLE's of spaceships, still lifes, and oscillators, but I can't see the RLE's of a linear growth patterns. only their apgcodes. so how could I find linear growth patterns without uploading to catagolue?

EDIT: could I do this by briefly uploading an uncommitted haul, and then removing it? (if that is even possible)

Code: Select all

x=17,y=16,rule=B3/S23
3bo3bobo2bob2o$bobo4bo4b4o$bobo5bobo2b3o$b2obob2o3b2o$3o4b2ob2o2b2o$4b
o4bo$4b2obobob2ob3o$3ob3o2b2o$b3o2bobobo5bo$o3b2o3bobo2b2o$4bo3bob2o3b
o$2obo2bobobo2b2o$3b3o5bo2b2o$2obo4bo2bob2o$o3bob2obo3b2o$2bo8bobobo![[ STOP 3 GPS 4 ]]

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

Re: apgsearch v5.0

Post by calcyman » January 31st, 2023, 6:10 am

pipsqueek wrote:
January 30th, 2023, 8:26 pm
Im doing a sort of secret census, by not uploading to Catagolue and looking at the local logs instead. I can view the RLE's of spaceships, still lifes, and oscillators, but I can't see the RLE's of a linear growth patterns. only their apgcodes. so how could I find linear growth patterns without uploading to catagolue?

EDIT: could I do this by briefly uploading an uncommitted haul, and then removing it? (if that is even possible)
The log file should contain sample soups for everything. If it's a stdin symmetry, those sample soups are already in the form of RLEs. Otherwise, you'll need to concatenate the seed root (e.g. k_R6WvFj8EGspd) with one of the numbers that appears in the same line as the apgcode in the sample soups section (e.g. 301167141) to get the soup seed, and then go to:

https://catagolue.hatsya.com/hashsoup/C ... 7141/b3s23

where you've substituted your own rule, soup seed, and symmetry for those in the URL.
What do you do with ill crystallographers? Take them to the mono-clinic!

carsoncheng
Posts: 470
Joined: June 11th, 2022, 11:24 pm

Re: apgsearch v5.0

Post by carsoncheng » April 6th, 2023, 2:55 am

When the RLE below is piped into b3s23 stdin:

Code: Select all

x = 23, y = 30, rule = B3/S23
bo$2bo$3o4$20bo$19bo$19b3o19$20b3o$20bo$21bo!
The census reports 1 blinker and 1 glider, instead of the expected 1 blinker and 1 boat. This concerning bug has reoccurred time after time, even after cleanly recompiling apgsearch and doing so on a cloud machine. What is causing apgsearch to replace boats with gliders?

Here are some other RLEs featuring different constellations of boats being close to blinkers in their ashes and are affected by the issue:

Code: Select all

x = 30, y = 35, rule = B3/S23
28bo$27bo$27b3o19$24bo$10bo12b2o$10b2o3bo7bobo$9bobo2b2o$14bobo7$b2o$
obo$2bo!

Code: Select all

x = 14, y = 33, rule = B3/S23
4bo$2bobo$3b2o8$6bo$7b2o$6b2o2$10bobo$11b2o$11bo4$11b3o$13bo$12bo8$b2o
$obo$2bo!

Code: Select all

x = 54, y = 33, rule = B3/S23
23b2o$22b2o$24bo$18b2o$17bobo$19bo5$52b2o$51b2o$53bo11$38bo$37b2o$37b
obo5$bo$b2o$obo!

Code: Select all

x = 31, y = 6, rule = B3/S23
29bo$28bo$28b3o$obo17bo$b2o15b2o$bo17b2o!

Code: Select all

x = 11, y = 11, rule = B3/S23
5b3o$8bo$4bo4bo$4b2o4bo$2b2o3bo$o2bo2bo$obo3bo$o2b2o$2b2obo3bo$7b2o$4b
o!
However, the boats are detected correctly in some other RLEs with the same kind of constellation:

Code: Select all

x = 10, y = 21, rule = B3/S23
obo$2o$bo14$7bobo$7b2o$2bobo3bo$3b2o$3bo!

Code: Select all

x = 6, y = 4, rule = B3/S23
2o$obo2bo$bo3bo$5bo!
From my testing in b38s23 and b3s238, the bug appears to be confined to standard life (b3s23).

For more information, please refer to my round of testing with the recent anonymous b3s23/stdin hauls and the sample soups of gliders in b3s23/5Glider_GoLGrid_stdin hauls (gliders aren't supposed to appear in that symmetry because it only logs stationary constellations).

User avatar
LaundryPizza03
Posts: 2295
Joined: December 15th, 2017, 12:05 am
Location: Unidentified location "https://en.wikipedia.org/wiki/Texas"

Re: apgsearch v5.0

Post by LaundryPizza03 » June 11th, 2023, 2:34 am

I am getting strange warnings after updating to macOS 12.6.6:

Code: Select all

./apgluxe -k OZorgnaxspub1gum -n 10000 --rule b2ikn3-j4rt5y6n7s2aek3ijnqr4cein5ci6-ei --symmetry C1 -v 0
apgluxe v5.39-ll2.5.5: Rule b3-r4ins23-ck5n does not match desired rule b2ikn3-j4rt5y6n7s2aek3ijnqr4cein5ci6-ei.
sh -c 'rm -f apgluxe *.o */*.o *.op */*.op *.gdca */*.gcda *.profraw *.profdata || true'
echo Clean done
Clean done
Ensuring lifelib is up-to-date...
Configuring rule b2ikn3-j4rt5y6n7s2aek3ijnqr4cein5ci6-ei; symmetry C1
Using /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 to configure lifelib...
Valid symmetry: C1
Success!
g++ -c -Wall -Wextra -pedantic -O3 -pthread -march=native -flto --std=c++11  main.cpp -o main.o
In file included from main.cpp:6:
In file included from ./includes/base.h:20:
In file included from ./includes/payosha256.h:7:
./includes/../lifelib/soup/sha256.h:201:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(buf+i*2, "%02x", digest[i]);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
g++ -c -Wall -Wextra -pedantic -O3 -pthread -march=native -flto --std=c++11  includes/md5.cpp -o includes/md5.o
includes/md5.cpp:342:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(buf+i*2, "%02x", digest[i]);
    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
g++ -c -Wall -Wextra -pedantic -O3 -pthread -march=native -flto --std=c++11  includes/happyhttp.cpp -o includes/happyhttp.o
includes/happyhttp.cpp:390:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf( buf, "%d", numericvalue );
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
g++ -pthread -flto  main.o includes/md5.o includes/happyhttp.o    -o apgluxe
true
true                                                oo o
true                                                oo ooo
true                                                      o
true                                                oo ooo
true                                                 o o
true                                                 o o
true                                                  o
apgluxe v5.39-ll2.5.5: Rule b2ikn3-j4rt5y6n7s2aek3ijnqr4cein5ci6-ei is correctly configured.
apgluxe v5.39-ll2.5.5: Symmetry C1 is correctly configured.

Greetings, this is apgluxe v5.39-ll2.5.5, configured for b2ikn3-j4rt5y6n7s2aek3ijnqr4cein5ci6-ei/C1.

Lifelib version: ll2.5.5
Compiler version: Apple LLVM 14.0.0 (clang-1400.0.29.202)
Python version: '3.9.0 (v3.9.0:9cf6752276, Oct  5 2020, 11:29:23)  [Clang 6.0 (clang-600.0.57)]'

Using seed k_wbhrrEC79wTc
Instruction set AVX2 detected
I can also no longer use git pull to update.

Code: Select all

> git pull        
You are not currently on a branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

Code: Select all

x = 4, y = 3, rule = B3-q4z5y/S234k5j
2b2o$b2o$2o!
LaundryPizza03 at Wikipedia

User avatar
MEisSCAMMER
Posts: 96
Joined: September 20th, 2022, 5:12 pm
Location: Yes
Contact:

Re: apgsearch v5.0

Post by MEisSCAMMER » August 29th, 2023, 10:35 am

I accidentally ran this with a nonexistent symmetry and got this error:

Code: Select all

apgmera % ./apgluxe -n 100000 -k [omitted] --rule b3-e5ns2-cn3-y4i --symmetry D8_2
apgluxe v5.41-ll2.5.7: Rule b3-e5ns2-cn3-y4i is correctly configured.
apgluxe v5.41-ll2.5.7: Symmetry C1 does not match desired symmetry D8_2.
sh -c 'rm -f apgluxe *.o */*.o *.op */*.op *.gdca */*.gcda *.profraw *.profdata || true'
echo Clean done
Clean done
Ensuring lifelib is up-to-date...
Configuring rule b3-e5ns2-cn3-y4i; symmetry D8_2
Using /Library/Frameworks/Python.framework/Versions/3.11/bin/python3 to configure lifelib...
Traceback (most recent call last):
  File "/Users/[omitted]/Desktop/life/apg/apgmera/mkparams.py", line 121, in <module>
    main()
  File "/Users/[omitted]/Desktop/life/apg/apgmera/mkparams.py", line 35, in main
    validate_symmetry(rulestring, symmetry)
  File "/Users/[omitted]/Desktop/life/apg/apgmera/lifelib/pythlib/samples.py", line 58, in validate_symmetry
    raise ValueError("%s is not one of the supported symmetries: %s" % (symmetry, validsyms))
ValueError: D8_2 is not one of the supported symmetries: ['1x256', '2x128', '4x64', '8x32', 'C1', 'Mateon1_32x32_Test', 'Mateon1_64x64_Test', 'Mateon1_128x128_Test', 'Mateon1_256x256_Test', 'Mateon1_512x512_Test', 'Mateon1_1k_Test', 'Mateon1_2k_Test', 'Mateon1_4k_Test', 'Mateon1_8k_Test', 'Mateon1_Glider8_4_5_Test', 'Mateon1_Glider6_5_6_Test', 'C2_4', 'C2_2', 'C2_1', 'C4_4', 'C4_1', 'D2_+2', 'D2_+1', 'D2_x', 'D4_+4', 'D4_+2', 'D4_+1', 'D4_x4', 'D4_x1', 'D8_4', 'D8_1', 'D2_+1_gO1s0', 'D2_+1_gO1s1', 'D2_+1_gO1s2']
and then apgluxe disappeared:

Code: Select all

apgmera % ./apgluxe -n 100000 -k [omitted] --rule b3-e5ns2-cn3-y4i --symmetry D8_1
zsh: no such file or directory: ./apgluxe
What exactly happened?
THE TRILOGY HAS BEEN COMPLETED
next: quadrilogy??? Is that even a word

User avatar
confocaloid
Posts: 2723
Joined: February 8th, 2022, 3:15 pm

Re: apgsearch v5.0

Post by confocaloid » August 29th, 2023, 12:24 pm

MEisSCAMMER wrote:
August 29th, 2023, 10:35 am
What exactly happened?
It seems that apgluxe detected that the rule+symmetry combination is changed, and attempted to recompile itself before running, and failed because D8_2 is not one of supported symmetries. I think you need to use 'recompile.sh' script, as described in 'README.md'

Code: Select all

# ./recompile.sh --rule b3-e5ns2-cn3-y4i --symmetry D8_1
127:1 B3/S234c User:Confocal/R (isotropic rules, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.

User avatar
MEisSCAMMER
Posts: 96
Joined: September 20th, 2022, 5:12 pm
Location: Yes
Contact:

Re: apgsearch v5.0

Post by MEisSCAMMER » August 29th, 2023, 12:41 pm

confocaloid wrote:
August 29th, 2023, 12:24 pm
MEisSCAMMER wrote:
August 29th, 2023, 10:35 am
What exactly happened?
I think you need to use 'recompile.sh' script, as described in 'README.md'

Code: Select all

# ./recompile.sh --rule b3-e5ns2-cn3-y4i --symmetry D8_1
Ah, I didn't know that it auto-recompiled for different symmetries. Thanks for the clarification.

edit: clarified
THE TRILOGY HAS BEEN COMPLETED
next: quadrilogy??? Is that even a word

Post Reply