Vajolet 2.1 released

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

elcabesa
Posts: 860
Joined: Sun May 23, 2010 1:32 pm

Re: Vajolet 2.1 released

Post by elcabesa »

I have just added the smp code after having installed the gcc5 compiler. It does compile with gcc 5.2 and 5.3.
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Vajolet 2.1 released

Post by Max »

elcabesa wrote:I have just added the smp code after having installed the gcc5 compiler. It does compile with gcc 5.2 and 5.3.
OK, installed gcc 5.3 and get the same error in nice colors 8-) now. Has to be some Mac specific?!

Code: Select all

$ gcc -v

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/local/libexec/gcc/x86_64-apple-darwin13/5.3.0/lto-wrapper
Target: x86_64-apple-darwin13
Configured with: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_gcc5/gcc5/work/gcc-5.3.0/configure --prefix=/opt/local --build=x86_64-apple-darwin13 --enable-languages=c,c++,objc,obj-c++,lto,fortran,java --libdir=/opt/local/lib/gcc5 --includedir=/opt/local/include/gcc5 --infodir=/opt/local/share/info --mandir=/opt/local/share/man --datarootdir=/opt/local/share/gcc-5 --with-local-prefix=/opt/local --with-system-zlib --disable-nls --program-suffix=-mp-5 --with-gxx-include-dir=/opt/local/include/gcc5/c++/ --with-gmp=/opt/local --with-mpfr=/opt/local --with-mpc=/opt/local --with-isl=/opt/local --enable-stage1-checking --enable-lto --enable-libstdcxx-time --with-as=/opt/local/bin/as --with-ld=/opt/local/bin/ld --with-ar=/opt/local/bin/ar --with-bugurl=https://trac.macports.org/newticket --with-pkgversion='MacPorts gcc5 5.3.0_0+universal'
Thread model: posix
gcc version 5.3.0 (MacPorts gcc5 5.3.0_0+universal) 

Code: Select all

$ g++ *.cpp -o vajolet21 -O3 -std=c++11 -fmessage-length=0 -mpopcnt

search.cpp: In member function 'Score search::startThinking(searchLimits&)':
search.cpp:311:170: error: no matching function for call to 'std::thread::thread(<unresolved overloaded function type>, __gnu_cxx::__alloc_traits<std::allocator<search> >::value_type*, int, unsigned int, Score&, Score&, std::reference_wrapper<std::__cxx11::list<Move> >)'
      helperThread.push_back(std::thread(alphaBeta<search::nodeType::HELPER_ROOT_NODE>,&helperSearch[i],0,(depth-reduction+((i+1)%2))*ONE_PLY,alpha,beta,std::ref(pvl2[i])));
                                                                                                                                                                          ^
In file included from thread.h:21:0,
                 from search.cpp:33:
/opt/local/include/gcc5/c++/thread:133:7: note: candidate: std::thread::thread(_Callable&&, _Args&& ...) [with _Callable = int (search::*)(unsigned int, int, int, int, std::__cxx11::list<Move>&); _Args = {search*, int, unsigned int, int&, int&, std::reference_wrapper<std::__cxx11::list<Move, std::allocator<Move> > >}]
       thread(_Callable&& __f, _Args&&... __args)
       ^
/opt/local/include/gcc5/c++/thread:133:7: note:   no known conversion for argument 1 from '<unresolved overloaded function type>' to 'int (search::*&&)(unsigned int, int, int, int, std::__cxx11::list<Move>&)'
/opt/local/include/gcc5/c++/thread:128:5: note: candidate: std::thread::thread(std::thread&&)
     thread(thread&& __t) noexcept
     ^
/opt/local/include/gcc5/c++/thread:128:5: note:   candidate expects 1 argument, 7 provided
/opt/local/include/gcc5/c++/thread:122:5: note: candidate: std::thread::thread()
     thread() noexcept = default;
     ^
/opt/local/include/gcc5/c++/thread:122:5: note:   candidate expects 0 arguments, 7 provided
-Max
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk
elcabesa
Posts: 860
Joined: Sun May 23, 2010 1:32 pm

Re: Vajolet 2.1 released

Post by elcabesa »

sorry, I can't help.
my understanding of the thread bind code is very basic, it compile on windows. I tried to modify it and it stop compiling in windows. I haven't a macos.

I'll try to compile it in a linux environment. In windows I'm using posix thread config.

I'll let you know if I found where the problem is.
User avatar
Sylwy
Posts: 5166
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: My test

Post by Sylwy »

Gusev
Posts: 1476
Joined: Mon Jan 28, 2013 2:51 pm

Re: Vajolet 2.1 released

Post by Gusev »

Hi Marco,

It turned out that Vajolet relies upon a couple of features supported only by GCC, but the GitHub master lacks a Makefile. Can you provide a Makefile for my students to compile a 64-bit Vajolet 2.1 for FOSCEC Season 3 using MinGW 4.9.2? We'd like to support AVX2.

Best regards,
Dmitri
elcabesa wrote:I'm pleased to release a new release of Vajolet2

this is my first version with lazy smp code. despite lot of works and debugging the new version is probably ony few Elo point stronger.

in the zip you could find a 64 bit executable, a 32 bit executable and old 64bit version compiled for Gabor Szots :-)


you can download it at
Gusev
Posts: 1476
Joined: Mon Jan 28, 2013 2:51 pm

Re: Vajolet 2.1 released

Post by Gusev »

I made my compile of Vajolet2 2.1 capable of running up to 16 threads available at http://www.firenzina.org/Vajolet2.zip.
Many thanks to Marco for his advice on how to compile his engine! I used the 64-bit MinGW 4.9.2 under Eclipse Kepler C++ for Windows.
elcabesa wrote:I'm pleased to release a new release of Vajolet2

this is my first version with lazy smp code. despite lot of works and debugging the new version is probably ony few Elo point stronger.

in the zip you could find a 64 bit executable, a 32 bit executable and old 64bit version compiled for Gabor Szots :-)


you can download it at
Gusev
Posts: 1476
Joined: Mon Jan 28, 2013 2:51 pm

Re: Vajolet 2.1 released

Post by Gusev »

You need DLLs for the 64-bit MinGW 4.9.2 to make this one work.
Gusev wrote:I made my compile of Vajolet2 2.1 capable of running up to 16 threads available at http://www.firenzina.org/Vajolet2.zip.
Many thanks to Marco for his advice on how to compile his engine! I used the 64-bit MinGW 4.9.2 under Eclipse Kepler C++ for Windows.
elcabesa wrote:I'm pleased to release a new release of Vajolet2

this is my first version with lazy smp code. despite lot of works and debugging the new version is probably ony few Elo point stronger.

in the zip you could find a 64 bit executable, a 32 bit executable and old 64bit version compiled for Gabor Szots :-)


you can download it at
elcabesa
Posts: 860
Joined: Sun May 23, 2010 1:32 pm

Re: Vajolet 2.1 released

Post by elcabesa »

probably if you static link the executable you don't need the dll