-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add instruction scheduler #19
Comments
Can you assign me to the issue?
This scheduling can be applied for one basic block, not for across basic blocks. The problem is, the heuristics that now we adopt to choose an instruction from ready-queue. |
You could re-use the |
Question: It may be possible to implement the scheduler for SSA-form language, but a few improvable points may be remain. |
The SSA from the intermediate language (LLVM-IR or SPIR-V) is relaxed very early (before the optimization steps are run) to resolve phi-instructions (function |
Intermediate status update:
Some statistics (based on
|
Not sure how to implement this, but here a few notes on an instruction scheduler:
Goal
Reorder instructions within a basic block to utilize the delay introduced by certain operations by inserting meaningful instructions minimizing the number of cycles spent waiting (via
nop
or on periphery registers).Target features
Implementation
See also the Wikipedia.
The text was updated successfully, but these errors were encountered: