The Australian started his day by finishing off his third-round win against Reilly Opelka, and his business was not finished until after 1am local time when he defeated Frances Tiafoe 6-7 (5-7) 7-6 (14-12) 6-2 in the quarter-final.
Because of rain delays on Friday (AEST), Kyrgios was one of five players forced to abandon their matches and return to finish them first thing on Saturday (AEST), with Kyrgios and Russia's Andrey Rublev the only two to successfully navigate both.
Tiafoe defeated Botic van de Zandschulp 4-6 6-2 6-3 in the morning, but Kyrgios's ability to keep his service games short was a decisive factor, winning the ace count 35-14 and not conceding a single break all match while saving five match points along the way.
Rublev had to deal with Maxime Cressy in the morning, winning 6-4 7-6 (10-8), setting up a quarter-final later at night against J.J. Wolf after the American defeated Holger Rune 7-5 4-6 6-3.
Rublev made his second match look far easier, cruising through 6-2 6-3 to earn a semi-final against Japan's Yoshihito Nishioka after he needed over three-and-a-half hours to beat Daniel Evans 7-6 (7-5) 4-6 7-5.
In an all-unseeded semi-final, Kyrgios will play Sweden's Mikael Ymer, who fought his way past Sebastian Korda 6-2 5-7 6-3 after the American beat Bulgaria's Grigor Dimitrov 4-6 6-1 6-2 earlier in the day.
Meanwhile, down in Mexico at the Los Cabos Open, Daniil Medvedev earned his spot in the final by defeating Serbia's Miomir Kecmanovic 7-6 (7-0) 6-1.
Medvedev will play England's Cameron Norrie for the title after he prevailed in arguably the match of the tournament against top-10 talent Felix Auger-Aliassime 6-4 3-6 6-3.