Sto generando una sequenza di numeri casuali con std :: mt19937_64. Ho notato che, quando viene eseguito con GCC e Clang sulla stessa piattaforma con lo stesso seme, ottengo una sequenza diversa. Ho eseguito il programma attraverso Valgrind e non ho trovato memoria non inizializzata.Mersenne Twister Riproducibilità tra i compilatori
Esiste una garanzia di riproducibilità tra compilatori o piattaforme con std :: mt19937_64?
Edit: Correndo con std :: normal_distribution
Se è necessaria la compatibilità garantita del cross-compilatore, è possibile utilizzare [Boost.Random] (http://www.boost.org/doc/libs/1_57_0/doc/html/boost_random.html). –
Forse sono un po 'ingenuo qui, ma probabilmente se usano lo stesso algoritmo e gli stessi parametri, non dovrebbero riprodurre la stessa sequenza? – Rufflewind
Poiché si utilizza la distribuzione normale, consultare la mia [risposta qui] (http://stackoverflow.com/a/24554535/1708801) in pratica la risposta è nient'altro che i motori sottostanti dovrebbero essere coerenti con l'aspetto di un duplicato. –