Conditions had improved little from the morning's running - when all the factory teams opted not to venture out - but the reticence was not repeated as riders seized the opportunity to sample the damp track.
Rossi was one of the first to get down to a respectable time and with 30 minutes remaining it was the Italian, who suffered a disastrous opener in Qatar, who led the way with a 1m51.440s on his Ducati.
For a long while it looked like that would be enough to earn him first place, but with 10 minutes on the clock Pedrosa went out for only his third run of the session and managed to shave six tenths off the benchmark, putting Honda top.
Rossi rejoined on the second Ducati chassis but did not improve and stayed second, while team-mate Nicky Hayden completed a positive day for the Desmosedici by finishing fifth fastest.
The pair were split by Yamaha's Jorge Lorenzo and the second factory Honda of Casey Stoner, both of whom finished more than one second down on Pedrosa.
Tech 3 Yamaha pair Andrea Dovizioso and Cal Crutchlow claimed sixth and eighth, split by Alvaro Bautista on the satellite Gresini Honda.
Ben Spies (Yamaha) was the last of the factory riders in ninth, ahead of LCR Honda's Stefan Bradl.
Randy de Puniet finished as the fastest CRT rider in 11th, more than three seconds down on Pedrosa.
Aspar Aprilia rider de Puniet was however able to finish ahead of Karel Abraham on the satellite Pramac Ducati, which ended the session in 13th.