Skip to content

Hardware Prefetch Tuning for E-Cores#41

Open
IntelSwede wants to merge 1 commit into
intel:mainfrom
IntelSwede:hwpf
Open

Hardware Prefetch Tuning for E-Cores#41
IntelSwede wants to merge 1 commit into
intel:mainfrom
IntelSwede:hwpf

Conversation

@IntelSwede

Copy link
Copy Markdown

No description provided.


Prefetches can be scrubbed by throttlers prior to being accepted. These throttlers are designed to reduce a combined high prefetch level within the module as well as reducing the prefetch requests when the Uncore memory subsystem is at a high load.

<div id="figure-1" style="display:flex; flex-direction: column;justify-content: center; align-items: center; margin: 20px auto">

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Likely broken image link -
For images, please create an images folder, add the image and link it, similar to these recipes-
https://github.com/intel/optimization-zone/tree/main/software/kafka/images
https://github.com/intel/optimization-zone/tree/main/software/mysql-postgresql/images

In the main readme , can link it using relative path

![alt text](images/image-1.png)
![alt text](images/image-2.png)
![alt text](images/computemodule.png)

@rsiyer-intel rsiyer-intel left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please review and fix these -

Typos -

Prefetecher → Prefetcher
hardware/HWPrefetchTuning/README.md:145
LCC Streamer → LLC Streamer
hardware/HWPrefetchTuning/README.md:187
This even counts → This event counts
hardware/HWPrefetchTuning/README.md:346
on figurable → probably configurable
hardware/HWPrefetchTuning/README.md:388
There are two types if enable bits → probably There are two types of enable bits
hardware/HWPrefetchTuning/README.md:251
Likely formatting / numbering / anchor mistakes

TOC item missing period:

1.3.4 [L2 Next Line Prefetch (L2 NLP)] should probably be 1.3.4. ...
hardware/HWPrefetchTuning/README.md:39

Update references to Section 0 to appropriate Section 4.4
hardware/HWPrefetchTuning/README.md:193
hardware/HWPrefetchTuning/README.md:264 (broken link)
hardware/HWPrefetchTuning/README.md:268
hardware/HWPrefetchTuning/README.md:284

Heading level inconsistency:

4.5 MSR 0x1323 should likely be ## 4.5 MSR 0x1323

hardware/HWPrefetchTuning/README.md:532
Support tag typo in table:
GR → probably GRT
hardware/HWPrefetchTuning/README.md:538

Likely wording/grammar issues:
Unless otherwise stated features are forward to later generations.
likely meant something like Unless otherwise stated, features are carried forward to later generations.
hardware/HWPrefetchTuning/README.md:120

The CORE_TYPE set to 0x20...
likely missing "is"
hardware/HWPrefetchTuning/README.md:121

Setting the disable freezes...
likely Setting this bit disables... or Setting the disable bit freezes...
hardware/HWPrefetchTuning/README.md:296

increased and decrease in performance
likely increases and decreases in performance
hardware/HWPrefetchTuning/README.md:300

Possible terminology inconsistencies

DCU Next Page Prefetcher (L1 NLP) seems inconsistent; should probably be L1 NPP
hardware/HWPrefetchTuning/README.md:235

Demand throttler (DPT) looks inconsistent with earlier Demand Throttling of Prefetches (DTP)
hardware/HWPrefetchTuning/README.md:246

@harp-intel harp-intel left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Valuable content. Thanks for submitting. A few items noted.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

repo convention is to put images in 'images' subdirectory. Please create subdirectory and move this image into it. Update any links.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As this content is specific to E-core prefetchers, directory should be renamed, e.g., ecorePrefetchTuning.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Link to this document should be added to root README.md TOC.


# 3 PERFORMANCE MONITORS

Performance monitoring events in the Intel® E-core are relevant to hardware prefetch tuning as they allow for tracking of increased and decrease in performance as well as execution behavior changes. See the respective device manual for details. Performance events are also available at [perfmon-events.intel.com](perfmon-events.intel.com). Core events can either be specified through the event/umask combination or by using PMU tools such as Intel® vTune™ or Perf in Linux. For example, the following Linux command can be used to measure cycles, instructions and cycles spent on the oldest load for core 0 during 1 seconds:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Link to external site needs protocol (https://) otherwise interpreted as relative link.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants