you must be running win 98,win millennium edition, win 2000 win exp to install dx9.0
it's a performance option.
The advice is right, but it skips over why because people prefer the simpler explanations, rather than going down the vast rabbit hole of technical detail.
TL;DR,
The quick option is to set the game with a higher priority, which can be done through the task manager (Ctrl + Shift +Esc), and right clicking on the wow.exe under details and changing the priority to above normal, or high,
or as a command line option if you use batch files (what?) with
PHP:
wmic process where name="wow.exe" CALL setpriority 128
changing the priority of the game gives the game interface a higher slice of the total CPU over background apps that also compete for CPU and memory/resources. the higher priority allows those infrequent "bulky" transactions to not drag everything else down.
In addition, the option to go back to DX9 won't change the visuals that much, just the detail of spell effects, shadow detail, draw distances and so on, but it also means that there's less happening between frames, so, more time for hb to do things as needed. you can go back to DX11 if you miss shiny water, but you will also have to compromise your FPS/visual performance.
The long explanation:
Occasionally, HB needs a whole lot of data to be sent/received before it can do something, and that will cause a notable delay on the game client as that data is being accessed. 95% of the time, this happens in the background, but if a HB task takes up too much time on the client, everything stops until it can be cleared. as a preventative, nearly everything is cached in HB before it gets pulled from the game to prevent these kind of skip pauses happening frequently, but this can't be entirely prevented. So to reduce this latency between the game and HB, HB wants/needs to work in smaller and smaller slices, i.e. frames so the game can stay responsive, but also get more things done in each shift between frames per second.
At 50 fps, that's 20ms to get any "work" done between those frame updates. some of that 20ms is taken up with latency and checking results, etc. so it's not always going to be zippy to slice up a lot of commands over a lot of frames and queue everything in smaller increments. sometimes, bulk tasks come along to cause a latency delay, and that causes the game itself to stop responding until the task has completed. (there's also plenty of ways around this, but they're overly technical and jargon filled)
the quickest way to get FPS back is to 'do less' per frame, as some bots / plugins can lock up the game UI when waiting for results. This soft-lockup can't be helped, because there's no way to really balance out HB's persistence when performing some tasks. Some tasks just take time and CPU to get done, and don't share well with the game while the game is running.
IME, Changing the frame slider in the HB options won't significantly change the performance of HB or the game UI, it smooths out the delays between updates i.e. latency. Maybe someone can benchmark this, but it's easier to rely on a faster latency than not, and, it also relies on how much interaction between HB and game is needed. If the slider affects latency, which is task related; if the task/workload changes, the results/effect changes. (There's also ways around having to use the slider to do this and handle latency and asynchronicity, ie. soft benchmarking to determine the current UI latency while idle/in combat/in cities, etc. But it's a different discussion, and the benefit is liminal. Creating a way to profile or debug what causes HB to delay or not work as expected with all of the other authors and open-content, is something HB has to consider worth any time or effort, and what, if anything could be done to change it. In some version of the future, perhaps. Having metrics doesn't really do anything other than spot problems in an efficient way, it doesn't really solve them.)
in addition, HB has to compete with other addons for game resources. And, both HB and the game / Game UI have to compete with any other apps or background services running on the PC as well. Give or take, there's a lot that can affect performance, and conversely,
there's no support for troubleshooting if it's not HB related. The naive assumption is that you're getting a relatively decent game performance before HB, and not after HB is running. If you have 183 addons installed in WoW and 4gb of RAM, everything's going to suffer regardless of setting DX9 as a visual option for HB, or reducing the visual quality settings in game for FPS improvement.
and fourth, IMO if you want game performance aim for windows 7 (although, windows 10 is getting better and, less demanding on hardware, YEMV). Setting the game to use DX9 just reduces the visual quality to basics if your PC/video card isn't quick enough, it's not because your decked out PC can't handle DX11 normally, it's that DX9 is less work, and you'll get a faster reponse time/latency. If you have a current GPU, the difference is marginal. If you have an older model, you'll just have to fiddle with graphics sliders to reduce detail instead, but it's all about doing less work, to make the game more responsive, and increase the FPS.
I'm not even sure HB will run in XP/Vista. Just trying to run dx9 in 98/me/2k will create driver/update problems, as the latest dx9c won't install on anything before XP/Vista, and you'd have to find early copies of DX9c to get it installed . I assume HB still runs in Windows Vista / 7, IDK about anything earlier than that supports the current .Net versions. It should work, but, it is microsoft, and using C# and .Net is their thing. I haven't seen Vista on a games PC in a long time, so i'm making assumptions.