! 0     Safe"#*_k(c) Daniel Taskoff, 2020MITdaniel.taskoff@gmail.com experimentalSafe"#*_k  hlibcpuidCPU information and features. hlibcpuid'CPU vendor string, e.g. "GenuineIntel". hlibcpuidACPU brand string, e.g. "Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz". hlibcpuid"Is a time-stamp counter available. hlibcpuid'Number of physical cores per processor. hlibcpuid&Number of logical cores per processor. hlibcpuid(Total number of logical cores, which is ( multiplied by the number of processors. hlibcpuidbGet CPU information and features, or an error message, if the CPU can't be identified by libcpuid.  hlibcpuid,Check if the CPUID instruction is supported.   (c) Daniel Taskoff, 2020MITdaniel.taskoff@gmail.com experimentalSafe"#*_k  hlibcpuid Initialise a  .  hlibcpuid=Mark a time interval for calculating the CPU clock frequency. hlibcpuid?Unmark a time interval for calculating the CPU clock frequency. hlibcpuidGCalculate the CPU clock frequency in MHz, for an interval, marked with  , and :. If the interval is insufficient, the result will be -1.  (c) Daniel Taskoff, 2020MITdaniel.taskoff@gmail.com experimentalSafe"#*_k hlibcpuidShould 5 do a more thorough measurement (quadruple checking). hlibcpuidrGet the total number of logical cores (even if CPUID is not present). If CPUID is present, the following is true:  =    hlibcpuidGet the CPU clock frequency in MHz, as reported by the OS (which may differ from the true clock). If the OS is not supported, the result will be -1. hlibcpuidGet the CPU clock frequency in MHz, after performing a busy-wait cycle for the given time in ms. If RDTSC is not supported, the result will be -1. hlibcpuidqGet the CPU clock frequency in MHz, by trying all available methods. If all of them fail, the result will be -1.        !"#$%hlibcpuid-0.2.0-FDfhQj0FdERvRAXFMSZ2GSystem.LibCPUID.CPUIDSystem.LibCPUID.TSCSystem.LibCPUIDPaths_hlibcpuidCPUID vendorString brandStringhasTSC physicalCores logicalCorestotalLogicalCorescpuidisCPUIDPresent$fStorableCPUIDTSCMark initialisemarkunmarkclockByShouldQuadCheckgetTotalLogicalCores clockByOS clockMeasureclockversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileNamebase Data.Functor<$>