Any chance of getting a pre-0.95 beta release ready for, or hints on merging into, .NET?
I had no issues with the 0.94 release under .NET, but chasing the issues with merging pre-0.95b into it has me at a loss.
I would like to give it a go before the full release goes live (and unlike TestU01, all of my PractRand scripts are written for Windows).
Last edit: Cerian Knight 2019-11-01
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
-
2019-11-01
Could you clarify what issues you are seeing? I don't know of anything that has changed with regard to MSVC besides the fact that I didn't include a project file in the pre-release.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Retargeted for v1.41 (2017), which compiles 0.94 fine.
Merged files from pre-0.95 into new 0.94 and retargeted.
Output and error list attached.
I assume my approach is naive, so any hints might help.
Edit: I got it to compile by removing rarns related lines (e.g. 'REGISTER_RNG_0( rarns16 )', etc.).
Testing now... still a few extreme p-values at 64K and below:
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
-
2019-11-02
Hm... the errors look like rarns.cpp isn't getting linked against for some reason. Double-check that in your project, maybe it was overlooked as new source file.
As for the changed output... hm.... mod3n(0) is still present in the expanded test set, I'm pretty sure. And... I don't think anything except the text of some error messages changed in mod3n code or headers. What PRNG is that output from?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The PRNG is a known 32-bit scrambled LFSR wrapped in a simple beta equidistribution recovery extension. Looks promising, so far... might be cast into hardware.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Added rarns related .h and .cpp to a few areas in the project:
========== Rebuild All: 6 succeeded, 0 failed, 0 skipped ==========
Thanks again!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
-
2019-11-02
I still have no clue why your mod3n(0) error disappeared though. You could try adding a -a command line option to manually check that mod3n results were being produced, though on -te 1 -tf 2 runs like that the list will be very very long indeed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
-
2019-11-02
Oooh... was that in the pre-0.95 upload? My bad. It's already removed from my codebase, and it wasn't in the older copy I checked against either. The copy of mod3n you are using is semi-borked to treat all mod3n runs as if they were too short to populate the table properly. IIRC it's one line near the start of mod3n::get_result() that forces effective_EXP to 3 regardless of circumstances. It will be fixed in the next upload.
Last edit: 2019-11-02
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I commented out the explicit EXP assignment and switched the nearby 'predicted_samples' check back to '< 200' (since both were marked 'remove')... works fine now. Thanks!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Any chance of getting a pre-0.95 beta release ready for, or hints on merging into, .NET?
I had no issues with the 0.94 release under .NET, but chasing the issues with merging pre-0.95b into it has me at a loss.
I would like to give it a go before the full release goes live (and unlike TestU01, all of my PractRand scripts are written for Windows).
Last edit: Cerian Knight 2019-11-01
Could you clarify what issues you are seeing? I don't know of anything that has changed with regard to MSVC besides the fact that I didn't include a project file in the pre-release.
Retargeted for v1.41 (2017), which compiles 0.94 fine.
Merged files from pre-0.95 into new 0.94 and retargeted.
Output and error list attached.
I assume my approach is naive, so any hints might help.
Edit: I got it to compile by removing rarns related lines (e.g. 'REGISTER_RNG_0( rarns16 )', etc.).
Testing now... still a few extreme p-values at 64K and below:
Hopefully won't FAIL, but I'm mostly -tlmin well above 64KB now for my current work.
Last edit: Cerian Knight 2019-11-02
Also noticed this FAIL from 0.94 at 32GB:
... is missing from the otherwise exact same report in pre0.95:
Last edit: Cerian Knight 2019-11-02
Hm... the errors look like rarns.cpp isn't getting linked against for some reason. Double-check that in your project, maybe it was overlooked as new source file.
As for the changed output... hm.... mod3n(0) is still present in the expanded test set, I'm pretty sure. And... I don't think anything except the text of some error messages changed in mod3n code or headers. What PRNG is that output from?
Thanks for the hint.
The PRNG is a known 32-bit scrambled LFSR wrapped in a simple beta equidistribution recovery extension. Looks promising, so far... might be cast into hardware.
Added rarns related .h and .cpp to a few areas in the project:
========== Rebuild All: 6 succeeded, 0 failed, 0 skipped ==========
Thanks again!
I still have no clue why your mod3n(0) error disappeared though. You could try adding a -a command line option to manually check that mod3n results were being produced, though on -te 1 -tf 2 runs like that the list will be very very long indeed.
I think these excerpts from each version using -a should illustrate the specific issue... plus I have attached full dumps of both at 32GB.
0.94:
pre0.95
Last edit: Cerian Knight 2019-11-02
Oooh... was that in the pre-0.95 upload? My bad. It's already removed from my codebase, and it wasn't in the older copy I checked against either. The copy of mod3n you are using is semi-borked to treat all mod3n runs as if they were too short to populate the table properly. IIRC it's one line near the start of mod3n::get_result() that forces effective_EXP to 3 regardless of circumstances. It will be fixed in the next upload.
Last edit: 2019-11-02
I commented out the explicit EXP assignment and switched the nearby 'predicted_samples' check back to '< 200' (since both were marked 'remove')... works fine now. Thanks!