A newer version of this document is available. Customers should click here to go to the newest version.
                        
                        
                            
                            
                                What's New
                            
                        
                            
                            
                                oneMKL Initialization on GPU
                            
                        
                            
                            
                                Introduction to the Intel® oneAPI Math Kernel Library (oneMKL) BLAS and LAPACK with DPC++
                            
                        
                            
                            
                                Overview of Intel® oneMKL BLAS Routines for Data Parallel C++
                            
                        
                            
                            
                                Overview of Intel® oneAPI Math Kernel Library (oneMKL) Sparse BLAS for DPC++
                            
                        
                            
                            
                                Overview of Intel® oneMKL LAPACK Routines for Data Parallel C++
                            
                        
                            
                            
                                Data Types
                            
                        
                            
                            
                                Matrix Storage
                            
                        
                            
                            
                                Scalar Arguments
                            
                        
                            
                            
                                Error Handling
                            
                        
                            
                            
                                Known Limitations
                            
                        
                            
                                BLAS Routines
                            
                            
                        
                            
                                Sparse BLAS Routines
                            
                            
                        
                            
                                LAPACK Routines
                            
                            
                        
                            
                                Vector Mathematical Functions
                            
                            
                        
                            
                                Random Number Generators
                            
                            
                        
                            
                                Summary Statistics
                            
                            
                        
                            
                                Fourier Transform Functions
                            
                            
                        
                            
                                Data Fitting
                            
                            
                        
                            
                            
                                Bibliography
                            
                        
                            
                                Appendix A: oneMKL Functionality
                            
                            
                        
                            
                            
                                Notices and Disclaimers
                            
                        
                    
                
                                    
                                    
                                        
                                        
                                            Sparse BLAS Matrix Handle Contract between User and Library
                                        
                                        
                                    
                                        
                                        
                                            Sparse BLAS Supported Data and Integer Types
                                        
                                        
                                    
                                        
                                        
                                            Sparse Storage Formats
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::init_matrix_handle
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::release_matrix_handle
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::set_csr_data
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::set_coo_data
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::set_matrix_property
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::optimize_gemv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::optimize_trmv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::optimize_trsv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::optimize_trsm
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::gemv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::gemvdot
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::symv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::trmv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::trsv
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::gemm
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::trsm
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::omatadd
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::init_matmat_descr
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::set_matmat_data
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::get_matmat_data
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::release_matmat_descr
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::matmat
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::matmatd
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::omatcopy
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::omatconvert
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::sort_matrix
                                        
                                        
                                    
                                        
                                        
                                            oneapi::mkl::sparse::update_diagonal_values
                                        
                                        
                                    
                                
                            
                                    
                                    
                                        
                                        
                                            gebrd
                                        
                                        
                                    
                                        
                                        
                                            gebrd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            gebrd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            geinv_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            geinv_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            gels (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            gels_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            gels_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            gels_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            gels_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            gels_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            gels_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf
                                        
                                        
                                    
                                        
                                        
                                            geqrf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            geqrf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            gerqf
                                        
                                        
                                    
                                        
                                        
                                            gerqf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            gerqf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            gesv (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            gesv_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            gesvd
                                        
                                        
                                    
                                        
                                        
                                            gesvd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            gesvd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            gesvda_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            gesvda_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            gesvda_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf
                                        
                                        
                                    
                                        
                                        
                                            getrf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            getrfnp
                                        
                                        
                                    
                                        
                                        
                                            getrfnp (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrfnp_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri
                                        
                                        
                                    
                                        
                                        
                                            getri (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch (Out-of-place, Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch (Out-of-place, USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getri_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            getrs
                                        
                                        
                                    
                                        
                                        
                                            getrs (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrs_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            getrsnp_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrsnp_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            getrsnp_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            heevd
                                        
                                        
                                    
                                        
                                        
                                            heevd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            heevd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            heevx
                                        
                                        
                                    
                                        
                                        
                                            heevx (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            heevx_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            hegvd
                                        
                                        
                                    
                                        
                                        
                                            hegvd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            hegvd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            hegvx
                                        
                                        
                                    
                                        
                                        
                                            hegvx (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            hegvx_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            hetrd
                                        
                                        
                                    
                                        
                                        
                                            hetrd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            hetrd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            hetrf
                                        
                                        
                                    
                                        
                                        
                                            hetrf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            hetrf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            orgbr
                                        
                                        
                                    
                                        
                                        
                                            orgbr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            orgbr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            orgqr
                                        
                                        
                                    
                                        
                                        
                                            orgqr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            orgqr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            orgtr
                                        
                                        
                                    
                                        
                                        
                                            orgtr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            orgtr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ormqr
                                        
                                        
                                    
                                        
                                        
                                            ormqr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ormqr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ormrq
                                        
                                        
                                    
                                        
                                        
                                            ormrq (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ormrq_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ormtr
                                        
                                        
                                    
                                        
                                        
                                            ormtr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ormtr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            potrf
                                        
                                        
                                    
                                        
                                        
                                            potrf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            potri
                                        
                                        
                                    
                                        
                                        
                                            potri (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            potri_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            potrs
                                        
                                        
                                    
                                        
                                        
                                            potrs (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            potrs_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            syevd
                                        
                                        
                                    
                                        
                                        
                                            syevd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            syevd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            syevx
                                        
                                        
                                    
                                        
                                        
                                            syevx (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            syevx_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            sygvd
                                        
                                        
                                    
                                        
                                        
                                            sygvd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            sygvd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            sygvx
                                        
                                        
                                    
                                        
                                        
                                            sygvx (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            sygvx_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            sytrd
                                        
                                        
                                    
                                        
                                        
                                            sytrd (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            sytrd_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            sytrf
                                        
                                        
                                    
                                        
                                        
                                            sytrf (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            sytrf_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            trtri (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            trtri_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            trtrs
                                        
                                        
                                    
                                        
                                        
                                            trtrs (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            trtrs_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ungbr
                                        
                                        
                                    
                                        
                                        
                                            ungbr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ungbr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ungqr
                                        
                                        
                                    
                                        
                                        
                                            ungqr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_batch (Buffer Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_batch (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_batch (USM Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_batch_scratchpad_size (Group Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_batch_scratchpad_size (Strided Version)
                                        
                                        
                                    
                                        
                                        
                                            ungqr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            ungtr
                                        
                                        
                                    
                                        
                                        
                                            ungtr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            ungtr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            unmqr
                                        
                                        
                                    
                                        
                                        
                                            unmqr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            unmqr_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            unmrq
                                        
                                        
                                    
                                        
                                        
                                            unmrq (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            unmrq_scratchpad_size
                                        
                                        
                                    
                                        
                                        
                                            unmtr
                                        
                                        
                                    
                                        
                                        
                                            unmtr (USM Version)
                                        
                                        
                                    
                                        
                                        
                                            unmtr_scratchpad_size
                                        
                                        
                                    
                                
                            
                                                
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::raw_sum
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::central_sum
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::central_sum with User-provided Mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::raw_moment
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::central_moment
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::central_moment with User-provided Mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::variation
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::variation with User-provided Mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::skewness
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::skewness with User-provided Mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::kurtosis
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::kurtosis with User-provided Mean
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::min
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::max
                                                    
                                                    
                                                
                                                    
                                                    
                                                        oneapi::mkl::stats::min_max
                                                    
                                                    
                                                
                                            
                                        
                                                
                                                
                                                    
                                                    
                                                        Constructors and destructor
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuration-setting member functions
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuration-querying member functions
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuration- and queue-committing member function
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Providing an externally-allocated workspace
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuring the placement of the DFT results
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Allowing destruction of input data
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Limiting the number of usable threads
                                                    
                                                    
                                                
                                                    
                                                    
                                                        Configuring data layouts
                                                    
                                                    
                                                
                                            
                                        niederreiter
Description
Niederreiter quasi-random number generator [Bratley92], which works in arbitrary dimension.
API
Syntax
namespace oneapi::mkl::rng {
  class niederreiter {
  public:
      static constexpr std::uint32_t default_dimensions_number = 1;
      niederreiter(sycl::queue queue, std::uint32_t dimensions = default_dimensions_number);
      niederreiter(sycl::queue queue, std::vector<std::uint32_t>& irred_polynomials);
      niederreiter(const niederreiter& other);
      niederreiter(niederreiter&& other);
      niederreiter& operator=(const niederreiter& other);
      niederreiter& operator=(niederreiter&& other);
      ~niederreiter();
  };
} 
   Devices supported: CPU.
Include Files
oneapi/mkl/rng.hpp
Input Parameters
Name  |  
        Type  |  
        Description  |  
       
|---|---|---|
queue  |  
        sycl::queue  |  
        Valid sycl::queue, calls of oneapi::mkl::rng::generate() routine submit kernels in this queue.  |  
       
dimensions  |  
        std::uint32_t  |  
        Number of dimensions.  |  
       
irred_polynomials  |  
        std::vector<std::uint32_t>  |  
        User-defined direction numbers.  |  
       
See VS Notes for the detailed descriptions.