Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
7234 Discussions

How to make random generator stream state global?

krieger
Beginner
669 Views
Dear all,
this might be trivial for the f90 wizards soI apologise in advance for my
ignorance.
I want to use the MKL routine VDRNGUNIFORM to obtain vectors
of random numbers. The problem is, how to make the state variable STREAM, which is initialised by calling VSLNEWSTREAM in a separate subroutine global, so that it can be accessed by VDRNGUNIFORM in its own
routine. I cannot extend the argument listsof
the wrapper subroutines in which the MKL routines are called because their
format specification is prescribed by a project specification.
I tried to do this by common blocks in the wrapper routines:
TYPE (VSL_STREAM_STATE),POINTER :: stream
COMMON / randstate / stream
however, that results inthe followingcompiler error message
" If a common-block-object is of a derived type, it must be of a sequence type"
Any idea how to resolve this?
Karl
0 Kudos
2 Replies
krieger
Beginner
669 Views
Oops, a google search for a f90 beginners guide was all needed to resolve
my question. Packing the declaration of stream in a module helped.
Sorry for the trivial post... Time to outgrow from f77 ;-)
0 Kudos
Intel_C_Intel
Employee
669 Views
So glad we could help :-) Bruce
0 Kudos
Reply