alcides-schulz / Tucano

Tucano Chess Engine
GNU General Public License v3.0
28 stars 3 forks source link

Linux compiling for ARM Cortex-A53 processor #7

Closed rontant closed 3 years ago

rontant commented 4 years ago

I tried to compile Tucano on a rock64 SBC running Ubuntu Linux and got errors. Rock64 has the following architecture infos:

root@rock64:~/Tucano# lscpu Architecture: aarch64 Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 Vendor ID: ARM Model: 4 Model name: Cortex-A53 Stepping: r0p4 CPU max MHz: 1296.0000 CPU min MHz: 408.0000 BogoMIPS: 48.00 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32

root@rock64:~/Tucano# lsb_release LSB Version: core-9.20170808ubuntu1-noarch:security-9.20170808ubuntu1-noarch root@rock64:~/Tucano# lsb_release -a LSB Version: core-9.20170808ubuntu1-noarch:security-9.20170808ubuntu1-noarch Distributor ID: Ubuntu Description: Ubuntu 18.04.4 LTS Release: 18.04 Codename: bionic

Here are the errors:

root@rock64:~/Tucano# gcc -o tucano -O3 -flto -mtune=generic -s -Wfatal-errors -lpthread -lm src/*.c src/fathom/tbprobe.c /tmp/cc48Z1Nu.ltrans1.ltrans.o: In function `calc_e_sub':

