agreed, the whole job is a bit of work. in the meantime, i've already implemented the "portable" version (without any of the SIMD/AltiVec optimisations) in the current code, and it seems to give approximately a 2x speedup with this alone. if you're interested i could provide a patch for this, and possibly allocate some time to discuss/work on changing the implementation to be able to optionally take advantage of the architecture-specific optimisations?
also, when you have some time, could you comment on my other post about the improved/extended versions of pow2?
sean
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
As for the SFMT inclusion in IT++, this is one of the items on my TODO list. However, I do not know when I will attack it, because it is a lot of work with porting the original C implementation into C++, integrating it within the IT++ random generator classes and testing everything. Besides, almost all *.ref files for test programs needs to be regenerated...
BR,
/ediap
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
recently Matsumoto, Nishimura, and Saito have released a SIMD-optimised version of MT.
looking through the SIMD-MT homepage, i found a page with "user contributions" at:
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/VERSIONS/versions.html
it looks like Adam/ediap has already been involved in some coding with it. will we be seeing this in in it++ any time soon? need a patch?
sean
hiya,
agreed, the whole job is a bit of work. in the meantime, i've already implemented the "portable" version (without any of the SIMD/AltiVec optimisations) in the current code, and it seems to give approximately a 2x speedup with this alone. if you're interested i could provide a patch for this, and possibly allocate some time to discuss/work on changing the implementation to be able to optionally take advantage of the architecture-specific optimisations?
also, when you have some time, could you comment on my other post about the improved/extended versions of pow2?
sean
Hi Sean,
Sorry for replying so late...
As for the SFMT inclusion in IT++, this is one of the items on my TODO list. However, I do not know when I will attack it, because it is a lot of work with porting the original C implementation into C++, integrating it within the IT++ random generator classes and testing everything. Besides, almost all *.ref files for test programs needs to be regenerated...
BR,
/ediap