Mysterious VM-Execution Control Field's CR3 target value

Mysterious VM-Execution Control Field's CR3 target value

I'm just wondering that is there a reason for "CR3 target value" has limitation for just 4 of them are allowed when you try to avoid VM-exit from everytime process switching occured. According to manual it says "if future implementation support more than 4 CR3-target values, blah blah" as I understand, Intel has a plan to support more than 4 CR3 target values then why the hell it's not implemented this time?

Anyway, if I want to avoid VM-exit as few as possible for the performance issuewhat technique I can use of?

3 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

The CR3-target values are
CPU resources that are used in VMX non-root operation. Intel evaluated
algorithms using these values and determined that, for these algorithms, use of
more than 4 values provided only marginal benefit to performance. For that
reason, Intel elected to devote CPU resources to other features that may provide
greater benefit. Intel reserves the right to support more than 4 CR3-target
values in the future if it transpires that they would provide more significant
benefit.

To hopefully answer your second question, Intel corporation is bringing EPT to market soon, and that will
address most performance issues with page-table shadowing in the future (e.g.,
will eliminate need for any CR3 exits).

Leave a Comment

Please sign in to add a comment. Not a member? Join today