Skip to content

Latest commit

 

History

History
328 lines (241 loc) · 14.2 KB

File metadata and controls

328 lines (241 loc) · 14.2 KB

Performance Profiling

CorePin can record one game session, turn the measurements into an interactive report, and compare that run with one baseline. Recording is deliberately one-shot, so it cannot remain enabled accidentally across future launches.

A game does not need an assigned CorePin CPU profile. You can record a Windows-managed run first, then use it as the baseline for a CorePin profile or another system setting.

Prepare a Useful Test

A fair comparison matters more than a long recording. Before starting:

  • change one important setting at a time
  • use the same game version, graphics settings, save, route, scene, or built-in benchmark
  • keep background apps and overlays consistent
  • let the PC return to a similar temperature before each run
  • record enough active gameplay to avoid judging a brief fluctuation
  • avoid comparing a menu-heavy run with an active gameplay run

Repeat each setup more than once when possible. A first launch after a game or driver update may perform extra loading, shader compilation, or setup work.

Record the Next Session

The CorePin service must be running.

  1. Open Game Library.
  2. Hover over the game and open its ... menu.
  3. Select Profile next game session.
  4. Confirm that the orange Profiler armed banner appears.
  5. Launch the game from CorePin or its normal launcher.
  6. Play the scenario you want to measure, then exit normally.

A game tile with one performance recording armed

The banner clears when the game starts, and only that launch is recorded. To cancel beforehand, choose Cancel session profiling from the same menu or select the X on the orange banner.

CorePin may remain open or be closed while you play. The completed report is available after the game exits.

Recording Limits and Sounds

The Service page lets you choose a maximum duration and maximum file size for new recordings. The first limit reached finalizes the report normally; it does not close the game. Changes apply to future recordings, not one already in progress.

Enable Play sounds when recording starts and stops for a brief ascending tone at startup and descending tone when the report is finalized. This is useful when the game covers the desktop or the CorePin UI is closed.

Open a Report

Open Performance Reports after the game exits. Session history appears on the left. Each tile shows:

  • game title
  • recording date, time, and duration
  • CPU profile and effective power mode, or No CorePin profile
  • completion status
  • additional priority, isolation, and launch settings under Other settings

The report keeps the settings used for that specific run, so it remains identifiable if you later rename, edit, or delete the original profile. It also records whether CorePin applied the requested settings and restored temporary changes successfully.

Use the trash button to delete a session. Open Folder opens the recording folder, and Refresh checks for newly completed reports.

When a game already has reports, its ... menu in Game Library includes View performance reports. This opens history filtered to that game. Select the X beside the filter to return to all sessions.

Read the Session Diagnosis

The Session diagnosis translates a large set of measurements into concise, plain-language checks:

  • Overall: the main conclusion for the selected gameplay range
  • Limiting factor: whether the CPU, GPU, both, or neither appears to be setting the performance limit
  • CPU: processing headroom and sustained clock-speed reductions under load
  • GPU: utilization, temperature, clock behavior, and driver-reported limits when available
  • Memory: available physical memory, total committed memory, and paging
  • Storage: game-drive free space, response time, and activity
  • Frame delivery: repeated frame-time spikes and overall smoothness

A completed session diagnosis

Green does not mean a component was unused. A graphics card running near full utilization can be healthy and simply be the normal performance limit. Amber means a pattern is worth checking. Red is reserved for stronger evidence of a problem, such as active paging while memory is low or critically low drive space.

Expand Why this conclusion? to see the measurements behind a statement. CorePin avoids guessing when the available data cannot identify a cause.

Understand the Main Measurements

The report summary highlights measurements that are useful when comparing runs:

Measurement What It Tells You
Average FPS The average frame rate in the selected range. Useful, but never the whole story.
1% low Average performance during the slowest 1% of frames. Higher generally means fewer noticeable slowdowns.
0.1% low The slowest, rarest portion of the run. It can reveal severe pauses but is sensitive to loading and short samples.
Frame-time P95 95% of frames were delivered at or below this time. Lower and steadier is generally better.
Stutters Large interruptions in frame delivery during the selected range. Check whether they coincide with loading or another resource change.
Game CPU usage Processor time used by the game and its included processes.
System CPU Total processor use across the PC.
CPU clock speed Effective operating speed reported by Windows for active and overall CPU threads.
GPU usage Total use of the graphics adapter running the game. Other software using the same adapter may contribute.
GPU memory Dedicated and shared graphics memory used during the run.
Game memory Memory used by the recorded game workload.
System memory Physical-memory headroom, committed memory, cache, and paging context.
Game I/O Data read and written by the game, including throughput over time.

The report also identifies the graphics adapter, available video memory, and driver when that information is available.

The frame-rate chart calculates FPS over a short rolling interval so tightly grouped frame events are shown as a meaningful delivery rate. Some games and graphics drivers also report sustained pairs of presentation events with the timing split between neighboring records. CorePin recognizes that specific pattern and combines each pair for frame-pacing and latency analysis. Isolated fast frames, slow frames, and genuine spikes remain unchanged.

Select Representative Gameplay

Startup logos, menus, shader compilation, loading screens, and shutdown can produce valid measurements that do not represent normal gameplay. CorePin keeps the full recording and lets you choose what should be analyzed.

  1. Find a chart containing the gameplay period you want to evaluate.
  2. Left-click and drag across that time span.
  3. Release the mouse to apply the selection.
  4. Review the recalculated diagnosis, summary, and charts.

The charts automatically zoom to the selected time range.

A representative gameplay range selected

The selection changes only the report analysis; it does not alter the recording. Select Full session, double-click a chart, or press Esc while a chart is focused to return to the complete run.

