Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
Intel Customer Support will be observing the Martin Luther King holiday on Monday, Jan. 17, and will return on Tues. Jan. 18.
For the latest information on Intel’s response to the Log4j/Log4Shell vulnerability, please see Intel-SA-00646

matrix inverse FLOPS

Nimrod_H_
Beginner
153 Views

Hi , 

What should be the required FLOPS for 16x16 MKL_Complex8 matrix inversion using cpotrf and than cpotri ?

How many CPU clocks it should take on ATOM E3826 CPU and I5-3470 CPU ?

Is there any performance difference using Linux 32bit operating system vs Linux 64bit operating system ? (for those specific CPUs)

Thanks , Nimrod

 

0 Kudos
1 Reply
Alexander_K_Intel3
153 Views

Hi Nimrod,

Approximate flops formula for (S/D)POTRF is 1/3*N^3, (S/D)POTRI is 2/3*N^3, for complex case these multiplied by four.
More precise formulas for complex case which makes sence for such a small size are:

CPOTRF_FLOPS = 6 * N * (N * (N * 1./6. + .5) + 1./3.) + 2 * N * 1./6. * (N * N - 1.);

CPOTRI_FLOPS = 6 * N * (N * (N * 1./3. + 1.) + 2./3.) + 2 * N * (N * (N * 1./3. - .5) + 1./6.)

 

Usually there is a difference for 32 and 64 bit code, which comes from richer set of registers in Intel 64 architecture and other improvements in x86-64 Application Binary Interface (ABI).

Unfortunately I don't have clock counts for these functions.

 

W.B.R., Alexander
 

Reply