Alessandro

Risposte al Forum Create

Stai vedendo 15 articoli - dal 1 a 15 (di 79 totali)
  • Autore
    Articoli
  • in risposta a: Perft #12178

    Alessandro
    Membro

    Ah dimenticavo: come implementazione prevedo di generare uno script python che parsa il file e, linea dopo linea, lancia il motore passandogli la fen come parametro e catturando l’output del perft. Se volete, quando ho finito di implementarlo vi giro il codice volentieri.

    in risposta a: Perft #12177

    Alessandro
    Membro

    Grazie mille Marco! Implemento una routine per lavorarci sopra e poi ti condivido con tutti i risultati 🙂

    in risposta a: Perft #12169

    Alessandro
    Membro

    Secondo me è una buona idea. È comunque una misura che fa da punto di riferimento.
    Stefano qual è su Sabrina il comando per lanciare un perft? Ho provato l’intuitivo “perft” ma sembra non accettarlo

    in risposta a: Hyper-V o non Hyper-V #12168

    Alessandro
    Membro

    Alla fine che soluzione hai scelto? Come ti trovi?

    Vorrei installare Linux CentOS sul mio Surface in macchina virtuale. Con VirtualBox andava troppo lento per i miei gusti. Chi ha esperienza in macchine virtuali ?

    in risposta a: Perft #12166

    Alessandro
    Membro

    Accettissimo! File molto utile direi! Certo AdaChess impiegherà leggermente di più di stocjfish (sarà l’hardware?) ma almeno potrò ragionevolmente dire di avere un perft che funziona sempre comunque e dovunque.
    Lo pubblichi qui sul g-sei da qualche parte?

    in risposta a: Perft #12163

    Alessandro
    Membro

    Mi ricollego all’argomento (se ne parlava anche nel post relativo agli step di Neurone). Casomai vogliate testare il generatore di mosse sappiate che AdaChess oltre a raccogliere le statistiche ha anche la funzione divide. Casomai qualcuno volesse dirmi che sono un figo fare dei test, credo di avere un generatore bug-free…

    in risposta a: Usare GIT #12147

    Alessandro
    Membro

    Dimenticavo: nel mio caso il repository l’ho creato come bare

    git init -bare

    Credo che sia una configurazione più appropriata anche nel tuo caso se condividi i sorgenti su più computer

    in risposta a: Usare GIT #12146

    Alessandro
    Membro

    Ciao Stefano, hai aperto un gran bel topic.

    Io uso regolarmente Git per AdaChess. Su Windows esiste un tool che si chiama TortoiseGit che fa da interfaccia grafica per Git, è semplice da usare e funziona benissimo (per chi non sa i comandi). Consigliatissimo.

    La mia configurazione è basilare e semplice: il repository è su una cartella Dropbox da cui quindi accedo da ogni dispositivo. Nel repository ho due branch: development e release. Essendo io l’unico sviluppatore di AdaChess uso il repository di sviluppo per tutto il tempo, mentre il release solo per i rilasci definitivi che poi finiscono su internet sul mio sito.

    Quando testo funzionalità nuove di solito faccio un commit prima ed uno dopo così da poter sempre confrontare le due versioni. Per funzionalità più grosse creo un branch nuovo che poi fondo (merge) con il branch di development.

    Il mio .gitignore contiene i dati per escludere le directory dove vanno i file compilati (i file oggetto ad esempio ed i file .ali che genera Ada) e l’eseguibile.
    Il mio progetto ha una architettura che aiuta Git a trovare ed escludere facilmente quel che serve o non serve. I sorgenti sono in una cartella src, i compilati in obi E la documentazione (inesistente) nella cartella doc.
    Così facendo facilito il lavoro a me ed a Git.

    Keep it simple 🙂

    Git o Svn sono fondamentalmente intercambiabili a mio avviso, per progetti di questo tipo. Il tutto sta secondo me a trovare un metodo per fare dei commit realmente utili. Su questo punto, ho un file dove per ogni funzionalità assegno un codice mnemonico e nel commit uso quel codice per sapere a cosa ho lavorato. L’idea è che se le cose vanno bene non c’è bisogno di sistemi di controllo di versione ma SE qualcosa non funziona diventano eccellenti per isolare il codice corrotto e di conseguenza per fare un debug rapito ed efficace.

    E poi sono un backup 🙂

    in risposta a: Perft #12130

    Alessandro
    Membro

    TSCP va modificato per avere un perft, scusate mi ero dimenticato di dirlo (è una cosa molto veloce per fortuna). Faile credo lo abbia già integrato nel motore rilasciato.

    Comunque visto i valori ed i consigli vari credo che il generatore sia a posto così com’è ora 🙂 grazie!

    in risposta a: Perft #12123

    Alessandro
    Membro

    Ecco! Grazie, mi ricordavo che se ne era parlato ma non trovavo il post!
    Secondo me, Francesco, il motivo per cui il tuo perft non è tanto veloce non è dovuto a Java ma a come fai il test di legalità.
    Con un paio di accorgimenti puoi tranquillamente raddoppiare la velocità di generazione.

    in risposta a: Mancata allocazione della hash #11317

    Alessandro
    Membro

    E’ un punto che da tempo ho in cantiere di aggiornare.
    Al momento termino l’engine e nient’altro, dato che finora AdaChess richiede poca RAM per la Hash.

    In cantiere ho l’idea di ripristinare il vecchio file di configurazione che avevo nella versione 1.0 (mitica!) e fare un po’ come Stefano, dimezzando via via la dimensione finché non trovo un valore utilizzabile – laddove la quantità di memoria richiesta sia insufficiente.

    in risposta a: Una mano #11306

    Alessandro
    Membro

    Ciao. Volentieri ti aiuto come posso.
    HTML e Javascript decisamente no sono il mio forte, così come il montaggio video.
    Per l’inglese invece forse posso aiutarti, anche se Edoardo se la cava decisamente meglio.

    Casomai un domani tu avessi bisogno di Python conta su di me.

    in risposta a: Mi presento #11209

    Alessandro
    Membro

    Ciao Rodolfo e benvenuto!

    in risposta a: Conteggio nodi al secondo #10835

    Alessandro
    Membro

    Nel perft conto anche le foglie, nella ricerca no. Il senso era di suggerire una implementazione propria del conteggio dei nodi che sia in qualche modo utile a tracciare la velocità del motore di fronte ai cambiamenti 🙂
    Non è raro trovare motori che contano separatamente i nodi della quiescenza da quelli della ricerca “standard”.

    in risposta a: Conteggio nodi al secondo #10828

    Alessandro
    Membro

    Ciao Luciano, io conto i NPS più o meno allo stesso modo di TSCP, scartando le foglie.
    Non credo esista uno standard, poiché ciascun motore implementa l’albero di ricerca con caratteristiche proprie. Quello dei nodi al secondo è un argomento su cui ci siamo passati tutti.
    Il senso dei NPS a mio avviso è un altro. Servono per

    • Verificare che il generatore di mosse sia “bug-free”, quindi crei un tuo perft e conti i nodi.
    • Verificare miglioramenti, in termini di velocità, fra versioni differenti dello stesso motore.

    Molti motori generano mosse pseudo-legali e delegano l’albero di ricerca nell’individuare eventuali mosse illegali. TSCP, ad esempio, fa esattamente così. AdaChess, il mio motore, genera direttamente tutte le mosse legali.

    Per contare i NPS uso un sistema molto simile (direi identico) a TSCP e viaggio a circa 850.000 NPS su un portatile con intel core i7. In paragone, TSCP è più veloce. Però, se confronto il perft, sono quasi il doppio più veloce rispetto a TSCP. Tradotto: ho un generatore sicuramente più veloce ed una valutazione posizionale più corposa (inutilmente più corposa, direi, visto che tscp mi batte sempre….).

    Ma cosa succede se confronto i NPS fra versioni differenti di AdaChess? Succede che il generatore di mosse ha triplicato la sua velocità (pur portandosi dietro informazioni in più) – che non è un miglioramento da poco! L’albero di ricerca è rimasto grossomodo uguale (in termini di velocità) ma adesso ho una valutazione posizionae più corposa. In altre parole, grazie ai NPS posso dire di aver ottenuto un miglioramento generale di velocità di 3x con tutti i miglioramenti (o peggioramenti..) fatti.

Stai vedendo 15 articoli - dal 1 a 15 (di 79 totali)
© 2018 G 6 Tutti i diritti riservati - Buon divertimento!

By continuing to use the site, you agree to the use of cookies. more information

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi