Sanam overcame the challenge of sixth seed Frenchman Mathias Bourgue 2-6 6-3 6-4 in his quarterfinal at the CLTA stadium.
Vishnu, who had knocked out top seed and his doubles partner Jeevan Nedunchezhiyan in the second round, had to work hard to tame compatriot Ronit Singh Bisht 4-6 6-3 7-5 in his last eight-stage match.
Another Indian reaching the semifinals was N Sriram Balaji, who brushed aside the challenge of Japanese Ko Suzuki 6-2 6-0.
Vishnu and Balaji will clash against each other for a place in the final while Sanam will tackle Duim.
More From This Section
The doubles final will be an all-Indian affair with the top seeded pair of Balaji and Ranjeet Virali Murugesan to clash with unseeded Sanam and Vivek Shokeen.
Balaji and Ranjeet beat the third seeded Japanese pair of Sho Katayama and Bumpei Sato 6-3 6-4 in their semifinal.
Sanam and Vivek faced stiff resistance from Jeevan and Vishnu before prevailing 6-7 (1) 6-4 10-6.