Announcement

Collapse
No announcement yet.

Frequency Algorithm Turbo boost

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Frequency Algorithm Turbo boost

    1. Compute and save the reference frequency.
    Bits 15:8 of the PLATFORM_INFO MSR (0CEH)
    are the “Base Operating Ratio.” Multiply by the
    bus clock frequency (BCLK) to get the base
    operating frequency. The standard bus clock
    frequency is 133.33 MHz.
    2. Enable fixed Architectural Performance
    Monitor counters 1 and 2 in the Global
    Performance Counter Control
    IA32_PERF_GLOBAL_CTRL (38FH) and the
    Fixed-Function Performance Counter Control
    IA32_FIXED_CTR_CTL (38DH). Repeat this
    step for each logical processor in the system.
    Fixed Counter 1 (CPU_CLK_UNHALTED.CORE)
    counts the number of core cycles while the
    core is not in a halted state. Fixed Counter 2
    (CPU_CLK_UNHALTED.REF) counts the number
    of reference (base operating frequency) cycles
    while the core is not in a halted state.
    3. Configure an auto-rearming timer with 1-
    second duration using an OS API.
    4. Repeat steps 5 through 10 until the
    application exits.
    5. Wait for the 1-second timer to expire.
    6. Read the Fixed-Function Performance Counter
    1 IA32_FIXED_CTR1 (30AH) and the Fixed-
    Function Performance Counter 2
    IA32_FIXED_CTR2 (30BH). Repeat this step
    for each logical processor in the system.
    7. Compute the number of unhalted core cycles
    and unhalted reference cycles that have
    expired since the last iteration by subtracting
    the previously sampled values from the
    currently sampled values.
    8. Compute the actual frequency value for each
    logical processor as follows: Fcurrent = Base
    Operating Frequency * (Unhalted Core Cycles /
    Unhalted Ref Cycles)
    9. Update with GUI to display the newly
    computed values (for accurate display, choose
    the maximum frequency of all logical
    processors).
    10. Save Unhalted Core Cycles and Unhalted Ref
    Cycles for use in the next iteration.
    สงสัยว่า อะไรคือ Bits 15:8 อะคะ
    Base Operating
    reference cycles คืออะไรคะ
    แล้วก็ข้อ 2 IA32_PERF_GLOBAL_CTRL (38FH) พวกชื่อแปลก ๆ แบบนี้ คืออะไรคะ

    นั่งอ่านมาตั้งแต่เมื่อวาน แต่ยากเกินจะเข้าใจจริงๆ T__T
    ช่วยให้ความรู้ทีนะคะ ขอบคุณค่ะ
Working...
X