Very short ranges or ranges with little frame data can produce unstable conclusions. If the selection contains heavy loading, choose a steadier gameplay period instead.

Explore the Charts

Common Controls

All timeline charts use the same controls:

Action Control
Inspect exact values Hover over the chart.
Select an analysis range Left-click and drag.
Pan the visible chart Right-click and drag.
Zoom around the pointer Hold Ctrl and use the mouse wheel.
Pan horizontally Hold Shift and use the mouse wheel.
Keyboard zoom Focus the chart and press + or -.
Keyboard pan Focus the chart and press Left or Right.
Reset visible zoom Press Home.
Return to the full session Double-click the chart or press Esc.

The unit appears beside each chart title, such as FPS, milliseconds, percent, MHz, MB, watts, RPM, or MB/s. Legend checkboxes temporarily hide individual series when several lines share a chart.

Frame Delivery

Frame charts can include application and displayed FPS, frame time, stutter markers, render completion, and display latency. Look for repeated patterns, not only a single isolated spike. A pause during a level transition may be expected; repeated spikes during steady gameplay deserve more attention.

Frame-rate, pacing, and latency charts

CPU Activity, Affinity, and Clock Speed

The logical CPU heatmap shows activity across every CPU thread in the system. Affinity means the CPU threads Windows allowed the game to use:

  • cyan lines show the game affinity observed during the run
  • orange markers show that the observed affinity changed
  • heatmap colors show total activity on each CPU thread, including background work outside the game

Logical CPU activity and observed game affinity

This view helps confirm whether a selected profile remained in place and shows what the rest of the processor was doing at the same time.

The CPU clock chart shows effective speed for active CPU threads, the CPU-wide average, and the fastest active thread. Use it alongside CPU activity and temperature or power context; a changing clock alone does not prove throttling.

CPU clock speed timeline

GPU Behavior

GPU charts can include adapter usage, core and memory clocks, dedicated and shared video memory, temperature, board power, and fan speed. Availability depends on the graphics card and driver.

GPU usage represents the graphics adapter as a whole. An overlay, browser, recording tool, or another app using the same adapter can affect the reading.

Memory and Storage

Memory charts can show game memory, physical memory in use, available memory, committed memory, cached memory, and paging.

Cached or standby memory is reusable and is normally reclaimed by Windows when applications need it. Low available memory, a nearly exhausted commit limit, and sustained paging are more useful warning signs than a large cache by itself. Existing page-file use is not automatically a problem; repeated paging while the system is under memory pressure is more meaningful.

Storage charts can show game read/write throughput and game-drive response time, activity, queueing, and free space. Compare storage activity with a frame-time spike to see whether loading may have contributed.

Compare Two Runs

CorePin compares one baseline with one candidate so the results and charts stay readable.

  1. Select the run you trust as the reference.
  2. Select Set as baseline.
  3. Select the candidate run.
  4. Select Compare.

The result table shows each baseline value, candidate value, and difference. CorePin accounts for whether higher or lower is preferable for that measurement.

Baseline and candidate results

Charts are shown side by side instead of placing every line on one graph. By default, Link time ranges applies the same selected time span to both runs. This works well for the same route or built-in benchmark. Clear it when the comparable gameplay starts at different times, then select a separate range for each run.

Paired baseline and candidate charts

A better average with worse lows or more stutter is not automatically a win. Look for repeatable improvements across the measurements that matter to that game.

Practical Examples

Compare All Cores With a V-Cache Profile

  1. Assign All Cores and arm the next session.
  2. Play a repeatable route for several minutes and exit.
  3. Select the active gameplay range and set that run as the baseline.
  4. Assign the V-Cache profile, arm another session, and repeat the route.
  5. Open the second report and select Compare.
  6. Link the time ranges when both recordings line up; otherwise select matching ranges separately.
  7. Compare FPS, lows, frame time, CPU and GPU behavior, memory, and storage.

Repeat the test before deciding that a small difference is real.

Investigate Stutter

  1. Select a range containing the stutter and some normal gameplay around it.
  2. Hover over the frame-time marker to find its exact time.
  3. Check CPU and GPU usage, clocks, game I/O, memory pressure, and temperature at the same point.
  4. Repeat the scenario before changing settings to see whether it is consistent.

A spike during a level transition may be expected. Repeated spikes during otherwise steady gameplay, especially when another resource changes at the same time, are stronger evidence of a problem.

Unavailable Measurements and Privacy

CorePin marks a missing measurement as Unavailable instead of showing a misleading zero. Common reasons include:

  • the game or graphics API did not provide compatible frame data
  • recording began after some startup activity
  • the graphics driver does not expose a particular sensor or limit reason
  • Windows does not expose a compatible CPU, drive, or paging measurement
  • a laptop, zero-RPM mode, or board firmware does not publish fan speed
  • the game's render adapter could not be identified reliably

A supported GPU model does not guarantee that every temperature, power, fan, or limit reading is available on every board.

Completed recordings are stored under:

C:\ProgramData\CorePin\Performance\Sessions

A session can contain game and process names, executable paths, profile settings, hardware identifiers, and system measurements. Review that context before sharing a recording publicly.

When a Report Is Missing

Check that:

  1. Profiler armed appeared before launch.
  2. The CorePin service was running and its version matched the UI.
  3. CorePin was configured for the executable that actually ran the game.
  4. The game ran long enough for recording to begin.
  5. Performance Reports has been refreshed.

If CorePin matched the wrong executable, open the game's Edit profile dialog and select Change executable.... See Troubleshooting for additional service, matching, and recovery checks.