Testing The LLVM SI Machine Instruction Scheduler

Written by Michael Larabel in AMD on 2 February 2016 at 04:04 PM EST. 6 Comments
AMD
Landing last month in the LLVM SVN/Git code-base was the SI machine scheduler for the AMDGPU LLVM back-end. This scheduler has the potential to improve the performance for some hardware/workloads, but not by the wide margins originally reported by some early testers.

While the SI machine scheduler has been in the LLVM back-end, landing in Mesa Git a few days ago was an option for easily enabling it.

Assuming you are building against the latest LLVM 3.8 or LLVM 3.9 SVN code, the R600_DEBUG=sisched option on Mesa Git can be used for turning on the LLVM SI machine scheduler.

While it's on my TODO list for running some of these SI machine instruction scheduler tests, a Phoronix reader has already run a few tests on his R9 Fury in conjunction with the Linux 4.5 development kernel.
fury

fury

These SI machine scheduler tests have already been discussed within our forums, but if you missed these preliminary independent results, you can find them via this OpenBenchmarking.org result file. However, at least for this user's system, the sisched option doesn't make a huge difference. I'll run some of my own tests on multiple GPUs when time allows.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week