:(.text+0xd38): undefined reference to `pow' /tmp/cc48Z1Nu.ltrans1.ltrans.o: In function `search_run': :(.text+0x1704): undefined reference to `pthread_create' :(.text+0x1768): undefined reference to `pthread_join' /tmp/cc48Z1Nu.ltrans1.ltrans.o: In function `main': :(.text.startup+0x158c): undefined reference to `pthread_join' :(.text.startup+0x19b8): undefined reference to `pthread_create' :(.text.startup+0x1bec): undefined reference to `pthread_join' :(.text.startup+0x1c40): undefined reference to `pthread_create' :(.text.startup+0x2e80): undefined reference to `pthread_create' :(.text.startup+0x2f70): undefined reference to `pthread_join' :(.text.startup+0x2ffc): undefined reference to `pthread_create' :(.text.startup+0x3084): undefined reference to `pthread_create' /tmp/cc48Z1Nu.ltrans2.ltrans.o: In function `search_run.constprop.20': :(.text+0x4320): undefined reference to `pthread_create' :(.text+0x4388): undefined reference to `pthread_join' /tmp/cc48Z1Nu.ltrans2.ltrans.o: In function `calc_e_main.constprop.11': :(.text.unlikely+0xa04): undefined reference to `pthread_create' :(.text.unlikely+0xa64): undefined reference to `pthread_join' collect2: error: ld returned 1 exit status

Please help.

alcides-schulz commented 4 years ago

Hi, I don't know if you used the latest source code. I have made some changes related to those functions in order to compile on linux for TCEC. If not try to get the latest version. Let me know the results. I'm not familiar with ARM but please see below the compilation options used, there are some different options, maybe this helps.

gcc -Wall -march=native -g -DEGTB_SYZYGY -O3 -flto -o tucano src/*.c src/fathom/tbprobe.c -lpthread -lm

rontant commented 4 years ago

Thanks for your reply. I have tried again as per your suggestion. Here are the errors I got:

Last login: Sun Aug 30 13:56:46 2020 from 192.168.2.66 root@rock64:~# git clone https://github.com/alcides-schulz/Tucano Cloning into 'Tucano'... remote: Enumerating objects: 452, done. remote: Counting objects: 100% (452/452), done. remote: Compressing objects: 100% (326/326), done. remote: Total 992 (delta 327), reused 229 (delta 125), pack-reused 540 Receiving objects: 100% (992/992), 12.31 MiB | 4.57 MiB/s, done. Resolving deltas: 100% (634/634), done.

root@rock64:~# cd Tucano root@rock64:~/Tucano# gcc -Wall -march=native -g -DEGTB_SYZYGY -O3 -flto -o tucano src/*.c src/fathom/tbprobe.c -lpthread -lm /tmp/ccKKRhMF.s: Assembler messages: /tmp/ccKKRhMF.s:439: Error: unknown mnemonic bsfq' --bsfq x1,x1' /tmp/ccKKRhMF.s:4358: Error: unknown mnemonic bsfq' --bsfq x4,x4' /tmp/ccKKRhMF.s:4391: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:4498: Error: unknown mnemonic bsfq' --bsfq x10,x1' /tmp/ccKKRhMF.s:4686: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:4753: Error: unknown mnemonic bsfq' --bsfq x2,x17' /tmp/ccKKRhMF.s:4852: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:4944: Error: unknown mnemonic bsfq' --bsfq x5,x2' /tmp/ccKKRhMF.s:5022: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:5077: Error: unknown mnemonic bsfq' --bsfq x4,x3' /tmp/ccKKRhMF.s:5106: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:5185: Error: unknown mnemonic bsfq' --bsfq x8,x24' /tmp/ccKKRhMF.s:5212: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:5291: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:7519: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:7541: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:7564: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:7587: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:7610: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:7633: Error: unknown mnemonic bsfq' --bsfq x0,x0' /tmp/ccKKRhMF.s:8120: Error: unknown mnemonic bsfq' --bsfq x0,x16' /tmp/ccKKRhMF.s:8139: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:8161: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:8183: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:8205: Error: unknown mnemonic bsfq' --bsfq x1,x0' /tmp/ccKKRhMF.s:8227: Error: unknown mnemonic bsfq' --bsfq x0,x0' /tmp/ccKKRhMF.s:8318: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:8341: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:8365: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:8389: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:8413: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:8437: Error: unknown mnemonic bsfq' --bsfq x0,x0' /tmp/ccKKRhMF.s:9131: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:9179: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:10202: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:10245: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:10286: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:10329: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:10364: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:11985: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:12048: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:30776: Error: unknown mnemonic bsfq' --bsfq x0,x2' /tmp/ccKKRhMF.s:31065: Error: unknown mnemonic bsfq' --bsfq x1,x1' /tmp/ccKKRhMF.s:31098: Error: unknown mnemonic bsfq' --bsfq x0,x2' /tmp/ccKKRhMF.s:31196: Error: unknown mnemonic bsfq' --bsfq x13,x18' /tmp/ccKKRhMF.s:31306: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:31466: Error: unknown mnemonic bsfq' --bsfq x13,x9' /tmp/ccKKRhMF.s:31497: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:31607: Error: unknown mnemonic bsfq' --bsfq x4,x1' /tmp/ccKKRhMF.s:31691: Error: unknown mnemonic bsfq' --bsfq x0,x2' /tmp/ccKKRhMF.s:31744: Error: unknown mnemonic bsfq' --bsfq x2,x1' /tmp/ccKKRhMF.s:31772: Error: unknown mnemonic bsfq' --bsfq x0,x1' /tmp/ccKKRhMF.s:31850: Error: unknown mnemonic bsfq' --bsfq x11,x2' /tmp/ccKKRhMF.s:31922: Error: unknown mnemonic bsfq' --bsfq x0,x1' lto-wrapper: fatal error: gcc returned 1 exit status compilation terminated. /usr/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status root@rock64:~/Tucano#

Any idea?

So far I have successfully compiled many engines successfully on this machine such as Stockfish, Xiphos, Winter, Weiss, Vajolet, Ethereal, Fabchess, Marvin, Monolith, Defenchess, Arasan, Demolito, Pedone, Laser, Igel, Rubichess, etc.

Thanks.

alcides-schulz commented 4 years ago

Those seems to be errors related to the bitscan functions, that's my guess. I will take a look at tucano and compare to the engines you mentioned. Maybe I am doing something different. I will take a look at let you know. Keep you posted.


From: rontant notifications@github.com Sent: Monday, August 31, 2020 12:54 AM To: alcides-schulz/Tucano Tucano@noreply.github.com Cc: Alcides Schulz alcides_schulz@hotmail.com; Comment comment@noreply.github.com Subject: Re: [alcides-schulz/Tucano] Linux compiling for ARM Cortex-A53 processor (#7)

Thanks for your reply. I have tried again as per your suggestion. Here are the errors I got:

Last login: Sun Aug 30 13:56:46 2020 from 192.168.2.66 root@rock64:~# git clone https://github.com/alcides-schulz/Tucano Cloning into 'Tucano'... remote: Enumerating objects: 452, done. remote: Counting objects: 100% (452/452), done. remote: Compressing objects: 100% (326/326), done. remote: Total 992 (delta 327), reused 229 (delta 125), pack-reused 540 Receiving objects: 100% (992/992), 12.31 MiB | 4.57 MiB/s, done. Resolving deltas: 100% (634/634), done.

root@rock64:# cd Tucano root@rock64:/Tucano# gcc -Wall -march=native -g -DEGTB_SYZYGY -O3 -flto -o tucano src/*.c src/fathom/tbprobe.c -lpthread -lm /tmp/ccKKRhMF.s: Assembler messages: /tmp/ccKKRhMF.s:439: Error: unknown mnemonic bsfq' -- bsfq x1,x1' /tmp/ccKKRhMF.s:4358: Error: unknown mnemonic bsfq' -- bsfq x4,x4' /tmp/ccKKRhMF.s:4391: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:4498: Error: unknown mnemonic bsfq' -- bsfq x10,x1' /tmp/ccKKRhMF.s:4686: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:4753: Error: unknown mnemonic bsfq' -- bsfq x2,x17' /tmp/ccKKRhMF.s:4852: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:4944: Error: unknown mnemonic bsfq' -- bsfq x5,x2' /tmp/ccKKRhMF.s:5022: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:5077: Error: unknown mnemonic bsfq' -- bsfq x4,x3' /tmp/ccKKRhMF.s:5106: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:5185: Error: unknown mnemonic bsfq' -- bsfq x8,x24' /tmp/ccKKRhMF.s:5212: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:5291: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:7519: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7541: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7564: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7587: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:7610: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7633: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:8120: Error: unknown mnemonic bsfq' -- bsfq x0,x16' /tmp/ccKKRhMF.s:8139: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8161: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8183: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8205: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8227: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:8318: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8341: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8365: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8389: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8413: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8437: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:9131: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:9179: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10202: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10245: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10286: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10329: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10364: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:11985: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:12048: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:30776: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31065: Error: unknown mnemonic bsfq' -- bsfq x1,x1' /tmp/ccKKRhMF.s:31098: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31196: Error: unknown mnemonic bsfq' -- bsfq x13,x18' /tmp/ccKKRhMF.s:31306: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31466: Error: unknown mnemonic bsfq' -- bsfq x13,x9' /tmp/ccKKRhMF.s:31497: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31607: Error: unknown mnemonic bsfq' -- bsfq x4,x1' /tmp/ccKKRhMF.s:31691: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31744: Error: unknown mnemonic bsfq' -- bsfq x2,x1' /tmp/ccKKRhMF.s:31772: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31850: Error: unknown mnemonic bsfq' -- bsfq x11,x2' /tmp/ccKKRhMF.s:31922: Error: unknown mnemonic bsfq' -- bsfq x0,x1' lto-wrapper: fatal error: gcc returned 1 exit status compilation terminated. /usr/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status root@rock64:~/Tucano#

Any idea?

So far I have successfully compiled many engines successfully on this machine such as Stockfish, Xiphos, Winter, Weiss, Vajolet, Ethereal, Fabchess, Marvin, Monolith, Defenchess, Arasan, Demolito, Pedone, Laser, Igel, Rubichess, etc.

Thanks.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/alcides-schulz/Tucano/issues/7#issuecomment-683547956, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFT5HW42HQG6K4PBNGT7VULSDMUH7ANCNFSM4ODLESSQ.

alcides-schulz commented 4 years ago

Hi, I did some research on those errors and seems to be related to the compile options. Maube you can try to use the ARM flags as described in the makefile for ethereal. seems you can include the flags ARM7 or ARM8, i'm not sure. take a look below. let me know how it goes.

https://github.com/AndyGrant/Ethereal andrew@grantnet.us

#

Ethereal is free software: you can redistribute it and/or modify

it under the terms of the GNU General Public License as published by

the Free Software Foundation, either version 3 of the License, or

(at your option) any later version.

#

Ethereal is distributed in the hope that it will be useful,

but WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

GNU General Public License for more details.

#

You should have received a copy of the GNU General Public License

along with this program. If not, see http://www.gnu.org/licenses/.

CC = gcc SRC = *.c pyrrhic/tbprobe.c LIBS = -lpthread -lm EXE = Ethereal WFLAGS = -std=gnu11 -Wall -Wextra -Wshadow CFLAGS = -O3 $(WFLAGS) -DNDEBUG -flto -march=native RFLAGS = -O3 $(WFLAGS) -DNDEBUG -flto -static TFLAGS = -O3 $(WFLAGS) -DNDEBUG -flto -march=native -fopenmp -DTUNE PFLAGS = -O0 $(WFLAGS) -DNDEBUG -p -pg DFLAGS = -O0 $(WFLAGS) POPCNTFLAGS = -DUSE_POPCNT -msse3 -mpopcnt PEXTFLAGS = $(POPCNTFLAGS) -DUSE_PEXT -mbmi2 ARMV8FLAGS = -O3 $(WFLAGS) -DNDEBUG -flto -march=armv8-a -m64 ARMV7FLAGS = -O3 $(WFLAGS) -DNDEBUG -flto -march=armv7-a -m32 ARMV7FLAGS += -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Wl,--fix-cortex-a8 popcnt: $(CC) $(CFLAGS) $(SRC) $(LIBS) $(POPCNTFLAGS) -o $(EXE) nopopcnt: $(CC) $(CFLAGS) $(SRC) $(LIBS) -o $(EXE) pext: $(CC) $(CFLAGS) $(SRC) $(LIBS) $(PEXTFLAGS) -o $(EXE) release: mkdir ../dist $(CC) $(RFLAGS) $(SRC) $(LIBS) -o ../dist/$(EXE)$(VER)-x64-nopopcnt.exe $(CC) $(RFLAGS) $(SRC) $(LIBS) $(POPCNTFLAGS) -o ../dist/$(EXE)$(VER)-x64-popcnt.exe $(CC) $(RFLAGS) $(SRC) $(LIBS) $(PEXTFLAGS) -o ../dist/$(EXE)$(VER)-x64-pext.exe tune: $(CC) $(TFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE) profile: $(CC) $(PFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE) debug: $(CC) $(DFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE) armv8: $(CC) $(ARMV8FLAGS) $(SRC) -lm -o $(EXE) armv7: $(CC) $(ARMV7FLAGS) $(SRC) -lm -o $(EXE)

https://github.com/AndyGrant/Ethereal/blob/master/src/makefile [https://repository-images.githubusercontent.com/33020279/64f41280-f1e6-11e9-938a-60fdfaddb2c0]https://github.com/AndyGrant/Ethereal/blob/master/src/makefile AndyGrant/Etherealhttps://github.com/AndyGrant/Ethereal/blob/master/src/makefile Ethereal, a UCI Chess Engine by Andrew Grant, Alayan & Laldon - AndyGrant/Ethereal github.com


From: rontant notifications@github.com Sent: Monday, August 31, 2020 12:54 AM To: alcides-schulz/Tucano Tucano@noreply.github.com Cc: Alcides Schulz alcides_schulz@hotmail.com; Comment comment@noreply.github.com Subject: Re: [alcides-schulz/Tucano] Linux compiling for ARM Cortex-A53 processor (#7)

Thanks for your reply. I have tried again as per your suggestion. Here are the errors I got:

Last login: Sun Aug 30 13:56:46 2020 from 192.168.2.66 root@rock64:~# git clone https://github.com/alcides-schulz/Tucano Cloning into 'Tucano'... remote: Enumerating objects: 452, done. remote: Counting objects: 100% (452/452), done. remote: Compressing objects: 100% (326/326), done. remote: Total 992 (delta 327), reused 229 (delta 125), pack-reused 540 Receiving objects: 100% (992/992), 12.31 MiB | 4.57 MiB/s, done. Resolving deltas: 100% (634/634), done.

root@rock64:# cd Tucano root@rock64:/Tucano# gcc -Wall -march=native -g -DEGTB_SYZYGY -O3 -flto -o tucano src/*.c src/fathom/tbprobe.c -lpthread -lm /tmp/ccKKRhMF.s: Assembler messages: /tmp/ccKKRhMF.s:439: Error: unknown mnemonic bsfq' -- bsfq x1,x1' /tmp/ccKKRhMF.s:4358: Error: unknown mnemonic bsfq' -- bsfq x4,x4' /tmp/ccKKRhMF.s:4391: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:4498: Error: unknown mnemonic bsfq' -- bsfq x10,x1' /tmp/ccKKRhMF.s:4686: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:4753: Error: unknown mnemonic bsfq' -- bsfq x2,x17' /tmp/ccKKRhMF.s:4852: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:4944: Error: unknown mnemonic bsfq' -- bsfq x5,x2' /tmp/ccKKRhMF.s:5022: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:5077: Error: unknown mnemonic bsfq' -- bsfq x4,x3' /tmp/ccKKRhMF.s:5106: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:5185: Error: unknown mnemonic bsfq' -- bsfq x8,x24' /tmp/ccKKRhMF.s:5212: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:5291: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:7519: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7541: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7564: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7587: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:7610: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:7633: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:8120: Error: unknown mnemonic bsfq' -- bsfq x0,x16' /tmp/ccKKRhMF.s:8139: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8161: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8183: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8205: Error: unknown mnemonic bsfq' -- bsfq x1,x0' /tmp/ccKKRhMF.s:8227: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:8318: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8341: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8365: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8389: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8413: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:8437: Error: unknown mnemonic bsfq' -- bsfq x0,x0' /tmp/ccKKRhMF.s:9131: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:9179: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10202: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10245: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10286: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10329: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:10364: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:11985: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:12048: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:30776: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31065: Error: unknown mnemonic bsfq' -- bsfq x1,x1' /tmp/ccKKRhMF.s:31098: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31196: Error: unknown mnemonic bsfq' -- bsfq x13,x18' /tmp/ccKKRhMF.s:31306: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31466: Error: unknown mnemonic bsfq' -- bsfq x13,x9' /tmp/ccKKRhMF.s:31497: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31607: Error: unknown mnemonic bsfq' -- bsfq x4,x1' /tmp/ccKKRhMF.s:31691: Error: unknown mnemonic bsfq' -- bsfq x0,x2' /tmp/ccKKRhMF.s:31744: Error: unknown mnemonic bsfq' -- bsfq x2,x1' /tmp/ccKKRhMF.s:31772: Error: unknown mnemonic bsfq' -- bsfq x0,x1' /tmp/ccKKRhMF.s:31850: Error: unknown mnemonic bsfq' -- bsfq x11,x2' /tmp/ccKKRhMF.s:31922: Error: unknown mnemonic bsfq' -- bsfq x0,x1' lto-wrapper: fatal error: gcc returned 1 exit status compilation terminated. /usr/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status root@rock64:~/Tucano#

Any idea?

So far I have successfully compiled many engines successfully on this machine such as Stockfish, Xiphos, Winter, Weiss, Vajolet, Ethereal, Fabchess, Marvin, Monolith, Defenchess, Arasan, Demolito, Pedone, Laser, Igel, Rubichess, etc.

Thanks.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/alcides-schulz/Tucano/issues/7#issuecomment-683547956, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFT5HW42HQG6K4PBNGT7VULSDMUH7ANCNFSM4ODLESSQ.

rontant commented 4 years ago

Thanks for your prompt response. I have tried using the following compile options and it works:

root@rock64:~/Tucano/src# gcc -O3 -std=gnu11 -Wall -Wextra -Wshadow -DNDEBUG -flto -march=native *.c fathom/tbprobe.c -lpthread -lm -DUSE_POPCNT -o Tucano

During the compile, it chucked out dozens of the following warning message though:

:0:0: note: this is the location of the previous definition In file included from move_selector.c:18:0: globals.h:26:0: warning: "NDEBUG" redefined #define NDEBUG

Here is my test result:

root@rock64:~/Tucano/src# ./Tucano Tucano chess engine by Alcides Schulz - 8.29 (type 'help' for information) hash table: 64 MB, threads: 1

uci id name Tucano 8.29 id author Alcides Schulz option name Hash type spin default 64 min 8 max 65536 option name Threads type spin default 1 min 1 max 256 option name SyzygyPath type string default option name Ponder type check default false uciok setoption name Threads value 4 info string Threads set to 4 position fen r2qrb1k/1p1b2p1/p2ppn1p/8/3NP3/1BN5/PPP3QP/1K3RR1 w - - 0 1 go movetime 10000 info depth 1 score cp -138 time 1 nodes 8 nps 8000 pv e4e5 d6e5 info depth 1 score cp -3 time 1 nodes 15 nps 15000 pv a2a3 info depth 1 score cp 19 time 1 nodes 29 nps 29000 pv c3e2 info depth 2 score cp -25 time 2 nodes 154 nps 77000 pv c3e2 e6e5 info depth 3 score cp -5 time 6 nodes 856 nps 142666 pv c3e2 g7g5 h2h4 info depth 4 score cp -40 time 17 nodes 3341 nps 196529 pv c3e2 a8c8 e2f4 e6e5 info depth 5 score cp -22 time 25 nodes 6528 nps 261120 pv c3e2 info depth 5 score cp -21 time 25 nodes 6925 nps 277000 pv c3e2 g7g5 g2f3 f8g7 b3c4 info depth 6 score cp 29 time 53 nodes 24185 nps 456320 pv c3e2 info depth 6 score cp 24 time 53 nodes 24510 nps 462452 pv c3e2 e6e5 d4f5 g7g5 b3f7 d7f5 f1f5 info depth 7 score cp 24 time 53 nodes 25027 nps 472207 pv c3e2 e6e5 d4f5 g7g5 b3f7 d7f5 f1f5 info depth 8 score cp 62 time 96 nodes 58725 nps 611718 pv c3e2 info depth 8 score cp -5 time 112 nodes 81010 nps 723303 pv c3e2 g7g5 h2h4 g5g4 e2f4 e6e5 f4g6 h8g7 g6f8 e8f8 info depth 9 score cp 0 time 144 nodes 122572 nps 851194 pv h2h4 a8c8 c3e2 h8h7 g2g6 h7h8 g6g2 info depth 10 score cp 12 time 187 nodes 177541 nps 949417 pv h2h4 info depth 10 score cp 52 time 286 nodes 304485 nps 1064632 pv h2h4 b7b5 c3e2 e6e5 d4f5 d7c6 e2c3 b5b4 b3a4 c6a4 c3a4 d8c7 f5h6 a8c8 info depth 11 score cp 26 time 400 nodes 450270 nps 1125675 pv h2h4 a8c8 d4e2 b7b5 e2f4 h8g8 f4g6 f8e7 e4e5 d6e5 g6e5 info depth 12 score cp 42 time 606 nodes 710030 nps 1171666 pv h2h4 a8c8 c3e2 e6e5 d4f5 d7c6 e2c3 c8c7 a2a4 b7b6 a4a5 b6a5 h4h5 f6h5 info depth 13 score cp 40 time 770 nodes 919783 nps 1194523 pv h2h4 a6a5 a2a4 a8c8 c3e2 e6e5 d4f5 d7c6 e2c3 c8c7 f1d1 b7b6 g2f3 c7c8 h4h5 info depth 13 score cp 55 time 898 nodes 1080901 nps 1203675 pv c3e2 info depth 13 score cp 85 time 1066 nodes 1296212 nps 1215958 pv c3e2 e6e5 d4f5 d7f5 f1f5 a8c8 g1f1 f8e7 b3e6 c8c5 h2h4 e8f8 g2g6 info depth 14 score cp 97 time 1174 nodes 1431368 nps 1219223 pv c3e2 info depth 14 score cp 126 time 1625 nodes 2004268 nps 1233395 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 e2c3 e8d7 f5e3 h8h7 c3d5 f6d5 e3d5 f8g7 info depth 15 score cp 113 time 2115 nodes 2619370 nps 1238472 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 h2h4 g5g4 g2f2 f6e4 f2e3 d6d5 g1g4 d8c7 info depth 16 score cp 113 time 2383 nodes 2955982 nps 1240445 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 h2h4 g5g4 g2f2 f6e4 f2e3 d6d5 g1g4 d8c7 c2c3 c7c5 g4e4 info depth 17 score cp 125 time 2744 nodes 3433741 nps 1251363 pv c3e2 info depth 17 score cp 125 time 3374 nodes 4235450 nps 1255320 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 g2h3 e8d7 e2c3 d8b6 h3e3 b6e3 f5e3 h8g7 e3d5 f6d5 c3d5 c8c4 d5b6 info depth 18 score cp 137 time 4549 nodes 5781468 nps 1270931 pv c3e2 bestmove c3e2 ponder e6e5 quit root@rock64:~/Tucano/src#

I'll do some further tests after this. Will let you if I find anything interesting.

Thank you very much.

rontant commented 4 years ago

Regarding the warning message NDEBUG warning message, we can just remove -DNDEBUG from the compile option.

Here are some remaining warning messages.


root@rock64:~/Tucano/src# gcc -O3 -std=gnu11 -Wall -Wextra -Wshadow  -flto -march=native *.c fathom/tbprobe.c -lpthread -lm -DUSE_POPCNT -o Tucano
move_selector.c: In function ‘next_move’:
move_selector.c:149:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
         if (ml->ttm != MOVE_NONE)  {
            ^
move_selector.c:160:5: note: here
     case GEN_CAP:
     ^~~~
move_selector.c:178:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
         ml->phase = GEN_QUIET;
         ~~~~~~~~~~^~~~~~~~~~~
move_selector.c:179:5: note: here
     case GEN_QUIET:
     ^~~~
move_selector.c:198:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
         ml->phase = NEXT_LATE_MOVE;
         ~~~~~~~~~~^~~~~~~~~~~~~~~~
move_selector.c:199:5: note: here
     case NEXT_LATE_MOVE:
     ^~~~

I guess they can be ignored.

alcides-schulz commented 4 years ago

That's good news. I will incorporate this information for the compilation. I will help others. Yes, you can remove the -DNDEBUG option. this is used for development and it is defined in the file globals.h. Thanks for compiling it ! that's was good.


From: rontant notifications@github.com Sent: Monday, August 31, 2020 8:40 PM To: alcides-schulz/Tucano Tucano@noreply.github.com Cc: Alcides Schulz alcides_schulz@hotmail.com; Comment comment@noreply.github.com Subject: Re: [alcides-schulz/Tucano] Linux compiling for ARM Cortex-A53 processor (#7)

Thanks for your prompt response. I have tried using the following compile options and it works:

root@rock64:~/Tucano/src# gcc -O3 -std=gnu11 -Wall -Wextra -Wshadow -DNDEBUG -flto -march=native *.c fathom/tbprobe.c -lpthread -lm -DUSE_POPCNT -o Tucano

During the compile, it chucked out dozens of the following warning message though:

:0:0: note: this is the location of the previous definition In file included from move_selector.c:18:0: globals.h:26:0: warning: "NDEBUG" redefined

define NDEBUG

Here is my test result:

root@rock64:~/Tucano/src# ./Tucano Tucano chess engine by Alcides Schulz - 8.29 (type 'help' for information) hash table: 64 MB, threads: 1

uci id name Tucano 8.29 id author Alcides Schulz option name Hash type spin default 64 min 8 max 65536 option name Threads type spin default 1 min 1 max 256 option name SyzygyPath type string default option name Ponder type check default false uciok setoption name Threads value 4 info string Threads set to 4 position fen r2qrb1k/1p1b2p1/p2ppn1p/8/3NP3/1BN5/PPP3QP/1K3RR1 w - - 0 1 go movetime 10000 info depth 1 score cp -138 time 1 nodes 8 nps 8000 pv e4e5 d6e5 info depth 1 score cp -3 time 1 nodes 15 nps 15000 pv a2a3 info depth 1 score cp 19 time 1 nodes 29 nps 29000 pv c3e2 info depth 2 score cp -25 time 2 nodes 154 nps 77000 pv c3e2 e6e5 info depth 3 score cp -5 time 6 nodes 856 nps 142666 pv c3e2 g7g5 h2h4 info depth 4 score cp -40 time 17 nodes 3341 nps 196529 pv c3e2 a8c8 e2f4 e6e5 info depth 5 score cp -22 time 25 nodes 6528 nps 261120 pv c3e2 info depth 5 score cp -21 time 25 nodes 6925 nps 277000 pv c3e2 g7g5 g2f3 f8g7 b3c4 info depth 6 score cp 29 time 53 nodes 24185 nps 456320 pv c3e2 info depth 6 score cp 24 time 53 nodes 24510 nps 462452 pv c3e2 e6e5 d4f5 g7g5 b3f7 d7f5 f1f5 info depth 7 score cp 24 time 53 nodes 25027 nps 472207 pv c3e2 e6e5 d4f5 g7g5 b3f7 d7f5 f1f5 info depth 8 score cp 62 time 96 nodes 58725 nps 611718 pv c3e2 info depth 8 score cp -5 time 112 nodes 81010 nps 723303 pv c3e2 g7g5 h2h4 g5g4 e2f4 e6e5 f4g6 h8g7 g6f8 e8f8 info depth 9 score cp 0 time 144 nodes 122572 nps 851194 pv h2h4 a8c8 c3e2 h8h7 g2g6 h7h8 g6g2 info depth 10 score cp 12 time 187 nodes 177541 nps 949417 pv h2h4 info depth 10 score cp 52 time 286 nodes 304485 nps 1064632 pv h2h4 b7b5 c3e2 e6e5 d4f5 d7c6 e2c3 b5b4 b3a4 c6a4 c3a4 d8c7 f5h6 a8c8 info depth 11 score cp 26 time 400 nodes 450270 nps 1125675 pv h2h4 a8c8 d4e2 b7b5 e2f4 h8g8 f4g6 f8e7 e4e5 d6e5 g6e5 info depth 12 score cp 42 time 606 nodes 710030 nps 1171666 pv h2h4 a8c8 c3e2 e6e5 d4f5 d7c6 e2c3 c8c7 a2a4 b7b6 a4a5 b6a5 h4h5 f6h5 info depth 13 score cp 40 time 770 nodes 919783 nps 1194523 pv h2h4 a6a5 a2a4 a8c8 c3e2 e6e5 d4f5 d7c6 e2c3 c8c7 f1d1 b7b6 g2f3 c7c8 h4h5 info depth 13 score cp 55 time 898 nodes 1080901 nps 1203675 pv c3e2 info depth 13 score cp 85 time 1066 nodes 1296212 nps 1215958 pv c3e2 e6e5 d4f5 d7f5 f1f5 a8c8 g1f1 f8e7 b3e6 c8c5 h2h4 e8f8 g2g6 info depth 14 score cp 97 time 1174 nodes 1431368 nps 1219223 pv c3e2 info depth 14 score cp 126 time 1625 nodes 2004268 nps 1233395 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 e2c3 e8d7 f5e3 h8h7 c3d5 f6d5 e3d5 f8g7 info depth 15 score cp 113 time 2115 nodes 2619370 nps 1238472 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 h2h4 g5g4 g2f2 f6e4 f2e3 d6d5 g1g4 d8c7 info depth 16 score cp 113 time 2383 nodes 2955982 nps 1240445 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 h2h4 g5g4 g2f2 f6e4 f2e3 d6d5 g1g4 d8c7 c2c3 c7c5 g4e4 info depth 17 score cp 125 time 2744 nodes 3433741 nps 1251363 pv c3e2 info depth 17 score cp 125 time 3374 nodes 4235450 nps 1255320 pv c3e2 e6e5 d4f5 g7g5 b3f7 a8c8 f7e8 d7e8 g2h3 e8d7 e2c3 d8b6 h3e3 b6e3 f5e3 h8g7 e3d5 f6d5 c3d5 c8c4 d5b6 info depth 18 score cp 137 time 4549 nodes 5781468 nps 1270931 pv c3e2 bestmove c3e2 ponder e6e5 quit root@rock64:~/Tucano/src#

I'll do some further tests after this. Will let you if I find anything interesting.

Thank you very much.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/alcides-schulz/Tucano/issues/7#issuecomment-684122562, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFT5HWZRT75DGTOPIJAUK53SDQ7IPANCNFSM4ODLESSQ.

alcides-schulz commented 4 years ago

Yes, those are compile warnings in this part of the code. i have to review this section at some time to prevents those warnings. Thanks again.


From: rontant notifications@github.com Sent: Monday, August 31, 2020 8:54 PM To: alcides-schulz/Tucano Tucano@noreply.github.com Cc: Alcides Schulz alcides_schulz@hotmail.com; Comment comment@noreply.github.com Subject: Re: [alcides-schulz/Tucano] Linux compiling for ARM Cortex-A53 processor (#7)

Regarding the warning message NDEBUG warning message, we can just remove -DNDEBUG from the compile option.

Here are some remaining warning messages.

root@rock64:~/Tucano/src# gcc -O3 -std=gnu11 -Wall -Wextra -Wshadow -flto -march=native *.c fathom/tbprobe.c -lpthread -lm -DUSE_POPCNT -o Tucano

move_selector.c: In function ‘next_move’:

move_selector.c:149:12: warning: this statement may fall through [-Wimplicit-fallthrough=]

     if (ml->ttm != MOVE_NONE)  {

        ^

move_selector.c:160:5: note: here

 case GEN_CAP:

 ^~~~

move_selector.c:178:19: warning: this statement may fall through [-Wimplicit-fallthrough=]

     ml->phase = GEN_QUIET;

     ~~~~~~~~~~^~~~~~~~~~~

move_selector.c:179:5: note: here

 case GEN_QUIET:

 ^~~~

move_selector.c:198:19: warning: this statement may fall through [-Wimplicit-fallthrough=]

     ml->phase = NEXT_LATE_MOVE;

     ~~~~~~~~~~^~~~~~~~~~~~~~~~

move_selector.c:199:5: note: here

 case NEXT_LATE_MOVE:

 ^~~~

I guess they can be ignored.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/alcides-schulz/Tucano/issues/7#issuecomment-684126354, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFT5HW3AMOKORMRRTSPB3ZLSDRA3VANCNFSM4ODLESSQ.

rontant commented 4 years ago

Here is the "makefile" I modified from the Ethereal github:

CC = gcc
SRC     = *.c fathom/tbprobe.c
LIBS    = -lpthread -lm
EXE     = Tucano
WFLAGS = -std=gnu11 -Wall -Wextra -Wshadow
CFLAGS = -O3 $(WFLAGS) -flto -march=native
RFLAGS = -O3 $(WFLAGS) -flto -static
TFLAGS = -O3 $(WFLAGS) -flto -march=native -fopenmp -DTUNE
PFLAGS = -O0 $(WFLAGS) -p -pg
DFLAGS = -O0 $(WFLAGS)
POPCNTFLAGS = -DUSE_POPCNT -msse3 -mpopcnt
PEXTFLAGS   = $(POPCNTFLAGS) -DUSE_PEXT -mbmi2
ARMV8FLAGS  = -O3 $(WFLAGS) -flto -march=armv8-a -m64
ARMV7FLAGS  = -O3 $(WFLAGS) -flto -march=armv7-a -m32
ARMV7FLAGS += -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Wl,--fix-cortex-a8
popcnt:
    $(CC) $(CFLAGS) $(SRC) $(LIBS) $(POPCNTFLAGS) -o $(EXE)
nopopcnt:
    $(CC) $(CFLAGS) $(SRC) $(LIBS) -o $(EXE)

pext:
    $(CC) $(CFLAGS) $(SRC) $(LIBS) $(PEXTFLAGS) -o $(EXE)
release:
    mkdir ../dist
    $(CC) $(RFLAGS) $(SRC) $(LIBS) -o ../dist/$(EXE)$(VER)-x64-nopopcnt.exe
    $(CC) $(RFLAGS) $(SRC) $(LIBS) $(POPCNTFLAGS) -o ../dist/$(EXE)$(VER)-x64-popcnt.exe
    $(CC) $(RFLAGS) $(SRC) $(LIBS) $(PEXTFLAGS) -o ../dist/$(EXE)$(VER)-x64-pext.exe
texel:
    $(CC) $(TFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE)
profile:
    $(CC) $(PFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE)
debug:
    $(CC) $(DFLAGS) $(SRC) $(LIBS) $(POPCNT) -o $(EXE)
armv8:
    $(CC) $(ARMV8FLAGS) $(SRC) -lm -o $(EXE)
armv7:
    $(CC) $(ARMV7FLAGS) $(SRC) -lm -o $(EXE)

With this "makefile" I can use the following command to compile:

root@rock64:~/Tucano/src# make -j4 nopopcnt armv8

My first test pitting it against another chess engine went well.

[Termination "Normal"]
[Date "2020.09.01"]
[White "Tucano"]
[Black "Defenchess"]
[result "1-0"]

1. e4 c5 2. Nf3 Nc6 3. Nc3 Nf6 4. Bb5 e6 5. O-O Be7 6. Bxc6 dxc6 7. d3 O-O 8. Qe2 Qc7 9. e5 Nd7 10. a4 Rb8 11. a5 b5 12. axb6 axb6 13. Qe4 h6 14. Qg4 Kh7 15. Bd2 b5 16. Ne4 Rb7 17. Bf4 Ra7 18. Qh5 Rxa1 19. Rxa1 Qb6 20. g4 Qc7 21. g5 c4 22. gxh6 g6 23. Nfg5+ Kg8 24. h7+ Kh8 25. Qh6 cxd3 26. Nd6 Bxd6 27. exd6 Qd8 28. cxd3 e5 29. Bg3 b4 30. Ra7 Qe8 31. Nf3 e4 32. dxe4 c5 33. Ne5 c4 34. Nxd7 Bxd7 35. Rxd7 Qxd7 36. Qxf8+ Kxh7 37. Qe7 Qxe7 38. dxe7 c3 39. e8=Q cxb2 40. Qxf7+ Kh6 41. Bf4+ g5 42. Qf6+ Kh7 43. Qf5+ Kg7 44. Be5+ Kh6 45. Bxb2 Kh5 46. Bf6 Kh6 47. Qxg5+ Kh7 48. Qg7#

So far so good.

rontant commented 4 years ago

1) For Tucano 8.29, I got 21520576 as the signature from running "bench". Is it correct?

root@rock64:~/mypython# Tucano
Tucano chess engine by Alcides Schulz - 8.29 (type 'help' for information)
   hash table: 64 MB, threads: 1

bench
Benchmark (depth=16)
1/16) 3r2k1/pp2b1pp/5p2/4p3/3r4/P2P2BP/1P3PP1/1R1R1K2 b -- - 0 24
2/16) rn1qk1nr/pp3pp1/2pbp1p1/8/2pP1BP1/2N5/PP1QPPBP/R3K2R b KQkq - 0 10
3/16) r1bq1rk1/ppppbppp/2n5/1B6/4P3/3Q4/PPP2PPP/RNB2RK1 w -- - 0 9
4/16) 8/2B4k/R6p/1p3pp1/1P6/2P1r1K1/2n5/8 w -- - 0 46
5/16) r1b1kbnr/6pp/p1pq1p2/3p4/4P3/5N2/PPP2PPP/RNBQR1K1 w -kq - 0 10
6/16) N1bk4/bp1p4/p1nN1p1p/4p3/1PB1P1pq/2PP4/P4PP1/R2Q1RK1 w -- - 0 19
7/16) 1r2r1k1/3bnppp/p2q4/2RPp3/4P3/6P1/2Q1NPBP/2R3K1 w - -
8/16) 1qr3k1/p2nbppp/bp2p3/3p4/3P4/1P2PNP1/P2Q1PBP/1N2R1K1 b - -
9/16) 2b1k2r/2p2ppp/1qp4n/7B/1p2P3/5Q2/PPPr2PP/R2N1R1K b k -
10/16) 2b5/1p4k1/p2R2P1/4Np2/1P3Pp1/1r6/5K2/8 w - -
11/16) 2brr1k1/ppq2ppp/2pb1n2/8/3NP3/2P2P2/P1Q2BPP/1R1R1BK1 w - -
12/16) 2kr2nr/1pp3pp/p1pb4/4p2b/4P1P1/5N1P/PPPN1P2/R1B1R1K1 b - -
13/16) 2r1k2r/1p1qbppp/p3pn2/3pBb2/3P4/1QN1P3/PP2BPPP/2R2RK1 b k -
14/16) 2r1r1k1/pbpp1npp/1p1b3q/3P4/4RN1P/1P4P1/PB1Q1PB1/2R3K1 w - -
15/16) 2r2k2/r4p2/2b1p1p1/1p1p2Pp/3R1P1P/P1P5/1PB5/2K1R3 w - -
16/16) 2r3k1/5pp1/1p2p1np/p1q5/P1P4P/1P1Q1NP1/5PK1/R7 w - -

Signature: 21520576  Elapsed time: 62.02 secs  Nodes/sec:  347k
quit
root@rock64:~/mypython#

2) On the main page text for Linux compile command, I suggest you remove the .exe extension.

alcides-schulz commented 4 years ago

Hi, yes it correct. I also get this number for 8.29, Signature: 21520576 Also I will fix the main page. Thanks again, appreciate your help.


From: rontant notifications@github.com Sent: Tuesday, September 1, 2020 8:16 PM To: alcides-schulz/Tucano Tucano@noreply.github.com Cc: Alcides Schulz alcides_schulz@hotmail.com; Comment comment@noreply.github.com Subject: Re: [alcides-schulz/Tucano] Linux compiling for ARM Cortex-A53 processor (#7)

  1. For Tucano 8.29, I got 21520576 as the signature from running "bench". Is it correct?

root@rock64:~/mypython# Tucano Tucano chess engine by Alcides Schulz - 8.29 (type 'help' for information) hash table: 64 MB, threads: 1

bench Benchmark (depth=16) 1/16) 3r2k1/pp2b1pp/5p2/4p3/3r4/P2P2BP/1P3PP1/1R1R1K2 b -- - 0 24 2/16) rn1qk1nr/pp3pp1/2pbp1p1/8/2pP1BP1/2N5/PP1QPPBP/R3K2R b KQkq - 0 10 3/16) r1bq1rk1/ppppbppp/2n5/1B6/4P3/3Q4/PPP2PPP/RNB2RK1 w -- - 0 9 4/16) 8/2B4k/R6p/1p3pp1/1P6/2P1r1K1/2n5/8 w -- - 0 46 5/16) r1b1kbnr/6pp/p1pq1p2/3p4/4P3/5N2/PPP2PPP/RNBQR1K1 w -kq - 0 10 6/16) N1bk4/bp1p4/p1nN1p1p/4p3/1PB1P1pq/2PP4/P4PP1/R2Q1RK1 w -- - 0 19 7/16) 1r2r1k1/3bnppp/p2q4/2RPp3/4P3/6P1/2Q1NPBP/2R3K1 w - - 8/16) 1qr3k1/p2nbppp/bp2p3/3p4/3P4/1P2PNP1/P2Q1PBP/1N2R1K1 b - - 9/16) 2b1k2r/2p2ppp/1qp4n/7B/1p2P3/5Q2/PPPr2PP/R2N1R1K b k - 10/16) 2b5/1p4k1/p2R2P1/4Np2/1P3Pp1/1r6/5K2/8 w - - 11/16) 2brr1k1/ppq2ppp/2pb1n2/8/3NP3/2P2P2/P1Q2BPP/1R1R1BK1 w - - 12/16) 2kr2nr/1pp3pp/p1pb4/4p2b/4P1P1/5N1P/PPPN1P2/R1B1R1K1 b - - 13/16) 2r1k2r/1p1qbppp/p3pn2/3pBb2/3P4/1QN1P3/PP2BPPP/2R2RK1 b k - 14/16) 2r1r1k1/pbpp1npp/1p1b3q/3P4/4RN1P/1P4P1/PB1Q1PB1/2R3K1 w - - 15/16) 2r2k2/r4p2/2b1p1p1/1p1p2Pp/3R1P1P/P1P5/1PB5/2K1R3 w - - 16/16) 2r3k1/5pp1/1p2p1np/p1q5/P1P4P/1P1Q1NP1/5PK1/R7 w - -

Signature: 21520576 Elapsed time: 62.02 secs Nodes/sec: 347k quit root@rock64:~/mypython#

  1. On the main page text for Linux compile command, I suggest you remove the .exe extension.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/alcides-schulz/Tucano/issues/7#issuecomment-685200904, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFT5HW7MFTC56OUQ3YG6XFDSDWFFNANCNFSM4ODLESSQ.