The Sensex touched a high of 31,190.36 points and a low of 31,054.94 during intra-day trade. The broader market outperformed the key indices with the small-cap index rising 0.46 per cent and the mid-cap index up 0.01 per cent. On the other hand, metal index fell the most by 0.86 per cent, FMCG 0.35 per cent, consumer durables 0.25 per cent and power 0.17 per cent.
Nifty ended higher by 11.25 points or 0.12 per cent at 9,618.15, after shuttling between 9,627.40 and 9,580.45.
On the macro front, official data released during market hours showed that India's annual rate of inflation based on wholesale prices decelerated last month to 2.17 per cent from 3.85 per cent in April as food prices eased.
Biggest losers in the 30-share index were Wipro (2.27%), Cipla (1.73%), Asian Paints (1.71%), Bharat Heavy Electricals (1.29%), ITC (1.18%), and Housing Development Finance Corporation (1.11%).
Foreign funds sold shares net Rs 312.40 crore while domestic investors bought Rs 304.58 crore yesterday, as per provisional figures. Japan's Nikkei was up 0.10 per cent while Hong Kong's Hang Seng rose 0.05 per cent in early trade today.
Gains in Reliance Industries, Larsen and Toubro, Dr Reddy's and ICICI Bank helped the Sensex end in the green. Capital goods, oil and gas and PSU counters provided support.