Pablo Carreno Busta avenged his defeat in last year's Estoril Open final by overcoming Nicolas Almagro to reach the last four.

Last year, Carreno Busta fell at the final hurdle at the hands of his Spanish compatriot, but the roles were reversed 12 months on as the top seed won through 6-2 6-4.

His semi-final opponent will be another Spaniard in the shape of David Ferrer, who eased past Ryan Harrison 6-4 6-0.

Saturday's other last-four clash sees Kevin Anderson, conqueror of 2015 champion Richard Gasquet, take on Gilles Muller, who came from behind to beat Taro Daniel 5-7 6-2 6-3.

Meanwhile, at the BMW Open in Munich, Guido Pella overcame the disappointment of wasting two match points in the second set against Horacio Zeballos to prevail 6-3 6-7 (5-7) 7-6 (7-3).

Pella will face Chung Hyeon or 2014 champion Martin Klizan in the semis. Their quarter-final will be completed on Saturday with darkness halting the deciding set at 3-2 on serve in the South Korean's favour.

In the other semi-final, Roberto Bautista-Agut takes on Alexander Zverev following their respective wins over Yannick Hanfmann and Jan-Lennard Struff.